卸载的逻辑卷“忙”?

Jay*_*yen 5 linux ext4 lvm mount lsof

我正在尝试缩小 CentOS 6 服务器上的 ext4 文件系统。在等待某些进程完成运行时,我懒惰地卸载了文件系统。他们都已完成运行,但我似乎无法对文件系统做任何事情。如何查看正在使用该卷的内容并停止它?

调整大小2fs

[root@planck ~]# resize2fs -P /dev/vg_dev/lv_home 
resize2fs 1.42.9 (28-Dec-2013)
resize2fs: Device or resource busy while trying to open /dev/vg_dev/lv_home
Couldn't find valid filesystem superblock.
Run Code Online (Sandbox Code Playgroud)

fsck

[root@planck ~]# fsck /dev/vg_dev/lv_home 
fsck from util-linux-ng 2.17.2
e2fsck 1.42.9 (28-Dec-2013)
/dev/mapper/vg_dev-lv_home is in use.
e2fsck: Cannot continue, aborting.
Run Code Online (Sandbox Code Playgroud)

卸载

[root@planck ~]# umount /dev/vg_dev/lv_home
umount: /dev/vg_dev/lv_home: not mounted
Run Code Online (Sandbox Code Playgroud)

lvs

  LV      VG     Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  lv_home vg_dev -wi-ao----  5.86t                                                    
  lv_root vg_dev -wi-ao---- 50.00g                                                    
  lv_swap vg_dev -wi-ao----  5.44g                                                    
Run Code Online (Sandbox Code Playgroud)

Ste*_*nds 8

fuser -mv /dev/vg_dev/lv_home 应该向您显示您需要杀死以释放设备的进程 PID。

例如:

 # fuser -mv /dev/vg_dev/lv_home
                         USER        PID ACCESS COMMAND
    /dev/vg_dev/lv_home:
                         sbonds     9627 ..c.. bash
Run Code Online (Sandbox Code Playgroud)

现在,如果它被 I/O 或其他一些不间断的原因阻塞,你可能无法真正杀死它。

  • 没有输出 :( 很高兴知道 `fuser` 接受块设备。 (2认同)