원래 루트/가 6GB 파티션에 마운트된 50GB 디스크가 있었습니다. 이 파티션에는 공간이 부족하여 남은 여유 공간(44GB)을 사용하여 두 번째 파티션을 만들었습니다. 원래 이런 모습이었는데
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 50G 0 disk
└─xvda1 202:1 0 6G 0 part /
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 6.0G 6.0G 20K 100% /
devtmpfs 30G 0 30G 0% /dev
tmpfs 30G 0 30G 0% /dev/shm
tmpfs 30G 121M 30G 1% /run
tmpfs 30G 0 30G 0% /sys/fs/cgroup
루트 파일 시스템에는 3.4GB의 공간을 사용하고 대부분의 작업을 수행하는 디렉토리 /opt가 있으므로 /opt는 계속해서 커질 것입니다. 모든 파일을 백업한 후 두 번째 파티션을 /opt에 마운트했습니다.
mount /dev/xvda2 /opt
이 작업을 수행한 후 새 /opt는 0GB이고 파티션 1은 여전히 6GB이므로 원래 /opt에 있던 3.4GB에 액세스할 수 없습니다.
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 6.0G 6.0G 20K 100% /
devtmpfs 30G 6.1G 24G 21% /dev
tmpfs 30G 0 30G 0% /dev/shm
tmpfs 30G 129M 30G 1% /run
tmpfs 30G 0 30G 0% /sys/fs/cgroup
/dev/xvda2 44G 0 44G 0% /opt
백업에서 파일을 복원했는데 파티션 1에서 사용되지 않은 3.4GB의 공간을 어떻게 삭제합니까? 나중에 참조할 수 있도록 현재 다른 파티션 내에 있는 디렉터리에 새 파티션을 마운트하는 올바른 방법은 무엇입니까?
답변1
에 다른 파일 시스템을 마운트하면 /opt
해당 경로를 통한 이전 콘텐츠에 액세스할 수 없게 되지만 /opt
사라지지는 않습니다. Linux에서는 mount --bind
.
mkdir /whole-root
mount --bind / /whole-root
mv /whole-root/opt/* /opt/
umount /whole-root
물론 대안도 있습니다. 새 파티션을 빈 디렉터리( /mnt
전통적으로 이 목적으로 사용됨: 임시 마운트 지점)에 임시로 마운트하고, 파일을 이동한 다음 새 파티션을 마운트 해제하고 최종 위치에 마운트합니다.