기본 파티션의 크기를 조정하고 루트 파티션에서 가져와서 기본 공간을 늘립니다.

기본 파티션의 크기를 조정하고 루트 파티션에서 가져와서 기본 공간을 늘립니다.

이것은 내 파티션입니다

lsblk -o NAME,FSTYPE,LABEL,SIZE,MOUNTPOINT
NAME   FSTYPE LABEL  SIZE MOUNTPOINT
sdb                  9.1T
├─sdb1 swap           16G [SWAP]
├─sdb2 ext3          512M /boot
├─sdb3 ext4            2T /
├─sdb4 ext4          7.1T /home
└─sdb5                 1M


df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs         16G     0   16G   0% /dev
tmpfs            16G     0   16G   0% /dev/shm
tmpfs            16G  912K   16G   1% /run
tmpfs            16G     0   16G   0% /sys/fs/cgroup
/dev/sdb3       2.0T  4.8G  1.9T   1% /
tmpfs            16G   16K   16G   1% /tmp
/dev/sdb2       488M  218M  245M  48% /boot
/dev/sdb4       7.1T  4.6T  2.2T  68% /home
tmpfs           3.1G     0  3.1G   0% /run/user/0

데이터 손실 없이 루트 디렉터리/2T에서 /home 파티션까지의 공간을 차지하고 싶습니다.

답변1

이 작업은 다음과 유사합니다.15-퍼즐 Linux를 다시 설치하고 홈 디렉터리의 백업을 복원하는 것이 가장 좋습니다.

하지만 도전을 좋아한다면 다음을 시도해 볼 수 있습니다.
물론 제가 틀렸을 수도 있고 이로 인해 모든 데이터가 손실될 수도 있습니다.

  1. 설치 분리
  2. 단일 사용자 시작
  3. resize /partition
    parted /dev/sdb
    (parted) p
    ...
    크기 조정 3 www xxx
  4. 단일 사용자 다시 시작
  5. 별도의
    (별도의) p
    ...
    크기 조정 4 yyy zzz
  6. 재시작

답변2

사람들이 여기서 언급했듯이 파티션 크기를 조정하는 것은 매우 위험할 수 있습니다. 그리고 어떤 파티션에 있든 해당 컴퓨터에 중요한 데이터를 백업해 두는 것이 좋습니다.

대체 솔루션으로 "dump" 및 "restore" 명령을 사용하여 루트 파일 시스템을 백업하고 루트 파티션을 다시 만든 다음 덤프를 새 파티션에 복원할 수 있습니다.

또한 기본 파티션에 추가하기보다는 /home(예: /home/bigdata) 아래 별도의 마운트 지점에 저장된 공간을 사용하는 것이 좋습니다. 이 접근 방식의 장점은 거대한 기본 파티션의 크기를 조정할 필요가 없으므로 데이터 손실 가능성이 줄어든다는 것입니다.

제가 제안한 대안의 단계는 다음과 같습니다. 그러나 dump/restore 명령에 대한 특정 매개변수를 찾아야 합니다.

  1. USB 스틱(또는 CD-ROM이 있는 경우)을 사용하여 컴퓨터를 다시 시작합니다.
  2. dump -0루트 파티션의 어딘가에 a를 실행합니다.
  3. parted를 사용하여 루트 파티션을 더 작은 크기로 다시 만든 다음 ext4 파일 시스템으로 다시 포맷합니다.
  4. 루트 파티션의 덤프를 새 파티션으로 복원하고 다음 restore명령을 사용하십시오.
  5. 저장된 공간을 사용하여 새 파티션을 만들고 필요한 곳에 마운트하세요.

관련 정보