
최근 트윈 디스크 장비에 멀티 부팅 시스템을 설치하려는 시도가 실패했습니다. 하지만 디스크 1에 Ubuntu, Linux Mint 및 Peppermint를 성공적으로 설치하고 나중에 grub을 업데이트했습니다. 디스크 2에 CentOS, openSUSE 및 Fedora를 설치하려고 했을 때 많은 문제가 발생했습니다.
- 사용 가능한 공간이 충분하지 않습니다. GParted를 사용하여 두 디스크를 모두 포맷했지만 LVM이 아닌 설치의 경우 디스크 2에는 OS가 없었습니다.
- 설치 프로그램에 다른 배포판이 표시되지 않습니다.
- 마운트 지점이 허용되지 않습니다.
- /boot/efi 파티션이 필요했고 GPT 파티션 테이블이 요청되었습니다.
- 설치 프로그램을 통해 파티션을 수정하려고 시도하면 충돌이 발생했습니다.
- LMDE 2(데비안에 내 CPU에 문제가 있나요?)를 시도했지만 설치된 모든 배포판이 표시되었지만(본인인지 확인하기 위해 다시 설치한 CentOS 6.6 포함) /boot/efi 파티션이 필요했습니다.
행위.
문제가 발생한 것은 최신 RPM 배포판이었기 때문에 이전에는 CentOS 6.6이 이전 설정 BIOS 설정과 sudo update-grub에서 행복하게 공존했지만 CentoS 7을 먼저 설치하기로 결정했습니다. 특히 openSUSE를 새로 설치할 가능성을 높이는 데 도움이 되는 힌트가 있습니까? 나는 CentOS와 Fedora의 단점을 해결했다고 생각합니다.
- 모든 것을 제거합니다. 새로 설치하려면.
- GPT를 사용하여 두 디스크를 다시 포맷하고 각 디스크에 대해 두 개의 fat32 /boot/efi 플래그가 지정된 파티션을 만듭니다. 이것은 과잉인가, 아니면 필수인가?
- 그런 다음 LVM이 아닌 새 매뉴얼 설치를 위해 ext4 및 linux-swap 파티션이 있는 /, /home 파티션을 만들었습니다.
- BIOS를 확인하고 설정을 레거시에서 UEFI로 변경하십시오.
- 공간이 부족하고 /boot/efi, /home, / 및 스왑 등의 마운트 지점 문제를 극복한 후 CentOS 7을 설치합니다.
- 명령 실행 [ -d /sys/firmware/efi ] && echo "UEFI 모드에서 설치됨" || echo "레거시 모드에서 설치됨" = UEFI 모드에서 설치되었습니다.
Ubuntu 및 Ubuntu 기반 배포판은 주로 Debian을 기반으로 사용하고 현재 아직 systemd를 구현하지 않기 때문에 가까운 시일 내에 이를 따를 가능성이 높으며 지금 적응해야 합니다.
체인로더.
내가 많은 경험을 한 것은 아니지만 마지막으로 시도했을 때 sudo update-grub이 그것을 제거했습니다. 그래서 나중에 웹 사파리에서 몇 가지 실질적인 시작점을 발견하고 grub2-mkconfig -o /boot/grub2/grub.cfg가 sudo update-grub과 유사하여 CentOS 7에 대한 올바른 용어(신규)를 호출했습니다. 그런 다음 "etc/grub.d/40_custom"을 사용하여 gedit 파일을 열거나 그렇게 될 것이라고 생각하여 #40 메뉴 항목을 편집합니다.
단말기.
터미널에서 #... 뒤에 체인로더를 입력해야 합니까? 아래 스크립트가 확실하지 않으며 이에 대한 경험이 풍부한 의견을 주시면 감사하겠습니다.
[root@localhost tony]# /etc/grub.d/40_custom
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
[root@localhost tony]#
#DISK 1
#
# for CentOS-7
menuentry "My custom boot entry" {
set root= '(hd0,2)'
linux /boot/vmlinuz-linux
initrd /boot/initramfs-linux.img
}
#
# for openSUSE
"openSUSE-13.2" {
set root='(hd0,5)'
linux /boot/vmlinuz-linux
initrd /boot/initramfs-linux.img
}
#
# for Fedora
"Fedora-22" {
set root='(hd0,8)'
linux /boot/vmlinuz-linux
initrd /boot/initramfs-linux.img
}
#
#DISK 2
#
# for Ubuntu
"Ubuntu-14.04.2" {
set root='(hd1,2)'
linux /boot/vmlinuz-linux
initrd /boot/initramfs-linux.img
}
#
# for Linux Mint
"Linuxmint-17.1" {
set root='(hd1,5)'
linux /boot/vmlinuz-linux
initrd /boot/initramfs-linux.img
}
#
# for Peppermint
"Peppermint-Five" {
set root='(hd1,8)'
linux /boot/vmlinuz-linux
initrd /boot/initramfs-linux.img
}
요약.
레거시 모드에서 UEFI 모드로 변경하고, GPT 파티션 테이블을 사용하고, 두 디스크 모두에 대해 두 개의 /boot/efi 파티션을 생성하는 것이 필요합니다. 나 자신에 대해 확신이 없는 체인로더는 다른 배포판과 조화를 이루는 다른 배포판을 고통 없이 설치하기 위해 지침이 필요합니다.
이 주제에 대해 많은 도움을 주셔서 미리 감사드립니다.
답변1
설치 프로그램이 지정한 마운트 지점을 허용하지 않는 등의 일부 문제는 분명히 배포판에만 해당되며 배포판 관련 포럼에서 이와 관련된 개별 질문으로 해결해야 합니다.
복잡한 다중 OS 설정을 위해 부팅 관리자를 구성하는 방법에 대한 전반적인 질문에 대해 먼저 그러한 복잡한 설정을 만들지 말라고 조언하겠습니다. 가능하다면 단일 부팅을 하고 가상화(VMWare, VirtualBox, KVM/QEMU 등)를 사용하여 여러 OS를 처리해야 합니다. 이 접근법은많이한 컴퓨터에서 여섯 개의 서로 다른 OS를 관리하는 것보다 문제가 적습니다.
만약 너라면~ 해야 하다너무 많은 OS를 멀티부팅하는 경우 IMHO GRUB는 끔찍한 솔루션입니다. 설정 스크립트에는 복잡한 OS 감지 논리가 필요합니다. 특정 배포판의 설정 스크립트는 해당 배포판을 꽤 잘 처리하지만 다른 배포판에서는 훨씬 더 불확실합니다. 대신 다른 EFI 부팅 관리자를 사용하는 것을 고려해야 합니다. 자세한 내용은 여러 가지를 사용할 수 있습니다.이 페이지내 것. 대부분은 수동 구성이 필요하지만 해당 구성은 GRUB 작동에 필요한 조정보다 훨씬 간단합니다. 내 자신의재정의부팅할 때마다 부트로더와 Linux 커널을 검색하므로 설정하기가 가장 쉬울 것입니다. 대부분의 설치에 파일이 필요할 수 있으며 /boot/refind_linux.conf
, 커널을 저장하는 파일 시스템에 주의를 기울이고 해당 EFI 파일 시스템 드라이버를 설치해야 할 수도 있습니다. 그러나 rEFInd는 아마도 대부분의 경우 부팅되거나 그 이상의 번거로움 없이 모든 배포판을 관리할 수 있으며 특정 배포판에서 커널을 변경할 때마다 구성을 조정할 필요가 없습니다.