내 현재 디스크 레이아웃은 다음과 같습니다
나는 아래 조언을 따르고 있습니다https://unix.stackexchange.com/a/501410/674디스크의 파티션을 다시 정렬합니다. 다음 단계는 괜찮습니까?
- sda3(/)를 60G로 축소하고 디스크 끝에 204G를 할당되지 않은 영역으로 남겨둡니다(이미 수행했습니다)
- sda4(/home)를 할당되지 않은 공간인 93G 앞으로 이동합니다. (이 단계가 진행 중입니다.)
- sda3(/)를 디스크 끝, 204G 새 할당되지 않은 영역 뒤로 이동하여 두 개의 할당되지 않은 영역(93G 및 204G)이 하나의 297G 할당되지 않은 영역으로 결합됩니다.
- 297G 할당되지 않은 영역을 포함하도록 sda4(/home) 확장
현재 라이브 Lubuntu에서 gparted의 두 번째 단계를 수행하고 있는데, gparted는 이동할 파티션에 /boot가 포함되어 있거나 Windows 시스템 파티션 C:인 경우 이동된 파티션이 부팅되지 않을 가능성이 높다고 경고합니다. BIOS Grub 파티션, 루트 파티션 및 기본 파티션이 있습니다. /boot
파티션 sda3(/)에 위치합니다. 3단계에서 부팅 실패 없이 sda3(/)을 디스크 끝으로 이동할 수 있나요? 다음을 기반으로 grub을 다시 설치해야 할 것 같습니다.https://askubuntu.com/questions/299886/partitions-is-it-safe-to-move-partition-changing-boot그리고https://howtoubuntu.org/how-to-repair-restore-reinstall-grub-2-with-a-ubuntu-live-cd
고쳐 쓰다:위의 단계를 거친 후 디스크의 레이아웃은 다음과 같습니다.
grub으로 아무 것도 할 필요가 없었고 디스크에서 Lubuntu로 성공적으로 재부팅할 수 있었습니다. sda3() 가 포함된 파티션을 이동 /
한 후 grub으로 아무 작업도 수행할 필요가 없는 이유는 무엇입니까 /boot
? /
원래 sda3( )이 차지했던 영역이 현재 sda4(/home)에서는 사용되지 않기 때문일까요 ? Lubuntu가 현재 sda4(/home)의 여유 공간인 원래 영역이 아닌 재배치된 sda3( )에서 /
부팅 되고 있는지 어떻게 확인할 수 있나요?
$ cat /boot/grub/grub.cfg |grep boot
set boot_once=true
set boot_once=true
if [ -z "${boot_once}" ]; then
if [ -n "${have_grubenv}" ]; then if [ -z "${boot_once}" ]; then save_env recordfail; fi; fi
linux /boot/vmlinuz-4.15.0-45-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro quiet splash $vt_handoff
initrd /boot/initrd.img-4.15.0-45-generic
linux /boot/vmlinuz-4.15.0-45-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro quiet splash $vt_handoff
initrd /boot/initrd.img-4.15.0-45-generic
linux /boot/vmlinuz-4.15.0-45-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro recovery nomodeset
initrd /boot/initrd.img-4.15.0-45-generic
linux /boot/vmlinuz-4.15.0-44-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro quiet splash $vt_handoff
initrd /boot/initrd.img-4.15.0-44-generic
linux /boot/vmlinuz-4.15.0-44-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro recovery nomodeset
initrd /boot/initrd.img-4.15.0-44-generic
linux /boot/vmlinuz-4.15.0-43-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro quiet splash $vt_handoff
initrd /boot/initrd.img-4.15.0-43-generic
linux /boot/vmlinuz-4.15.0-43-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro recovery nomodeset
initrd /boot/initrd.img-4.15.0-43-generic
linux /boot/vmlinuz-4.15.0-42-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro quiet splash $vt_handoff
initrd /boot/initrd.img-4.15.0-42-generic
linux /boot/vmlinuz-4.15.0-42-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro recovery nomodeset
initrd /boot/initrd.img-4.15.0-42-generic
linux /boot/vmlinuz-4.15.0-39-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro quiet splash $vt_handoff
initrd /boot/initrd.img-4.15.0-39-generic
linux /boot/vmlinuz-4.15.0-39-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro recovery nomodeset
initrd /boot/initrd.img-4.15.0-39-generic
linux /boot/vmlinuz-4.15.0-38-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro quiet splash $vt_handoff
initrd /boot/initrd.img-4.15.0-38-generic
linux /boot/vmlinuz-4.15.0-38-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro recovery nomodeset
initrd /boot/initrd.img-4.15.0-38-generic
linux /boot/vmlinuz-4.15.0-36-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro quiet splash $vt_handoff
initrd /boot/initrd.img-4.15.0-36-generic
linux /boot/vmlinuz-4.15.0-36-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro recovery nomodeset
initrd /boot/initrd.img-4.15.0-36-generic
linux /boot/vmlinuz-4.15.0-33-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro quiet splash $vt_handoff
initrd /boot/initrd.img-4.15.0-33-generic
linux /boot/vmlinuz-4.15.0-33-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro recovery nomodeset
initrd /boot/initrd.img-4.15.0-33-generic
knetbsd /boot/memtest86+.elf
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
감사해요.
답변1
sda3(/)를 60G로 축소하고 디스크 끝에 204G의 할당되지 않은 공간을 남겨 둡니다. 이 단계를 완료했습니다.
sda4(/home)를 할당되지 않은 공간 93G 앞으로 이동: 이 단계가 진행 중입니다. 이 단계를 수행하기 전에 중요한 데이터를 백업하십시오.
204G의 새로운 할당되지 않은 공간 이후 sda3(/)를 디스크 끝으로 이동하여 두 개의 할당되지 않은 영역(93G 및 204G)이 하나의 297G 할당되지 않은 영역으로 병합되도록 합니다. 이 단계 전에 sda4가 성공적으로 이동되었는지 확인하세요. 2단계는 문제 없이 진행됩니다. 이 단계에서는 /boot 디렉토리가 sda3(/)에 있으므로 시스템이 부팅되도록 GRUB 부트 로더를 다시 설치해야 할 수도 있습니다. 이 단계를 수행하기 전에 제공된 링크와 지침을 읽고 이해했는지 확인하십시오.
297G의 할당되지 않은 공간을 포함하도록 sda4(/home) 확장: 처음 세 단계를 완료한 후 gparted 또는 다른 디스크 유틸리티를 사용하여 sda4에 할당되지 않은 공간을 추가할 수 있습니다.
GRUB 부팅에 대한 질문과 관련하여 일반적으로 /boot 디렉토리가 포함된 파티션을 이동할 때 파티션의 새 위치를 반영하도록 GRUB 부트 로더를 업데이트해야 합니다. 그러나 새 위치를 사용하지 않는 경우 GRUB는 자동으로 파티션 변경을 감지하고 부팅 시 조정할 수 있습니다. 이것이 sda3(/) 이동 후 GRUB를 다시 설치할 필요가 없는 이유 중 하나일 수 있습니다.
재배치된 sda3(/)에서 Lubuntu가 부팅되는지 확인하려면 다음을 확인하세요.
터미널을 열고 다음 명령을 실행합니다.
lsblk -f
그러면 디스크 및 파티션 세부 정보가 표시됩니다. /dev/sda3의 파일 시스템 UUID가 /boot/grub/grub.cfg 파일의 UUID와 일치하는지 확인하십시오. 일치하면 Lubuntu가 재배치된 sda3(/)에서 부팅되고 있음을 의미합니다.
선택 사항: /boot/grub/grub.cfg 파일의 수정 날짜와 시간을 확인하여 파티션 이동이 수행된 이후 변경 사항이 있는지 확인할 수도 있습니다. 파일의 수정 날짜와 시간이 파티션을 이동한 이후의 시간과 일치하는 경우 이는 Lubuntu가 새 위치에서 부팅되었음을 나타냅니다.
답변2
/dev/sda1
핵심 이미지는 변경되지 않은 디렉터리 에 있으므로 GRUB를 다시 설치할 필요가 없습니다 . 코어 이미지에는 일반적으로 파티션 테이블과 포함된 파일 시스템 유형에 필요한 드라이버가 있으므로 /boot/grub
이 시점 이후에는 GRUB가 파티션과 파일 시스템을 인식할 수 있으므로 디스크 블록 위치는 더 이상 중요하지 않습니다.
GRUB 구성은 파일 시스템 UUID를 사용하여 Linux 루트 파티션을 지정하는 것으로 보입니다. 루트 파일 시스템을 디스크로 이동해도 UUID는 변경되지 않으므로 커널은 여전히 루트 파일 시스템을 잘 찾을 수 있습니다.
GRUB 코어 이미지에는 GRUB 구성 파일을 찾기 위한 경로 접두사가 포함되어 있습니다. 귀하의 경우에는 다음과 같을 수 있습니다 (,gpt3)/boot/grub
. (지정되지 않은 디스크 부분은 "GRUB 코어 이미지를 로드한 동일한 디스크"를 의미합니다.) 귀하의 /boot
디렉터리는 Linux 루트 파티션에 포함되어 있는 것으로 보입니다. 슬롯이 변경되었으며 여전히 세 번째로 변경된 파티션 슬롯이므로 경로 접두사는 여전히 유효합니다.
파티션 도구가 디스크에 있는 파티션의 물리적 순서와 일치하도록 파티션 슬롯을 다시 정렬하면 GRUB가 실패합니다.