Parted 명령줄 도구를 통해 GPT 파티션 크기를 조정하는 방법. (SSH Rescue Env 사용)

Parted 명령줄 도구를 통해 GPT 파티션 크기를 조정하는 방법. (SSH Rescue Env 사용)

초기 OS 설치 후 파티션 크기를 조정하기 위한 온라인 제어판이 없는 원격 전용 서버가 있기 때문에 데비안 기반 복구 환경을 사용하여 마운트 해제된 파티션을 조작하고 있습니다. 문제는 원격 드라이브에서 파티션을 조작할 때 제가 좀 멍청하다는 것입니다. GParted는 옵션이 아니기 때문에 GNU Parted 명령줄 도구를 사용해 보았습니다. 그리고 드라이브가 GPT로 포맷되었기 때문에 fdisk는 쓸모가 없습니다. 버전 2.4부터 resize 명령이 제거되었음을 확인하세요. 아래는 parted의 인쇄 명령으로 얻은 파티션 목록입니다.

Number  Start   End     Size    File system     Name     Flags
1      20.5kB  1049kB  1029kB                  primary  bios_grub
2      2097kB  21.0GB  21.0GB  ext4            primary
3      21.0GB  2000GB  1979GB  ext4            primary
4      2000GB  2000GB  536MB   linux-swap(v1)  primary

내가 알아야 할 것은 #3을 약 1.2TB로 축소한 다음 #3이 축소되었을 때 이동된 내용을 채우기 위해 #2를 확장하는 방법입니다. 내 #2 파티션이 꽉 찼고, #3 파티션에 여유 공간이 있습니다.

답변1

현재 마운트된 항목(및 마운트해야 하는 항목)과 마운트 문제를 해결하기 위해 다른 매체에서 부팅할 수 있는지 여부에 따라 원하는 작업을 수행하는 것이 가능할 수도 있고 불가능할 수도 있습니다. 여기서 고려해야 할 요소:

  • 항상 a와 a의 차이점을 명심하세요.분할(일반적으로 유형 코드와 같은 다른 것들과 함께 디스크 공간 덩어리의 시작 및 끝 지점을 정의하는 간단한 데이터 구조) 및파일 시스템(파티션이나 LVM의 논리 볼륨과 같은 다른 컨테이너 내에 보관되는 더 복잡한 데이터 구조) 이 차이점을 아직 완전히 이해하지 못했다면 지금 멈추고 조사해 보세요.
  • 마운트된 ext2/3/4 파일 시스템의 크기를 늘릴 수 있지만 AFAIK는 마운트된 ext2/3/4 파일 시스템의 크기를 줄일 수 없습니다. 유틸리티 resize2fs는 명령줄에서 이 작업을 수행합니다.
  • 파티션 크기를 조정하려면 파티션을 삭제하고 그 자리에 새 파티션을 만들어야 할 수도 있습니다. 시작점과 끝점은 parted기본적으로 제공되지 않는 섹터 수준 정밀도로 지정해야 할 수도 있습니다. unit s이를 얻으려면 설정해야 합니다 . 또는 gdisk기본적으로 섹터 수준 정밀도를 제공하는 를 사용할 수 있습니다 . ( 단, 기본적으로 파티션을 2048 섹터 값으로 자동 정렬하므로 전문가 메뉴의 옵션 gdisk으로 정렬을 조정해야 할 수도 있습니다 .)d
  • 파일 시스템 크기 조정 작업은 일반적으로 파일 시스템의 시작 지점을 변경하지 않고 그대로 둡니다. 따라서 파티션의 시작점을 이동해야 하는 경우 dd파일 시스템의 전체 내용을 이동하려면 또는 다른 도구를 사용하여 이동해야 합니다. 이동 방향에 따라 원래 파티션을 삭제하기 전이나 후에 이 작업을 수행해야 할 수도 있고 이동 전이나 후에 새 파티션을 생성해야 할 수도 있습니다. 이동 작업이 원래 위치와 겹치는 경우 다음을 수행해야 합니다.매우일부 파티션 데이터가 파손되지 않도록 주의하세요.
  • 파티션 및 파일 시스템 끝점에 매우 주의하십시오. 파일 시스템을 축소한 다음 너무 작은 새 파티션을 다시 생성하면 중요한 데이터가 폐기될 수 있습니다. 파일 시스템을 의도한 것보다 작게 축소하고 새 파티션을 만든 다음 를 사용하여 resize2fs파일 시스템을 새 주변 파티션의 크기로 늘리는 것이 좋습니다. 이 절차는 크기 불일치가 발생할 가능성을 최소화합니다.
  • 커널이 새 테이블을 사용하도록 하려면 파티션 테이블을 변경한 후 재부팅해야 할 수도 있다는 점을 기억하십시오.

