단일 파티션 시스템에서 /boot를 다른 파티션으로 분할할 수 있습니까?

단일 파티션 시스템에서 /boot를 다른 파티션으로 분할할 수 있습니까?

나는 /(ext4) 파티션만을 사용하여 시스템을 설정하고 모든 것을 구성했습니다. 따라서 별도의 홈, 부팅, 스왑 등이 없습니다.

질문은 다음과 같습니다.

이 구성에서 "별도의" 파티션 설정으로 전환할 수 있는 방법이 있습니까?

별도의 부팅 파티션을 위한 공간을 만들고 거기에 /boot를 복사할 수 있나요?

답변1

기존 파일 시스템과 파티션을 축소하여 다른 파티션을 위한 공간을 확보한 다음 파일을 복사할 수 있습니다. 대부분의 파일 시스템은 마운트 시 축소할 수 없으므로 Live CD/USB(예: 배포판 또는GParted 라이브 CD(Live CD는 파티션 전용입니다) 또는시스템 복구 디스크(일반 시스템 관리 및 Rescue Live CD).

그러나 별도의 파티션을 만드는 것은 권장하지 않습니다 /boot. /boot분리는 부팅 시스템이 루트 파티션에서 커널을 로드할 수 없는 경우에만 유용합니다. 이런 일이 발생하는 일반적인 상황은 다음과 같습니다.

  • 전체 디스크를 볼 수 없는 오래된 BIOS(펌웨어)가 있으므로 부팅에 필요한 소프트웨어를 디스크 시작 부분 근처의 작은 파티션에 넣어야 합니다.
  • 부트로더가 루트 파티션을 읽을 수 없습니다. 예를 들어, 부트 로더는 Grub 1이고 루트 파티션은 LVM 볼륨에 있습니다.

시스템이 이미 루트 파티션의 커널로 부팅 가능한 경우 별도의 부팅 파티션을 생성해도 이점이 없습니다.

별도의 부팅 파티션을 만들기로 결정했거나 기존 부팅 파티션을 루트 파티션에 병합하는 경우 파일을 복사하는 것 이상의 작업을 수행해야 합니다. PC가 부팅되면 BIOS는 부팅 섹터(부팅 디스크의 처음 512바이트)를 메모리에 로드합니다. 전체 파일 시스템 드라이버를 넣을 공간이 충분하지 않으므로 이 코드는 부트 섹터에 저장된 위치에서 더 많은 코드를 로드합니다. 이 코드를 다른 파티션으로 이동하는 경우 이 위치를 업데이트해야 합니다. 부트로더 구성 파일을 업데이트해야 할 수도 있습니다.

  • Grub의 경우 배포판 update-grub(예: Debian 또는 Ubuntu)과 함께 제공되는 경우 이를 실행하세요. 그렇지 않으면 구성 파일( /boot/grub/menu.lstGrub 1 또는 /boot/grub/grub.cfgGrub 2의 경우)을 편집하고 Grub이 커널을 찾는 장치를 업데이트하십시오. (Grub 2를 사용하면 런타임에 자동으로 커널을 찾기 때문에 아무 것도 할 필요가 없습니다.) 두 경우 모두 grub-install /dev/sda.
  • Lilo와 함께 달리세요 lilo.

답변2

나는 그것을 시도하지 않았고 단지 복사했습니다."/시작하다"작동할 것입니다. 반드시 편집하세요."/etc/fstab"따라서. 라이브 파티션의 크기를 조정하는 방법(가능하거나 권장되는 경우)을 모르기 때문에 다른 시스템(예: 라이브 디스크)을 사용하여 이 작업을 수행하겠습니다. 또한 새 부팅 파티션을 첫 번째 파티션으로 유지합니다("/dev/sda") 피하다시작할 수 없습니다.

관련 정보