RHEL 7 이상에서
별도의 파일시스템에 마운트되어 있지도 않는데, /home 디렉토리를 옮기거나 지우려 하면 resource busy와 함께 수행되지 않을 수 있다.
이유는 일부 특정 서비스에 의해 /home을 사용 중에 있기 때문이다.
1) /home 이동 시도
[root@RHEL74 ~]# mv /home /tmp mv: cannot move ‘/home’ to ‘/tmp/home’: Device or resource busy
busy 메시지와 함께 이동이 되지 않는다.
2) 파일시스템 마운트 및 fd 상태 확인
[root@RHEL74 ~]# ls -la /home/ total 0 drwxr-xr-x. 2 root root 6 Nov 5 2016 . dr-xr-xr-x. 20 root root 285 Aug 12 20:58 .. [root@RHEL74 ~]# mount | grep /home [root@RHEL74 ~]# lsof | grep /home
확인결과 마운트도 안되어 있고 open된 fd도 없는 것으로 보인다. 하지만…
3) proc 에서 확인
[root@RHEL74 ~]# grep -h /home /proc/*/task/*/mountinfo | sort -u 147 116 0:19 /systemd/inaccessible /home ro,nosuid,nodev,relatime shared:130 master:22 - tmpfs tmpfs rw,mode=755 219 188 253:0 /home /home ro,relatime shared:167 master:1 - xfs /dev/mapper/rhel-root rw,attr2,inode64,noquota
뭔가 점유하고 있다.
아래와 같이 프로세스 확인
[root@RHEL74 ~]# grep /home /proc/*/mounts /proc/1011/mounts:/dev/mapper/rhel-root /home xfs ro,relatime,attr2,inode64,noquota 0 0 /proc/1167/mounts:/dev/mapper/rhel-root /home xfs ro,relatime,attr2,inode64,noquota 0 0 /proc/973/mounts:tmpfs /home tmpfs ro,nosuid,nodev,relatime,mode=755 0 0 [root@RHEL74 ~]# pstree -p 1011 NetworkManager(1011)─┬─dhclient(1167) ├─{NetworkManager}(1048) └─{NetworkManager}(1062) [root@RHEL74 ~]# pstree -p 1167 dhclient(1167) [root@RHEL74 ~]# pstree -p 973 chronyd(973)
4) /home에 연관된 서비스 중단
[root@RHEL74 ~]# systemctl stop NetworkManager [root@RHEL74 ~]# systemctl stop dhclient [root@RHEL74 ~]# systemctl stop chronyd
5) /home 이동
[root@RHEL74 ~]# mv /home /tmp
mv가 잘 된다.
6) 서비스 재가동
[root@RHEL74 ~]# systemctl start NetworkManager [root@RHEL74 ~]# systemctl start dhclient [root@RHEL74 ~]# systemctl start chronyd
RHEL 7 - not able to move /home dir