이러한 문제로 인해 GParted나 파티션 및 파일 시스템 변경을 조정하도록 설계된 다른 도구의 도움 없이 원하는 작업을 수행하는 것은 매우 위험할 수 있습니다. 그것~할 수 있다완료되었지만 섹터 값을 지정할 때 한 번의 실수로 인해 디스크가 완전히 쓸모없게 될 수 있습니다. 당신이 이것에 대해 도움을 요청한다는 사실 때문에 나는 당신에게 시도를 제안하는 것이 조심스럽습니다. 이런 종류의 일을 한 번도 해본 적이 없는 사람에게는 생산 시스템을 망칠 위험이 너무 큽니다. 다른 옵션이 없다면 원격 서버에서 시도하기 전에 로컬에서 서버를 다시 만들고 복사본을 연습하는 것이 좋습니다.

몇 가지 대안을 고려해 볼 수도 있습니다.

  • GParted 사용-- 외부 매체에서 부팅할 수 있으면 GParted를 사용할 수 있습니다. 이것이 원격 서버라고 말합니다. 이러한 시스템 중 다수는 가상 USB 드라이브를 연결하고 Java 애플릿을 통해 가상 콘솔을 볼 수 있는 BMC를 제공합니다. 이 기능을 사용하면 속도가 매우 느려지지만 GParted를 실행하고 훨씬 더 쉽고 안전하게 변경할 수 있습니다.
  • 추가 파티션 생성-- 하나의 파티션을 축소한 다음 다른 파티션을 이동하거나 늘리는 대신 새 파티션을 생성할 수 있습니다. 그런 다음 데이터를 하위 디렉터리에서 새 파티션으로 이동하고 해당 하위 디렉터리 대신 마운트합니다. 이 접근 방식은 기본적으로 차이점을 나눕니다. 여전히 하나의 파티션을 축소해야 하지만 더 위험하고 어려운 이동 작업을 수행할 필요가 없습니다.
  • 심볼릭 링크 사용-- 너무 꽉 찬 파티션의 일부 파일을 덜 꽉 찬 파티션으로 분할한 다음 기호 링크를 사용하여 원하는 경로에서 해당 파일에 액세스할 수 있도록 함으로써 목표를 달성할 수 있습니다. 이것이 가장 안전한 접근 방법일 가능성이 높습니다.
  • 재설치-- 적절한 백업이 있는 경우 시스템을 백업하고 더 나은 설정으로 다시 설치하고 원본 데이터를 복원할 수 있습니다.
  • 현장에서 하세요-- 서버에 물리적으로 접근할 수 있거나 현장 지원이 있는 경우 Ubuntu 설치 USB 플래시 드라이브를 사용하여 데스크톱 시스템에서와 마찬가지로 직접 작업을 수행할 수 있습니다. 이것이 얼마나 중요한지, 서버가 귀하와 관련된 위치에 따라 작업을 수행하기 위해 여행을 떠날 수도 있습니다.
  • 디스크 추가-- 옵션인 경우 디스크를 추가하고 일부 데이터를 디스크로 이동하는 것을 고려할 수 있습니다.

앞으로는 사용을 고려해 볼 수도 있습니다.논리 볼륨 관리(LVM),이는 이러한 종류의 조작을 훨씬 간단하고 안전하게 만듭니다. LVM은 상당한 학습 곡선을 가지고 있지만 일단 기본 사항을 숙지하고 나면 파티션 이동에 대해 걱정할 필요가 없기 때문에 많은 도움이 됩니다. 파일 시스템은 파일 시스템의 파일처럼 저장되므로 일단 하나를 축소하면 시작점을 변경하지 않고도 다른 하나를 여유 공간으로 확장할 수 있습니다. LVM은 새 디스크 형태로 공간을 추가하는 데도 도움이 됩니다.

답변2

임시 수정으로 내가 읽은 기사에서. 사용되는 공간의 70%가 웹 서버, 특히 /var/www에서 나오는 것 같습니다. 그래서 내가 한 일은 다음과 같습니다.

cd /var
mv www /home
ln -s /home/www www
ll
lrwxrwxrwx  1 root root      9 Oct 18 12:33 www -> /home/www/

내가 말했듯이, 임시 수정이지만 내 루트 디렉토리는 이제 %100 대신 %30만 가득 찼습니다. 따라서 파티션 크기를 조정할 수 있을 때까지는 작동합니다.

관련 정보