저는 Ubuntu Linux를 사용하여 애플리케이션을 개발하지만 최종 환경을 설정하는 것은 일반적으로 Linux 관리자의 몫입니다. 저는 애플리케이션과 Docker 컨테이너를 수용하는 Linux 상자(VMWare를 통해)를 가지고 있습니다. 이것은 효과가 있고 훌륭합니다.
이제 기본 드라이브/볼륨을 10TB 이상으로 확장해야 합니다. 처음에는 어떤 이유로 원래 드라이브를 1TB로만 설정했습니다. 이제 더 크게 만들어야 합니다.
서버 팀(VMware를 통해)은 VM에 디스크 공간(500GB)을 추가했고 저는 일부 튜토리얼을 통해 fdisk를 통해 이 500GB를 드라이브에 추가할 수 있었습니다.
기이! 이제 서버에 10TB의 공간이 추가되었습니다. 공간을 볼 수 있지만 fdisk를 사용하면 2TB보다 큰 공간을 분할할 수 없다는 것을 알게 됩니다.
gdisk나 이와 유사한 것을 사용할 수 있다는 것을 온라인에서 보았습니다. 내 질문은 다음과 같습니다
1) 서버에 10TB의 공간을 추가하는 방법은 무엇입니까? 그리고
2) fdisk가 아닌 다른 파티션을 사용하여 이 파티션을 설정하는 경우 fdisk에 설정되어 있지 않기 때문에 나중에 이 공간을 사용하여 메인 드라이브를 확장할 수 있습니까?
답변1
표시되는 2TB 제한은 (고대, 1983년 경) DOS MBR 파티션 테이블 형식에서 비롯됩니다. 2³² 섹터만 사용할 수 있으며, 그 중 512바이트 섹터가 2TiB의 출처입니다. fdisk
일반적으로 DOS MBR만 지원됩니다.
해결책은 업데이트된 파티션 테이블 형식 GPT를 사용하는 것입니다. gdisk
GPT 테이블을 처리하고 시작 시 변환을 시도하는 여러 도구 중 하나입니다. 를 클릭할 때까지 변환은 메모리에서만 수행됩니다 w
. 디스크를 확장하는 것이 아니라 이미 확장했기 때문에 작동하는 경우 일반적으로 실패합니다(GPT에는 디스크 끝과 시작 부분에 일부 섹터가 필요하고 DOS MBR에는 끝이 필요하지 않음).
gdisk를 시작하면 다음과 같은 내용이 표시됩니다.
***************************************************************
Found invalid GPT and valid MBR; converting MBR to GPT format
in memory. THIS OPERATION IS POTENTIALLY DESTRUCTIVE! Exit by
typing 'q' if you don't want to convert your MBR partitions
to GPT format!
***************************************************************
친숙해야 하는 fdisk의 일반 명령을 사용하여 GPT 파티션 테이블을 조작할 수 있습니다.
당연히 백업을 수행해야 하며, 아니면 최소한 서버 팀이 가상 머신의 스냅샷을 생성해야 합니다.
장기적으로는 가능하다면 LVM을 통해 파티션되지 않은 장치를 사용하는 것을 고려해야 합니다. 그런 다음 확장하는 것이 훨씬 쉽고 일반적으로 온라인 작업입니다(예: 파티션되지 않은 장치를 LVM에 제공하면 pvresize /dev/whatever
몇 분의 1초만 소요되고 온라인으로 수행되는 간단한 작업이 됩니다 ).