我正在尝试缩小 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.
文件系统检查
[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.
卸载
[root@planck ~]# umount /dev/vg_dev/lv_home
umount: /dev/vg_dev/lv_home: not mounted
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
答案1
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
现在,如果它因 I/O 或其他不可中断的原因而被阻塞,您可能无法真正杀死它。