Linux에서 umount 없이 ext4 루트 파티션의 크기를 조정하는 방법
Linux에서 루트 파티션의 크기를 조정할 수 있으며, 파티션에 있는 설치로 적극적으로 부팅하는 경우에도 가능합니다. 일반적으로 하드 드라이브 파티션 변경은 활발하게 사용되지 않는 마운트되지 않은 파티션과 하드 드라이브 공간에서만 수행해야 합니다. 그러나 루트 파티션 크기를 변경해야 하고 변경 사항을 수행하기 위해 다른 설치 환경으로 로드할 수 없는 상황에서는 루트 파티션이 여전히 마운트되어 있고 컴퓨터가 부팅되는 동안 루트 파티션의 크기를 조정하는 것 외에 다른 선택의 여지가 없을 수 있습니다.
이 튜토리얼에서는 파티션을 먼저 마운트 해제하지 않고 라이브 시스템에서 ext4 루트 파티션의 크기를 조정하는 단계별 지침을 살펴 보겠습니다. 이렇게 하면 현재 사용되지 않는 하드 드라이브 공간으로 루트 파티션의 크기를 확장하거나 루트 파티션을 축소할 수 있습니다(예: 다른 파티션을 위한 공간 확보).
이 자습서에서는 다음에 대해 알아봅니다.
- 현재 하드 드라이브 파티션 구성표를 확인하는 방법
umount를 사용하지 않고 루트 파티션의 크기를 조정하는 방법- 루트 파티션에 대한 파일 시스템 검사를 강제하는 방법
- ext4 파일 시스템의 크기를 조정하는 방법
비디오 튜토리얼
마운트 해제하지 않고 라이브 루트 파티션 크기 조정
다음 예에서는 100GB 하드 드라이브가 있지만 루트 파티션은 사용 가능한 공간 중 60GB만 사용합니다. 우리의 목표는 사용 가능한 전체 하드 드라이브 공간을 차지하도록 루트 파티션의 크기를 확장하여 루트 파티션의 크기가 거의 100GB가 되도록 하는 것입니다.
경고!
먼저 마운트를 해제하지 않고 라이브 파티션의 크기를 조정하면 데이터가 손실될 위험이 엄청나므로 권장하지 않습니다. 적절한 방법은 파티션을 마운트 해제하고 다른 파티션이나 라이브 환경으로 부팅하는 동안 크기를 조정하는 것입니다. 아래 단계를 진행하기 전에 모든 중요한 데이터를 백업하십시오.
루트 파티션의 크기를 조정하기 위해 아래의 단계별 지침을 살펴보겠습니다.
-
루트 파티션의 현재 크기를 확인하는 것부터 시작하겠습니다.
df명령을 실행하고-h옵션을 추가하여 출력에서 사람이 읽을 수 있는 숫자를 수신하여 이를 수행할 수 있습니다. 명령에서/는 루트 파티션을 나타냅니다.df -h /위의 스크린샷에서 볼 수 있듯이 루트 파티션의 현재 크기는 약 60GB입니다.
그러나
fdisk로 디스크 크기를 확인하면 드라이브가 100GB의 사용 가능한 공간을보고합니다.sudo fdisk -lfdisk명령 출력은 하드 드라이브의 실제 크기가 100GB이고 이 중 약 60GB만 루트 파티션(우리의 경우/dev/sda3)에 사용함을 보여줍니다. 또한 시스템에서도 볼 수 있는 Linux 부트 로더(파티션 1 및 2) 전용 공간이 있지만 해당 파티션은 그대로 두어야 합니다.fdisk유틸리티를 열어 크기 조정 프로세스를 시작하겠습니다. 파티션 구성표를 변경하려는 하드 드라이브(root가 있는 드라이브)의 장치 경로를 지정해야 합니다.sudo fdisk /dev/sdXfdisk도구 내에서p명령을 실행하여 현재 파티션 테이블을 인쇄합니다.Command (m for help): p새 파티션 크기 조정이 이 동일한 섹터에서 시작되는지 확인해야 하므로 루트 파티션의 시작 섹터를 기록해 두십시오 – 끝나는 위치는 변경될 수 있지만 모든 것이 계속 올바르게 작동하려면 시작 섹터가 동일하게 유지되어야 합니다. 위의 스크린샷에서 루트 파티션의 시작 섹터가
1054720인 것을 볼 수 있습니다. 끝 섹터는125827071이지만 이 숫자는 크기 조정 프로세스 중에 변경됩니다.-
이제 루트 파티션을 삭제하고 원하는 크기로 다시 만듭니다.
d명령을 실행하여 파티션을 삭제합니다. 참고 : 우리의 경우 파티션 3을 삭제하고 있으며, 이는 루트 파티션의 번호이므로 자신의 시스템에 적합한 번호를 선택했는지 확인하십시오.Command (m for help): d Partition number (1-3, deault 3): 3 Partition 3 has been deleted. 다음으로,
n(new) 명령을 실행하여 파티션을 다시 생성해 보겠습니다. 이전과 동일한 파티션 번호를 부여하겠습니다.Command (m for help): n Partition number (3-128, deault 3): 3 First sector (1054720-209715166, default 1054720): [enter the starting sector here! it needs to be the same as before] Last sector, +sectors or +size{K,M,G,T,P} (1054720-209715166, default 209715166): Created a new partition 3 of type 'Linux filesystem' and of size 99.5 GiB.마지막 두 질문의 경우 원하는 설정과 일치했기 때문에
Enter키를 눌러 기본값으로 진행할 수 있었습니다. 즉, 첫 번째 섹터는 이전과 동일하게 유지되었으며 파티션이 사용 가능한 하드 드라이브 공간의 전체 크기에 걸쳐 있는지 확인하기 위해 사용 가능한 마지막 섹터(기본값에서 제안함)를 수락했습니다.다음 질문이 표시되면
n을 no로 응답해야 합니다.Partition #3 contains a ext4 signature. Do you want to remove the signature? [Y]es/[N]o: n파티션 테이블을 p로 다시 한 번 인쇄하고 출력이 이제 루트 파티션의 원하는 크기를 반영하는지 확인해보자.Command (m for help): p위 명령의 출력이 예상한 것인지 다시 확인하십시오. 위의 변경 사항이 좋아 보이면
w명령을 사용하여 변경 사항을 디스크에 씁니다.Command (m for help): w이제 quit 명령에
q를 입력하여fdisk를 닫을 수 있습니다.이 시점에서 루트 파티션을 새 크기로 다시 마운트하려면 시스템을 재부팅해야 합니다. 다음 재부팅 시
fsck(파일 시스템 검사)를 강제 실행하여 마운트하기 전에 파티션이 확인되었는지 확인합니다. 이렇게 하려면/파티션의 루트에forcefsck라는 빈 파일을 생성하면 됩니다.sudo touch /forcefsck그리고 시스템을 재부팅하십시오.
reboot시스템이 다시 작동하면 루트 파티션에서 사용할 수 있게 된 공간을 가로질러 파일 시스템(이 경우 ext4)을 확장해야 합니다. 이를 위해
resize2fs명령을 실행하고 루트 파티션의 장치 경로를 지정합니다(이 경우/dev/sda3이지만 사용자의 경로는 다를 수 있습니다.sudo resize2fs /dev/sda3df명령을 실행하면 루트 파티션의 새 크기와 예상 크기가 표시됩니다.df -h /
마무리 생각
이 튜토리얼에서는 Linux 시스템에서 적극적으로 부팅하는 동안 루트 파티션의 크기를 조정하는 방법을 보았습니다. 파티션을 먼저 마운트 해제하지 않고 크기 조정 프로세스를 완료했는데, 이는 권장되지는 않지만 중요한 데이터가 없는 중요하지 않은 시스템에서 수행할 수 있습니다. 이 방법은 라이브 환경을 사용하여 프로세스를 수행하는 것과 같은 더 나은 옵션을 쉽게 사용할 수 없는 경우에만 사용하는 것이 가장 좋습니다.







