데비안 서버가 있습니다.
내 서버에 다음과 같은 상황이 있습니다. 루트에는 Apache 서버가 실행 중입니다. 디스크가 가득 찬 것을 확인했지만 /dev/sda2에 여전히 50GB의 사용 가능한 공간이 있음을 알 수 있습니다.
병합하거나 루트의 디스크 공간을 늘리는 방법이 있습니까?
Disk /dev/sda: 74.5 GiB, 80026361856 bytes, 156301488 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x7db7aa90
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 4096 40962047 40957952 19.5G 83 Linux
/dev/sda2 40962048 155246591 114284544 54.5G 83 Linux
/dev/sda3 155246592 156293119 1046528 511M 82 Linux swap / Solaris
답변1
다른 파티션 레이아웃으로 OS를 다시 설치하거나 복구 디스크에서 부팅하고 기존 파티션의 크기를 조정하는 것보다 더 쉬운 솔루션은 바인드 마운트를 사용하는 것일 수 있습니다.
여기에 바인드 마운트에 대한 훌륭한 답변이 있습니다.
논의를 위해 Apache 서버가 모든 공간을 차지하고 있으며 /var/www
.
/home
바인드 마운트를 사용하면 와 /dev/sda2
같이 마운트된 디렉토리를 에서 생성 하고 모든 것을 로 /home/www
옮긴 다음 에서 바인드 마운트 할 수 있습니다 ./var/www
/home/www
/home/www
/var/www
bash-# mkdir /home/www
bash-# mv /var/www/* /home/www/
bash-# chown -R $owner:$group /home/www <-- this step may be optional
bash-# mount --bind /home/www /var/www
이렇게 하면 파티션 크기를 조정하거나 서버를 재부팅할 필요 없이 /dev/sda
마치 의 일부인 것처럼 공간을 사용할 수 있습니다 ./
이는 또한 시작 스크립트, 웹 서버를 사용하는 애플리케이션, 크론 작업 등에서 /var/www
검색할 것으로 예상되는 항목을 구성할 필요가 없음을 의미합니다 ./home/www
다음에 추가하는 것을 잊지 마세요 /etc/fstab
.
/home/www /var/www none defaults,bind 0 0
그렇지 않으면 재부팅 후에도 지속되지 않습니다.