rEFInd가 포함된 UEFI 이중 부팅 시스템 설정. Grub에서 Windows를 먼저 부팅하는 방법 BIOS용 Grub 부트로더를 GPT로 설정

작업: Windows 7 및 Ubuntu 14.04의 두 시스템이 있는 컴퓨터가 있습니다.
Windows 버전을 10으로, Ubuntu를 16.04로 업데이트해야 합니다.
우선 라이선스가 있는 Windows를 기존 버전 대신 설치하고 최신 버전(수십 개)으로 업데이트해야 했습니다.
7개의 이미지는 Microsoft 웹사이트에서 다운로드하여 무료 및 무료 프로그램을 사용하여 USB 플래시 드라이브에 업로드했습니다. 루퍼스, Windows가 이 플래시 드라이브에서 성공적으로 설치된 다음 10으로 업데이트되었습니다.
이제 작업은 GRUB를 복원하는 것입니다. Windows는 물론 Linux에 대해 알고 싶지 않은 자체 부트로더를 설치하여 부트로더를 지웠기 때문입니다. 이 작업은 최신 마더보드에 BIOS가 포함되어 있지 않지만 UEFI - 보다 발전된 로컬 운영 체제. 그리고 이전과 마찬가지로 이마에 GRUB을 어리석게 설치할 수 없습니다.

이 질문을 조금 검색한 후 Boot-Repair 프로그램의 형태로 해결책을 찾았습니다.
디스크에서 운영 체제를 검색하고 원하는 메뉴와 필요한 모든 설정을 구성하여 GRUB를 설치합니다.
이 프로그램을 사용하는 방법에는 두 가지가 있습니다.
첫 번째 방법은 우분투 USB 플래시 드라이브 또는 LiveCD에서 부팅하고 다음 프로그램을 설치하고 실행하는 것입니다.
터미널(Ctrl+Alt+T)을 열고 다음 명령을 복사하여 실행합니다.
sudo add-apt-repository ppa:yannubuntu/boot-repair
그런 다음 소스를 업데이트합니다.
sudo apt-get 업데이트
다음 명령은 Boot-Repair를 설치합니다.
sudo apt-get install -y 부팅 복구
그런 다음 시스템 메뉴를 통해 Ubuntu의 일반적인 방법으로 프로그램을 시작할 수 있습니다.
두 번째 방법 - 다운로드 이 프로그램으로 디스크 이미지, USB 플래시 드라이브 또는 CD에 업로드하고 부팅하고 부트로더를 복원합니다. 나는 두 번째 옵션을 더 실용적인 것으로 선택했습니다. 다른 곳에서 필요할지 모릅니다. 동일한 파일로 플래시 드라이브에 다운로드하여 업로드했습니다. 루퍼스-옴.
LiveCD에서는 어떤지 모르겠지만 UEFI가 있는 마더보드의 플래시 드라이브에서 부팅하는 경우 UEFI 모드로 부팅해야 합니다. 그렇지 않으면 프로그램에서 GRUB 복원을 거부합니다. 그리고 바로 여기에 잠재적인 함정이 기다리고 있습니다. 언어 및 부팅 옵션에 대한 일반적인 선택 대신 화면에 유일한 시작 옵션 행이 있는 검은색 배경에 GRUB 메뉴가 표시됩니다.
Ubuntu를 사용하여 USB 플래시 드라이브에서 부팅하는 경우 두 가지 옵션이 있는 메뉴가 있습니다.
- 설치 없이 Ubuntu 부팅
- 우분투 설치.
이 모든 경우에 항목을 선택하면 정지된 검은색 화면이 나타납니다. 즉, 시스템이 비디오 모드를 선택하지 못하고 무감각해졌습니다.
이 문제는 다음과 같이 해결됩니다. GRUB에서 원하는 메뉴 항목을 선택하고 "e" 키를 눌러 실행 라인 편집기로 들어간 다음 가장 긴 줄 끝에서 "-- " nomodeset 매개변수를 추가해야 합니다. 그런 다음 F10을 누릅니다. 시스템은 영어를 기본 언어로 사용하는 단순화된 그래픽 모드로 부팅됩니다.
이 프로그램은 권장 작동 매개변수를 제공합니다. 대부분의 경우 이것으로 충분합니다. 고급 사용자는 고급 옵션에서 운영 체제 부팅 우선 순위와 선택 시간 초과를 선택할 수 있습니다.
그 과정에서 프로그램이 요구하는 모든 것을 수행해야 합니다. 과정은 간단하고 시각적입니다. 복구가 완료되면 부트로더가 복원되었다는 메시지가 표시되고 컴퓨터를 다시 시작할 수 있습니다.

컴퓨터 부팅 중에 운영 체제를 선택하고 시작하기 위해 특수 프로그램인 부트로더가 사용됩니다. 가장 인기 있는 부트로더는 Grub입니다. Linux over Windows와 같은 여러 운영 체제를 설치할 때 마지막으로 설치된 OS가 부트로더 메뉴의 첫 번째 OS가 됩니다.

이것은 Linux를 기본 시스템으로 사용하는 사용자에게 문제를 일으키지 않습니다. Linux를 선호하는 옵션이기도 합니다. 그러나 아직 초보자이고 Linux를 두 번째 시스템으로 사용하고 익숙해질 때까지 Windows가 여전히 기본 시스템인 경우 Windows가 첫 번째 시스템이 되기를 원할 것입니다. 이 기사에서는 Grub에서 Windows를 먼저 부팅하는 방법을 살펴보겠습니다. Grub Customizer 프로그램을 사용하는 것과 수동으로 Grub 부트로더 구성 파일을 사용하는 두 가지 방법을 고려해 보겠습니다.

그럽 커스터마이저

Grub Customizer는 Grub 부트로더의 다양한 설정을 사용자 지정할 수 있는 프로그램입니다. 로딩 포인트의 위치와 순서를 포함합니다. 공식 저장소에서 프로그램을 설치할 수 있습니다. 예를 들어 Ubuntu에서는 ppa를 사용해야 합니다.

sudo add-apt-repository ppa:danielrichter2007/grub-customizer
$ sudo apt-get 업데이트
$ sudo apt-get 설치 grub-customizer

프로그램을 실행하려면 터미널을 열고(Ctrl+Alt+T) grub-customizer를 입력합니다.

프로그램에는 루트 권한이 필요하며 일부 시스템에서는 다음 명령을 사용해야 할 수도 있습니다.

gksu grub-customizer

이 프로그램은 메인 메뉴에서도 실행할 수 있습니다. 기본 창은 다음과 같습니다.

실행 후 몇 초 후에 프로그램이 설치된 운영 체제를 스캔한 다음 동일한 창에서 Windows 부팅을 처음으로 전송할 수 있습니다. 이렇게 하려면 원하는 항목을 마우스 오른쪽 버튼으로 클릭하여 컨텍스트 메뉴를 엽니다.

메뉴에서 항목 선택 이동. 이 작업은 Windows가 목록의 첫 번째 항목이 될 때까지 여러 번 반복해야 합니다. 이제 Windows 기본 그럽을 부팅합니다.

나중에 Windows를 다시 떨어뜨리고 싶다면 역동작이 있습니다. 아래로 이동.

설정을 저장하려면 저장 버튼을 클릭하기만 하면 됩니다. 준비가 된. 컴퓨터를 다시 시작하고 무슨 일이 일어나는지 확인할 수 있습니다.

그러나 유용할 수 있는 몇 가지 설정을 더 만지고 싶습니다. Grub에서 Windows를 먼저 부팅하는 대신 기본 시작 항목을 변경할 수 있습니다. 탭으로 이동 기본 설정:

여기에 기본 항목을 선택하는 목록이 있습니다. 관계를 맺다:

또한 기본적으로 마지막으로 로드된 OS를 로드할 수 있으며 이에 대한 체크 표시가 있습니다.

터미널을 통한 Grub 부팅 순서 변경

약속한 대로 이제 구성 파일을 사용하여 Grub에서 WINdows를 먼저 부팅하는 방법을 살펴보겠습니다. Grub 구성은 /boot/grub/grub.cfg 파일에 있습니다.

gksu gedit /boot/grub/grub.cfg

일반적으로 메뉴 모음은 다음과 같습니다.

메뉴 항목 item_name --옵션(
...

예를 들어 Windows 항목:

menuentry "Windows 8(로더)(/dev/sda1)" --class windows --class os $menuentry_id_option "osprob
어체인-FC324E26324DE66C"(
....

이제 메뉴 항목의 순서를 변경하려면 이 줄과 함께 뒤쪽 닫는 괄호까지 모든 것을 잘라내고 다른 모든 항목 앞에 붙여넣습니다. 그런 다음 파일을 저장하면 완료됩니다. 새로고침하고 보십시오. Windows는 기본적으로 부팅됩니다. 이 방법의 유일한 단점은 Grub 구성을 업데이트할 때 모든 설정이 손실된다는 것입니다.

Grub Customizer에서 기본적으로 로드되는 항목을 구성한 것과 같은 방식으로 터미널에서도 수행할 수 있습니다.

/etc/default/grub을 엽니다.

gksu gedit /etc/default/grub

여기서 우리는 라인에 관심이 있습니다.

0을 다운로드할 원하는 항목으로 바꾸십시오. 숫자 대신 항목 이름을 지정할 수도 있습니다. 예를 들면 다음과 같습니다.

GRUB_DEFAULT="Windows 8(로더)(/dev/sda1)"

다음 명령을 사용하여 구성 파일을 열지 않고도 사용 가능한 다운로드 지점을 볼 수 있습니다.

sudo grep 메뉴 항목 /boot/grub/grub.cfg

마지막으로 부팅된 시스템의 부팅을 구성할 수도 있습니다. 이렇게 하려면 다음 행을 추가하십시오.

GRUB_SAVEDEFAULT=참

그리고 GRUB_DEFAULT에서 저장을 지정하십시오.

GRUB_DEFAULT=저장됨

이 방법의 명백한 이점은 업데이트 중에 이 파일에서 정보를 가져오기 때문에 Grub 구성 업데이트 중에 설정이 손실되지 않는다는 것입니다. 이제 구성을 업데이트하고 다음 명령을 사용하여 설정을 저장해 보겠습니다.

이 옵션은 모든 시스템에서 작동하지 않으므로 다른 명령을 사용할 수 있습니다.

grub2-mkconfig -o /boot/grub/grub.cfg

그게 다야. 이제 Grub에서 Windows를 먼저 부팅하는 방법을 알게 되었습니다. 그러나 이 기사에 제공된 정보는 더 넓은 목적으로 사용될 수 있습니다. Windows뿐만 아니라 부팅 순서를 제어해야 하는 다른 여러 시스템에도 유용합니다.

관련 게시물:


원본: GRUB 2: 부트로더 치료
저자: 마얀크 샤르마
발행일: 2015년 9월 10일
번역: A. 파닌
양도일: 2015년 12월 16일

부트로더가 성가시게 할 수 없는 것만큼 성가신 일은 많지 않습니다. 그렇기 때문에 GRUB 2 부트로더의 모든 기능을 최대한 사용하여 작동 상태를 유지하는 방법을 배웁니다.

무엇을 위한 것입니까?

    GRUB 2는 거의 모든 Linux 배포판에서 사용되는 가장 인기 있는 부트로더입니다.

    부트로더는 중요한 소프트웨어 구성 요소이지만 경우에 따라 제대로 작동하지 않을 수 있습니다.

    GRUB 2는 다양한 구성 옵션을 지원하는 확장 가능하고 유연한 부트로더입니다.


GRUB 2라는 Linux 부트로더는 고품질의 유연한 소프트웨어 구성 요소입니다. 이 부트로더가 유일한 Linux 지원 부트로더는 아니지만 가장 인기 있고 잘 알려진 거의 모든 배포판에서 사용됩니다. GRUB 2 부트로더의 기능 프로세스는 두 단계로 나눌 수 있습니다. 먼저 컴퓨터에 설치된 모든 운영 체제의 이름이 포함된 메뉴를 불러오고 그 중 하나를 선택할 수 있습니다. 둘째, 부트 메뉴를 사용하여 해당 커널 기반 운영 체제를 선택하면 Linux 커널을 로드합니다.

분명히 Linux 커널 기반 운영 체제를 사용할 때 부트로더 없이는 할 수 없습니다. 동시에 부트로더는 아마도 Linux 배포판에서 가장 신비한 구성 요소일 것입니다. 이 가이드의 일부로 이 부트로더의 일부 기능을 소개하고 잘못된 기능과 관련된 문제를 해결하는 방법을 알려드립니다.

GRUB 2 부트로더의 가장 중요한 구성 요소는 텍스트 파일 세트와 여러 셸 스크립트입니다. 익숙해질 가치가 있는 이 세트의 첫 번째 구성 요소는 /etc/default/grub 디렉토리에 있습니다. 이것은 GRUB 2 메뉴에서 구성 변수 및 기타 옵션을 설정하는 데 사용할 수 있는 텍스트 파일입니다("사용자 정의 부팅 메뉴 옵션" 참조).

GRUB 2와 관련된 또 다른 중요한 디렉토리는 /etc/grub.d 디렉토리입니다. 이 디렉토리에는 각 메뉴 항목에 대한 설명을 구성하는 모든 스크립트가 포함되어 있습니다. 이러한 스크립트 이름은 두 자리 숫자로 시작해야 합니다. 이 접두사는 스크립트가 실행될 순서와 해당 항목이 GRUB 2 메뉴에 나타나는 순서를 설정하기 위한 것입니다. 00_header 파일을 먼저 읽고 /etc/default /grub 구성 파일. 그런 다음 10_linux 스크립트를 사용하여 현재 시스템의 Linux 커널에 대한 메뉴 항목을 생성합니다. 이 스크립트는 /boot 파티션에서 Linux 커널에 대한 하나의 일반 부팅 메뉴 항목과 동일한 Linux 커널에 대한 하나의 시스템 복구 메뉴 항목을 만듭니다.

그런 다음 스크립트가 실행되어 30_os-prober 및 40_custom 과 같은 다른 운영 체제를 검색합니다. os-prober 스크립트는 다른 하드 디스크 파티션에 있는 다른 커널 및 기타 운영 체제에 대한 메뉴 항목을 만듭니다. 설치된 Linux, Windows, BSD 및 Mac OS X 시스템을 인식할 수 있습니다. os-prober 스크립트가 설치된 배포판으로 인식하기에는 너무 특이한 하드 드라이브의 파티션 구성을 사용하는 경우 다음을 추가할 수 있습니다. 40_custom 스크립트에 대한 해당 배포에 대한 설명(" 사용자 정의 부팅 메뉴 항목" 참조).

GRUB 2에서는 시스템 부팅 옵션을 변경하기 위해 구성 파일을 수동으로 편집할 필요가 없습니다. 대신 grub2-mkconfig 유틸리티를 사용하여 /boot/grub/grub.cfg 구성 파일을 생성할 수 있습니다. 이 유틸리티를 사용하면 /etc/grub.d 디렉토리와 /etc/default/grub 구성 파일에서 스크립트를 구문 분석하여 시스템 부팅 매개변수에 대한 설명을 자동으로 생성할 수 있습니다.

그래픽 모드에서 부트 로더 복원

GRUB 2 부트로더와 관련된 대부분의 문제는 부트 복구 응용 프로그램의 단일 버튼을 눌러 간단히 해결할 수 있습니다. 이 세련되고 간단한 응용 프로그램은 직관적인 사용자 인터페이스를 가지고 있으며 다양한 유형의 디스크 및 디스크 파티션 구성표를 검색하고 인식할 수 있으며 위치를 파악하고 이러한 파티션 내에 설치된 운영 체제를 올바르게 식별할 수도 있습니다. 이 유틸리티는 마스터 부트 레코드(마스터 부트 레코드, MBR)가 있는 일반 컴퓨터와 UEFI 및 GUID 파티션 테이블(GUID 파티션 테이블, GPT)이 있는 새 컴퓨터에서 모두 작동할 수 있습니다.

Boot Repair 유틸리티를 사용하는 가장 쉬운 방법은 Ubuntu 라이브 세션의 일부로 설치하는 것입니다. 손상된 부트로더가 있는 시스템에서 라이브 Ubuntu 배포를 실행하고 먼저 다음 명령으로 적절한 PPA를 추가하여 부트 복구 애플리케이션을 설치합니다.

Sudo add-apt-repository ppa:yannubuntu/부팅 복구

그런 다음 다음 명령을 사용하여 리포지토리 목록을 업데이트합니다.

Sudo apt-get 업데이트

마지막으로 다음 명령을 사용하여 애플리케이션을 설치할 수 있습니다.

Sudo apt-get install -y 부팅 복구

설치 프로세스가 완료되면 응용 프로그램을 시작할 수 있습니다. 여러 버튼으로 구성된 사용자 인터페이스를 표시하기 전에 하드 드라이브를 스캔합니다. 응용 프로그램에서 제안한 작업을 수행하려면 "권장 복구" 버튼을 클릭하기만 하면 됩니다. 그러면 부트로더와 관련된 대부분의 문제가 해결됩니다. 시스템 부트로더를 복원한 후 유틸리티는 기억해야 할 링크를 표시합니다. 이 링크를 클릭하면 파티션을 포함한 드라이브에 대한 자세한 정보와 /etc/default/grub 디렉토리 및 /boot/grub/grub에 있는 파일과 같은 중요한 GRUB 2 구성 파일의 내용을 볼 수 있습니다. . 응용 프로그램이 부트로더를 복원하는 데 실패하면 방문자가 하드 드라이브의 파티션 구성표를 익히고 유용한 팁을 제공할 수 있도록 배포판 포럼에 이 링크를 게시할 수 있습니다.

부트로더 복원

GRUB 2 부트로더와 관련된 문제는 시스템을 다양한 상태로 만들 수 있습니다. 부트로더 메뉴 대신 화면에 표시되는 텍스트는 시스템의 현재 상태를 나타냅니다. 시스템이 grub> 프롬프트로 부팅되지 않으면 GRUB 2 모듈이 로드되었지만 grub.cfg 구성 파일을 로드할 수 없다는 결론을 내릴 수 있습니다. 이 프롬프트는 시스템 부팅을 목표로 하는 많은 작업을 수행할 수 있는 완전한 기능의 부트로더 셸에 표시됩니다. grub resecure> 프롬프트가 표시되면 부트로더가 시스템 부팅 옵션을 설명하는 파일과 해당 모듈을 찾을 수 없다는 결론을 내리기 쉽습니다. 그러나 컴퓨터 화면에 "GRUB"이라는 단어만 표시되는 경우 일반적으로 마스터 부트 레코드에 저장되어 있는 기본 정보조차 부트로더가 찾지 못했다는 실망스러운 결론을 도출할 수 있습니다.

이러한 GRUB 2 문제는 배포판의 Live CD나 GRUB 2 셸을 사용하여 수정할 수 있습니다. 운이 좋고 부트로더에 grub> 인사말이 표시되면 GRUB 2의 내장 셸을 최대한 활용하여 문제를 해결할 수 있습니다. 모든 오류.

다음 명령은 grub> 프롬프트와 grub rescue> 프롬프트 모두에서 작동합니다. set pager=1 명령을 사용하면 텍스트 스크롤 메커니즘을 사용하여 자동 스크롤을 방지할 수 있습니다. ls 명령을 사용하여 유사한 방식으로 보이는 모든 GRUB 2 하드 디스크 파티션을 나열할 수도 있습니다.

그럽> ls (hd0) (hd0,msdos5) (hd0,msdos6) (hd1,msdos1)

보시다시피, 이 명령을 사용하면 파티션 자체에 대한 정보와 함께 하드 디스크 파티션 테이블의 레이아웃에 대한 정보를 표시할 수 있습니다.

또는 각 하드 디스크 파티션에서 ls 명령을 사용하여 루트 파일 시스템이 있는 파티션을 찾을 수 있습니다.

Grub> ls (hd0,5)/ lost+found/ var/ etc/ media/ bin/ initrd.gz boot/ dev/ home/ selinux/ srv/ tmp/ vmlinuz

파티션 이름을 쓸 때 msdos 파티션 유형 식별자를 삭제할 수 있습니다. 또한 파티션 이름 끝에 슬래시를 생략하고 ls (hd0,5)와 같은 명령을 실행하면 파일 시스템 유형, 전체 크기 및 마지막으로 수정한 시간입니다. 하드 드라이브에 여러 루트 파티션이 있는 경우 cat 명령을 사용하여 /etc/issue 파일의 내용을 읽고 같은 방식으로 배포를 식별할 수 있습니다: cat (hd0,5)/etc/issue .

(hd0,5) 파티션에서 올바른 루트 파일 시스템을 찾았다고 가정하면 이 파일 시스템에 /boot/grub 디렉토리와 원하는 vmlinuz-3.13.0-24-generic과 같은 Linux 커널 이미지가 포함되어 있는지 확인해야 합니다. 다운로드. 이제 시스템을 부팅하려면 다음 명령을 입력하기만 하면 됩니다.

grub> set root=(hd0,5) grub> linux /boot/vmlinuz-3.13.0-24-generic root=/dev/sda5 grub> initrd /boot/initrd.img-3.13.0-24-generic

첫 번째 명령은 부팅을 위해 배포 파일이 있는 하드 디스크 파티션에 대한 정보를 GRUB 2 부트로더에 알려줍니다. 두 번째 명령은 지정된 하드 디스크 파티션 내 커널 이미지 파일의 위치에 대한 정보와 루트 파일 시스템의 위치에 대한 정보를 전달합니다. 마지막 줄을 사용하면 초기 디스크 이미지 파일의 위치를 ​​지정할 수 있습니다. 이 파일의 내용은 메모리에 저장되고 커널 부팅 프로세스 중에 사용됩니다. 자동 완성 기능을 사용하면 커널 파일 이름과 초기 디스크 이미지를 입력할 때 많은 시간과 노력을 절약할 수 있습니다.

이 줄을 입력하면 다음 grub> 인사말 뒤에 boot 명령으로 끝나야 하며, 이는 GRUB 2가 지정된 운영 체제를 부팅하게 합니다.

grub 구조> 인사말을 만나면 단계가 약간 달라집니다. 시스템 로더가 필요한 모듈을 감지하고 로드할 수 없었으므로 수동으로 로드해야 합니다.

grub 구조> root=(hd0,5) grub 구조 설정> insmod (hd0,5)/boot/grub/normal.mod grub 구조> 일반 grub> insmod Linux

분명히 이전과 같이 ls 명령을 성공적으로 사용하여 Linux 루트 파티션을 찾은 후에는 set 명령으로 이 파티션을 표시해야 합니다. 다음으로, 일반 모듈을 로드해야 합니다. 그 후에 grub> 인사말과 함께 표준 모드로 돌아갑니다. 다음 명령을 사용하면 Linux 모듈이 자동으로 로드되지 않은 경우 로드할 수 있습니다. 이 모듈을 로드한 후 시스템 로더에 커널 이미지 파일과 초기 디스크 이미지의 위치를 ​​알리고 boot 명령을 사용하여 배포 부팅을 시작할 수 있습니다.

배포를 성공적으로 다운로드한 후 다음 명령을 사용하여 GRUB 2 구성 파일을 다시 생성해야 한다는 점을 잊지 마십시오.

Grub-mkconfig -o /boot/grub/grub.cfg

또한 다음 명령을 사용하여 부트로더 사본을 MBR에 설치해야 합니다.

GRUB 2 및 UEFI

UEFI 펌웨어가 있는 머신(즉, 지난 몇 년 동안 판매된 거의 모든 머신)은 GRUB 2 부트로더의 문제 진단 프로세스에 새로운 차원의 복잡성을 추가했습니다. UEFI 펌웨어를 사용하는 경우 동일한 복원 절차와 크게 다르지 않습니다. UEFI 펌웨어가 없는 시스템의 부트로더에서 새 펌웨어 버전은 부트로더 복원 프로세스의 다른 결과를 초래하는 다양한 변경 사항을 도입합니다.

UEFI 기반 시스템에서는 MBR에 아무것도 설치할 필요가 없습니다. 대신 EFI 시스템 파티션(ESP)에 EFI 지원 Linux 부트로더를 설치하고 Linux의 efibootmgr 또는 Windows의 bcdedit와 같은 도구를 사용하여 해당 부트로더를 기본값으로 선택해야 합니다.

현재 GRUB 2 부트로더는 널리 사용되는 Linux 배포판의 설치 프로세스 중에 올바르게 설치되어야 합니다. 그러면 후자가 Windows 8과 성공적으로 공존할 수 있습니다. 그러나 결과적으로 작동하지 않는 부트로더가 발생하는 경우 Linux 배포판의 라이브 이미지를 사용하여 시스템을 작업 용량으로 복원할 수 있습니다. 라이브 배포 이미지를 부팅할 때 UEFI 모드에서 부팅하는지 확인해야 합니다. 컴퓨터 부팅 메뉴에는 일반 모드와 UEFI 모드에서 부팅하기 위한 각 이동식 미디어에 대한 두 가지 항목이 포함되어야 합니다. 후자의 모드를 사용하여 /sys/firmware/efi/ 디렉토리의 파일을 통해 EFI 변수에 액세스합니다.

라이브 환경에서 이 가이드에 설명된 대로 실패한 배포의 루트 파일 시스템을 마운트합니다. EFI 시스템 파티션(ESP)도 마운트해야 합니다. 주어진 파티션이 장치 파일 /dev/sda1 에 해당한다고 가정하면 다음 명령을 사용하여 이 파티션을 마운트할 수 있습니다.

sudo 마운트 /dev/sda1 /mnt/boot/efi

그런 다음 이 가이드에 설명된 대로 실패한 배포의 루트 파일 시스템으로 chroot 환경을 만들기 전에 modprobe efivars 명령을 사용하여 efivars 커널 모듈을 로드해야 합니다.

이제 Fedora 배포를 사용하는 경우 다음 명령을 사용하여 부트로더를 다시 설치할 수 있습니다.

Yum 재설치 grub2-efi shim

그런 다음 명령을 실행하여 새 부트로더 구성 파일을 생성해야 합니다.

Grub2-mkconfig -o /boot/grub2/grub.cfg

Ubuntu 배포 사용자는 다음 명령을 사용하여 동일한 작업을 수행할 수 있습니다.

apt-get install --grub-efi-amd64 재설치

부트로더를 복원한 후 chroot 환경을 종료하고 마운트된 모든 하드 디스크 파티션을 마운트 해제하고 GRUB 2 메뉴로 이동하여 컴퓨터를 다시 시작해야 합니다.

/etc/grub.d 디렉토리에서 스크립트를 비활성화하려면 chmod -x /etc/grub.d/20_memtest86+ 명령과 유사한 명령을 사용하여 실행 비트를 제거하면 됩니다. 부팅 메뉴에서 "테스트" 줄

친구, 내 GRUB는 어디에 있습니까?

GRUB 2 부트로더의 장점은 필요할 때마다 다시 설치할 수 있다는 것입니다. 따라서 예를 들어 Windows에서 자체 부트로더로 교체한 후 GRUB 2 부트로더를 분실한 경우 라이브 환경에서 몇 가지 작업을 수행하여 GRUB 2를 복원할 수 있습니다. /dev/sda5 장치 파일이 나타내는 하드 디스크 파티션에 배포판을 설치했다고 가정하고 다음 명령을 사용하여 배포판의 루트 파일 시스템을 마운트할 디렉터리를 먼저 생성하여 GRUB 2 부트로더를 다시 설치할 수 있습니다.

sudo mkdir -p /mnt/distro

그런 다음 다음 명령을 사용하여 이 파티션에서 파일 시스템을 마운트해야 합니다.

마운트 /dev/sda5 /mnt/distro

그런 다음 다음 명령을 사용하여 GRUB 2 부트로더를 다시 설치할 수 있습니다.

Grub2-install --root-directory=/mnt/distro /dev/sda

이 명령은 설치된 Linux 배포판의 파일 시스템을 포함하는 /dev/sda 장치의 마스터 부트 레코드 영역과 grubenv 및 device.map과 같은 GRUB 2 부트로더 파일을 덮어씁니다.

여러 배포판이 설치된 컴퓨터를 운영할 때 자주 발생하는 또 다른 문제가 있습니다. 새 Linux 배포판을 설치할 때 해당 부트로더는 이미 설치된 배포판에 대한 정보를 검색해야 합니다. 이러한 정보를 검색하지 못하는 경우 최신 설치된 배포판을 다운로드하고 다음 명령을 실행하기만 하면 됩니다.

Grub2-mkconfig

이 명령을 실행하기 전에 부트 메뉴에 표시되지 않는 설치된 배포판의 루트 파일 시스템이 있는 파티션이 마운트되어 있는지 확인해야 합니다. 부팅 메뉴에 추가하려는 배포가 별도의 하드 디스크 파티션에 있는 /root 및 /home 파일 시스템에서 작동하는 경우 grub2-mkconfig 명령을 실행하기 전에 /root 파일 시스템만 마운트해야 합니다.

GRUB 2 부트로더가 대부분의 배포판을 감지할 수 있지만 Ubuntu 배포판을 실행할 때 Fedora 배포판 항목을 부트로더 메뉴에 추가하려면 한 단계가 더 필요합니다. Fedora 배포판을 설치할 때 기본 설정을 사용했다면 Fedora 설치 프로그램이 LVM 파티션을 생성합니다. 이 경우 Fedora 배포판을 부팅 메뉴에 추가하기 위해 GRUB 2 부트로더와 함께 제공되는 os-prober 스크립트를 호출하기 전에 먼저 유사한 명령을 사용하여 배포판의 소프트웨어 패키지 관리 시스템을 사용하여 lvm2 드라이버를 설치해야 합니다.

sudo apt-get install lvm2

빠른 수정

grub2-install 명령을 실행해도 긍정적인 변화가 없고 Linux 배포판을 부팅할 수 없으면 부트로더를 완전히 다시 설치하고 재구성해야 합니다. 이 작업을 수행하려면 라이브 환경의 루트 디렉터리를 복원하려는 설치된 Linux 시스템의 루트 디렉터리로 임시로 변경할 수 있는 유용한 chroot 유틸리티를 사용할 수 있습니다. 이 용도로 chroot 유틸리티가 있는 모든 Linux 배포판의 Live CD를 사용할 수 있습니다. 그러나 하드 드라이브에 설치된 배포판과 동일한 CPU 아키텍처에 대해 Live CD를 사용하고 있는지 확인해야 합니다. 따라서 chroot 유틸리티를 사용하여 설치된 64비트 시스템을 복구하려면 64비트 시스템용 Live CD가 필요합니다.

Live 환경을 부팅한 후 가장 먼저 확인해야 할 것은 시스템의 하드 드라이브 파티션입니다. fdisk -l 명령을 사용하여 하드 디스크의 모든 파티션을 나열하고 GRUB 2 부트로더가 설치되어 있고 복원하려는 파티션 번호를 찾으십시오.

장치 파일 /dev/sda5 로 표시되는 하드 디스크 파티션에 설치된 배포판의 부트 로더를 복원해야 한다고 가정해 봅시다. 터미널 에뮬레이터를 열고 이 파티션을 마운트합니다.

sudo 마운트 /dev/sda5 /mnt

이제 컴퓨터에 설치된 다른 운영 체제를 올바르게 감지하기 위해 GRUB 2 부트로더에서 사용할 수 있어야 하는 디렉토리를 마운트해야 합니다.

$ sudo 마운트 --bind /dev /mnt/dev $ sudo 마운트 --bind /dev/pts /mnt/dev/pts $ sudo 마운트 --bind /proc /mnt/proc $ sudo 마운트 --bind /sys /mnt /sys

이제 라이브 환경을 종료하고 chroot 유틸리티를 사용하여 /dev/sda5 장치 파일이 나타내는 파티션에 설치된 배포 환경으로 전환할 수 있습니다.

$ sudo chroot /mnt /bin/bash

모든 것이 GRUB 2 부트로더를 설치, 확인 및 업데이트할 준비가 되었습니다. 이전과 마찬가지로 부트로더를 다시 설치하려면 다음 명령을 사용하십시오.

sudo grub2-install /dev/sda

grub2-install 명령은 grub.cfg 구성 파일에 영향을 미치지 않으므로 다음 명령을 사용하여 수동으로 생성해야 합니다.

sudo grub-mkconfig -o /boot/grub/grub.cfg

이 일련의 명령은 부트로더 문제를 해결하는 데 도움이 됩니다. 이제 컴퓨터에 설치된 모든 운영 체제 및 배포판 목록과 함께 GRUB 2 부트로더의 새 복사본이 생성됩니다. 컴퓨터를 재부팅하기 전에 chroot 환경을 종료하고 사용된 모든 파일 시스템을 다음 순서로 마운트 해제해야 합니다.

$ exit $ sudo umount /mnt/sys $ sudo umount /mnt/proc $ sudo umount /mnt/dev/pts $ sudo umount /mnt/dev $ sudo umount /mnt

그 후에는 컴퓨터를 안전하게 재부팅할 수 있습니다. 이 컴퓨터는 다시 완전한 제어 하에 있는 GRUB 2 부트로더의 제어 하에 있어야 합니다!

사용자 정의 부팅 메뉴 옵션

GRUB 2 부트로더는 많은 수의 구성 변수를 사용합니다. 이 섹션에서는 /etc/default/grub 구성 파일의 내용을 검토할 때 수정할 수 있는 일부 변수에 대해 설명합니다. GRUB_DEFAULT 변수를 사용하면 기본적으로 선택되는 부팅 메뉴 항목을 지정할 수 있습니다. 그 값은 첫 번째 메뉴 항목에 해당하는 숫자 0과 컴퓨터의 마지막 부팅 중에 사용된 메뉴 항목을 자동으로 선택하는 문자열 "저장됨"과 같은 숫자가 될 수 있습니다. GRUB_TIMEOUT 변수를 사용하면 기본 메뉴 항목을 사용하여 부팅하기 전에 대기할 시간을 설정할 수 있고 GRUB_CMDLINE_LINUX 변수를 사용하면 해당 부팅 메뉴 항목을 사용할 때 각 Linux 커널에 전달할 옵션 목록을 설정할 수 있습니다. .

GRUB_DISABLE_RECOVERY 변수가 true 로 설정되면 시스템 복구를 위한 부팅 메뉴 항목이 생성되지 않습니다. 이러한 항목을 사용하면 사용 가능한 명령줄 인터페이스 도구를 사용하여 시스템을 복원할 수 있는 단일 사용자 모드에서 배포판을 부팅할 수 있습니다. 또 다른 유용한 변수는 부팅 메뉴가 표시될 때 설정할 화면 해상도를 설정할 수 있는 GRUB_GFXMODE 변수입니다. 이 변수는 그래픽 카드가 지원하는 해상도에 대한 설명으로 설정할 수 있습니다.

사용자 정의 부팅 메뉴 항목

부트로더 메뉴에 항목을 추가하려면 40_custom 이라는 스크립트에 적절한 스탠자를 추가해야 합니다. 예를 들어, 이 부팅 메뉴 항목을 사용하여 이동식 USB 드라이브에 설치된 Linux 배포판을 부팅할 수 있습니다. 이동식 USB 드라이브의 배포 파티션이 /dev/sdb1 이고 vmlinuz 커널 이미지 파일과 initrd 파일이 루트 디렉터리(/)의 하위 디렉터리에 있다고 가정하면 40_custom 스크립트 파일에 다음 스탠자를 추가해야 합니다.

메뉴 항목 "Linux on USB"( set root=(hd1,1) linux /vmlinuz root=/dev/sdb1 ro 조용히 in splashitrd /initrd.img )

더 나은 호환성을 위해 다음과 같이 장치 및 파티션 ID 대신 하드 디스크 파티션의 UUID를 사용할 수 있습니다.

루트=UUID=54f22dd7-eabe 설정

sudo blkid 명령을 사용하여 시스템에 연결된 하드 드라이브 및 파티션의 모든 UUID를 가져옵니다. 유사하게, 식별된 os-prober 스크립트에 해당하는 부팅 메뉴에 항목을 추가할 수 있지만, 물론 각 배포판이 설치된 드라이브와 커널 이미지 파일의 경로를 알고 있는 경우 하드 드라이브에 설치된 배포판 위치 및 초기 파일 시스템의 이미지입니다.

지금까지 거의 모든 사람들이 UEFI 기술에 대해 이미 들었습니다. 그것이 무엇이며 왜 필요한지에 대해서는 이야기하지 않겠습니다. 오늘은 전체 UEFI를 지원하는 이중 부팅 시스템을 설치하는 가장 간단한 시나리오를 설명하고 rEFInd 부팅 관리자를 별도로 설치 및 구성하는 것도 고려합니다. 아마도 비슷한 매뉴얼과 가이드를 이미 보았을 것입니다. 그러나 저는 우리가 무엇을 할 것인지와 그 이유를 매우 이해하기 쉬운 방식으로 전달하려고 노력할 것입니다. 다른 매뉴얼에서는 도박꾼의 "마법"을 보고 그것을 반복하려고 하며 종종 기본적인 실수를 범합니다. 이 주제가 흥미로운 사람 - 나는 고양이에게 묻습니다.

일반적으로 UEFI는 부팅 프로세스를 복잡하게 하기보다는 단순화하도록 설계되었습니다. 예를 들어 이 기술을 사용하면 컴퓨터가 GRUB/LILO/etc 계층 없이 OS를 부팅할 수 있으며 UEFI 자체가 부트로더 역할을 할 수 있습니다. 그러나 이 방법에는 단점이 있습니다. 예를 들어 커널을 업데이트한 후 수정해야 하고 물론 스크립트를 작성할 수 있지만 일반적으로 이것이 grub2-efi가 하는 일입니다.

따라서 우리의 행동에 대한 대략적인 목록을 작성해 보겠습니다. 일부는 그것을 읽고 이미 업무에 착수하기에 충분할 것입니다. 사실 모든 것이 여기에 있을 것이다. 안건. 다섯 번째와 여섯 번째 항목은 선택 사항입니다.

  1. Windows 10(8/8.1) 이미지를 디스크/플래시 드라이브에 굽습니다.
  2. 디스크의 일부에 Windows 10 설치.
  3. EFI를 지원하는 Linux 배포판의 이미지(대부분)를 디스크/플래시 드라이브에 굽습니다.
  4. 나머지 디스크에 Linux 배포판을 설치합니다.
  5. rEFInd 설치 및 구성
  6. GRUB 제거 및 rEFInd로의 전체 전환.

언뜻보기에 모든 것이 매우 간단하고 4 가지 기본 요점이 있지만 엄청난 수의 뉘앙스가 있습니다.

모든 단계에서 실수가 발생합니다. Legacy-bios 모드에 들어가고, 잘못된 부팅 파티션을 표시하고, 수행 중인 작업을 이해하지 못하는 등의 오류가 발생합니다. 궁극적으로 이 모든 것이 포럼, 대화방 등에서 많은 고통과 고통으로 이어집니다. 사실, 모든 것이 비현실적으로 간단합니다. 각 단계에서 수행하는 작업을 이해하고 자신을 확인하기만 하면 됩니다.

먼저 작은 이론

UEFI는 특수 ESP 파티션을 하나만 봅니다. 일반적으로 크기는 100-200MB이고 FAT32(때로는 FAT16)로 포맷되어 있으며 이름이 Boot, Microsoft, Fedora, Ubuntu 등인 폴더가 포함되어 있습니다. 충분한 운영 체제를 시도했지만 이 파티션을 포맷하지 않았다면 상당한 수의 폴더가 거기에 축적되었을 수 있습니다. 예를 들어, 2개의 라이브 축이 있고 약 6개의 폴더가 있습니다.

아름다운 테마 사용

이것으로 모든 것이 간단합니다. 구성의 마지막 줄 바로 위는 테마의 .conf 파일을 가리킵니다. 테마 자체를 /boot/efi/EFI/refind/themes 폴더에 넣는 것이 좋습니다. 기본적으로 존재하지 않습니다. mkdir 로 생성하십시오.
테마 디렉토리로 이동하여 git clone https://github.com/munlik/refind-theme-regular.git 을 작성합니다. 구성에서 include theme/refind-theme-regular/theme.conf 행을 작성하십시오.
다른 주제는 다음에서 볼 수 있습니다. 웹사이트.

또한 자세한 설치 프로세스, 구성 미세 조정을 위한 매개변수 등을 볼 수 있습니다.

아마 그게 다야. 완전한 UEFI 지원으로 원하는 OS를 선택할 수 있는 아름다운 부팅 관리자가 있습니다. rEFInd를 설치한 항목이 가장 복잡하므로 선택사항인 grub2-efi로 대부분 충분합니다.

마지막으로 제 짧은 비디오:


확실히 텍스트에 상당한 수의 오류가 들어왔습니다. 이에 대해 PM을 보내주시면 기쁠 것입니다.

이 기사는 6개월 전에 작성했어야 했지만 여전히 아무 것도 없습니다.

UEFI와 Windows가 사전 설치된 새 노트북에 두 번째 OS의 Linux OS를 설치하는 방법에 대해 설명합니다. 일반적인 설치가 원하는 결과를 제공하지 않는 경우, 즉 Windows "옆에" Linux를 올바르게 설치한 후 Windows만 여전히 로드됩니다.

우선 이미 전통이 된 것처럼 모든 점을 Y 위에 놓을 것입니다.

문제.

우리는 노트북을 가지고 (데스크톱일 수도 있지만 작성자는 노트북만 다루었습니다), UEFI를 사용하고 Windows가 사전 설치되어 있습니다. (지금은 이미 10이지만 대부분 8.1임). 바로 이 노트북에 Linux OS를 설치하고 싶습니다. (우리는 Linux Mint에 대해 이야기할 것이지만 나머지는 상황이 비슷해야 합니다)두 번째 운영 체제 (듀얼 부팅: 사용자가 선택한 Windows와 Linux를 모두 사용할 수 있는 기능). 일반적인 방법으로 Linux 설치 * (언젠가 나도 쓸 것이지만 인터넷에는 비슷한 지침이 많이 있습니다), 재부팅하고 문제 자체를 찾으십시오.

완고한 Windows는 항상 로드되며 Grub이 없으며 일종의 이중 부팅에 대한 힌트가 아닙니다.

*사실, UEFI가 있는 컴퓨터에 Linux를 설치하는 데에는 최소한 두 가지 중요한 기능이 있습니다. 1) 바로 이 UEFI에 설치하기 전에 보안 부팅 옵션 - Security Boot Control(또는 UEFI 버전에 따라 이와 유사한 것)을 비활성화해야 합니다. 그렇지 않으면 Linux 배포가 있는 미디어를 시작할 수 없습니다. 2) 부트로더(Grub)는 BIOS 시대에 sda뿐만 아니라 일반적으로 sda2라고 하는 EFI\ESP 파티션에 설치해야 합니다. 이 옵션은 일반적으로 디스크 파티셔닝 단계 주변의 Linux 설치 프로세스 중에 조정됩니다.

운이 좋은 사람들을 위한 빠른 수정.

먼저 UEFI를 입력하십시오(Windows를 시작하기 전에 F2 또는 DEL 버튼). 여기에서 다운로드 목록이 있는 섹션을 찾습니다. 다음 요소를 포함해야 합니다. 최소한 하드 드라이브 및 윈도우 로더. 후자는 일반적으로 다운로드 우선 순위가 가장 높습니다. 다음과 같은 것이 있으면 주어진 목록의 나머지 요소를 살펴보십시오. 우분투 로더(또는 설치하려는 Linux 배포판에 따라 다른 것), 그런 다음 미소를 지으며 손을 흔들고 가장 높은 우선 순위로 설정하고 재부팅합니다. 재부팅 후 오랫동안 기다려온 Grub 인터페이스가 부팅할 OS 선택과 함께 나타나야 합니다.

다른 "로더"가 없으면 나처럼 운이 좋지 않습니다. 랩톱이 Microsoft에 영혼을 팔았고 다른 로더를보고 싶지 않습니다. 또는 Grub 부트로더가 잘못 설치되었을 가능성이 훨씬 낮습니다. (이전 섹션의 메모를 읽고 Feng Shui에 따라 모든 작업을 수행하십시오).

수학적 부분과 필요한 지식.

UEFI 및 BIOS가 무엇인지, 왜 필요한지 설명합니다. MBR과 GPT의 차이점과 그 의미에 대해 자세히 설명합니다. 우리는 반복하지 않을 것입니다. 이 정보는 이 기사를 이해하기에 충분해야 합니다.

또한 독자는 Linux OS 설치에 대한 기본 지식이 필요합니다. 우리는 그것을 어딘가에서 읽었습니다.

또한 이 OS, 특히 Midnight Commander(MC)를 사용한 파일 시스템 관리에 대한 기본 기술이 필요합니다. 주요 기능 및 명령 개요) 및 Linux 콘솔에서 작업하는 기본 사항( 초보자를 위한 좋은 안내서인 Ubuntu와 유사한 Linux용).

MC를 설치하고(동일한 Mint Linux에서는 기본적으로 설치되어 있지 않음), 루트(관리자)로 실행하고, 텍스트 파일을 변경하고, 콘솔에서 몇 가지 간단한 명령을 더 실행해야 합니다.

이 모든 것이 귀하의 권한 범위 내에 있고 위의 지침이 없다면 저는 귀하를 기쁘게 생각합니다. 계속 진행할 수 있습니다. 이 지침은 해당 지침에서 다루는 문제를 방지하기 위해 만일의 경우에 대비하여 제공됩니다.

해결책.

전체 알고리즘은 Linux Mint OS용으로 제작되었습니다. 다른 Linux에서 (Ubuntu 또는 Debian 기반 아님)디렉토리 이름과 명령은 약간 다를 수 있습니다.

  1. 첫 번째 설치 단계 중 하나에서 적절한 옵션을 사용하여 Windows 옆에 Linux를 설치하거나 (이 옵션을 사용할 수 없는 경우)하드 드라이브를 올바르게 파티션하기 (별도의 기사가 필요하며 우분투 위키에서도 이에 대해 이미 작성했습니다).
  2. 설치 후 컴퓨터를 다시 시작하지 마십시오. 재부팅한 경우 - 괜찮습니다. live-cd\usb\dvd에서 다시 부팅하면 됩니다. (결국 Linux가 시작되지 않습니까?).
  3. 만일의 경우를 대비하여 콘솔에서 명령을 실행하십시오. sudo 업데이트 그럽(메시지가 표시되면 빈 암호를 입력하여).
  4. 콘솔\터미널 또는 기타 수단 열기 (예: Ubuntu\Linux Mint의 프로그램 관리자 사용) mc를 설치합니다. 콘솔에서 (apt가 있는 시스템의 경우)다음과 같이 수행됩니다. sudo apt-get 설치 mc(그 후에는 비밀번호를 입력해야 합니다. 라이브 모드에는 비밀번호가 없음을 알려드립니다. Enter 키를 누르고 설치에 동의하면 됩니다.).
  5. 루트로 mc를 실행합니다. sudo mc (그리고 다시 묻는 경우 빈 암호).
  6. 파일 시스템에서 다음 디렉토리를 찾으십시오. /boot/efi/EFI.
  7. 디렉토리 이름 바꾸기 (MC에서 Ctrl+F6 조합) Microsoft를 Microsoft2와 같은 다른 것으로 전환합니다.
  8. Microsoft라는 새 디렉터리를 만듭니다. (F7 키).
  9. 새로 생성된 Microsoft 디렉터리로 이동하여 부분적으로(아래 참조) 그 안에 이전 Microsoft와 유사한 폴더 계층을 만듭니다. (이름이 바뀐 것). 제 경우에는 다음과 같은 폴더 구조를 가졌습니다. /신병/, 폴더 및 파일 묶음 bootmgfw.efi그들 옆에. 이 파일까지 폴더 구조를 정확히 다시 생성해야 합니다. 저것들. 그의 옆에 있는 모든 것이 필요하지 않지만 그의 앞에 있는 모든 것이 (즉, 인접한 상위 폴더도 필요하지 않음)새 Microsoft 폴더에서 다시 만드십시오. 제 경우에는 부트 폴더만 생성해야 했고, 새 디렉토리의 최종 경로는 다음과 같이 나왔습니다. /boot/efi/EFI/마이크로소프트/부트 .
  10. 6단계의 디렉토리에서 Linux 배포판의 이름이 있는 폴더를 찾습니다. 이 경우에는 다음과 같습니다. 우분투. 복사 (만일을 대비하여 원본 파일과 우분투 폴더는 그대로 둡니다. 간섭하지 않습니다)주어진 폴더에서 이전 단계에서 생성된 최종 디렉토리까지의 모든 파일 (안에 /boot/efi/EFI/마이크로소프트/부트) .
  11. 결과 파일 시스템에서 (9단계에서 생성한 디렉토리와 10단계에서 파일을 이동한 디렉토리)파일 찾기 grubx.efi또는 grubx64.efi (설치된 Linux의 비트 수에 따라 그 중 하나만 있을 수 있음). 이름 바꾸기 bootmgfw.efi .
  12. 파일 찾기 /boot/grub/grub.cfg. 편집을 위해 엽니다. (F4 키). 그 안에서 우리는 찾습니다 (F7 키는 텍스트 검색 양식을 호출합니다)"chainloader"로 시작하는 문자열의 컨텍스트에서 "Microsoft"라는 단어를 사용하고 이 단어를 바꿉니다. (한 번만 발생해야 하며 "chainloader"와 일치하므로 잘못될 수 없습니다.) 7단계에서 Microsoft로 이름을 바꾼 디렉토리 이름으로 (예: 이 예에서는 Microsoft2에서). 파일에 변경 사항 저장 (키 F2 - 저장).

그게 다야. 굉장히 복잡해 보이지만 차근차근 따라하시면 (최대한 자세하게!), 그러면 모든 것이 문제 없이 잘 될 것입니다. 그리고 재부팅 후 하드디스크에서 부팅하면 (라이브 미디어가 아님) OS 선택 메뉴가 있는 탐나는 화면을 볼 수 있습니다. 만세, 동지들!

우리가 방금 무엇을 했습니까?

내가 설명한다. 보시다시피 제조사는 (그리고 내 경우에는 Acer가 있습니다)앞서 말했듯이 노트북은 작은 소프트웨어에 영혼을 팔았습니다. 즉, UEFI 수준의 랩톱은 파일 이외의 다른 것을로드하고 싶지 않습니다. /boot/efi/EFI/마이크로소프트/부트 bootmgfw.efi, Windows 부트로더가 포함되어 있습니다. 이런게 차별이야!

파일을 Grabow의 파일로 교체하여 랩톱과 Microsoft를 모두 속였습니다. 사악하고 완고한 Windows 대신 우리가 가장 좋아하는 Grub을 강제로 로드합니다.

다음에 무엇을할지? + 업데이트에 대한 예방 조치.

살고 행복합니다. 그러나 정확히 grub이 업데이트하기를 원할 때까지. 또는 죄를 짓고 Windows를 업데이트하고 싶지 않습니다.

첫 번째 Grub 업데이트에 대해.

사실 업데이트 후 Grub은 update-grub 명령을 실행합니다. 이 명령은 우리가 만든 폴더 계층에서 Windows 부트 로더를 찾지 못합니다. (나에게 알려지지 않은 이유로). 따라서 grub을 업데이트한 다음 PC를 재부팅하면 OS 선택 목록에 유해한 Windows가 없습니다. 이것은 혼란스럽게 해결되지만 알고리즘은 익숙합니다.

  1. hornbeam과 Linux의 파일이 있는 Microsoft 폴더의 이름을 MicrosoftLinux와 같은 임시 이름으로 바꿉니다.
  2. Windows 부트로더가 포함된 오래된 Microsoft2 폴더의 이름을 단순히 Microsoft로 변경하여 원래 상태로 되돌립니다.
  3. 명령을 실행 sudo 업데이트 그럽.
  4. 폴더 이름을 반환하여 솔루션 모양을 제공합니다. 저것들. MicrosoftLinux를 다시 Microsoft로, Microsoft를 다시 Microsoft2로 이름을 바꿉니다.
  5. 우리는 솔루션에서 12 단계를 반복하고 컴퓨터가 부팅 될 때 OS 목록에 Windows가 나타나는 것을 다시 기뻐합니다.

예, 지금은 그것뿐입니다. 이 사업은 자동화될 것이지만 지금까지 나는 매우 게으르다. 결국, grub은 자주 업데이트되지 않습니다. 예, 솔루션에 대한 수동 설명은 결코 불필요하지 않으며 자동화에 유용할 것입니다.

이제 알아야 할 사항에 대해 Windows를 업데이트하려는 경우 .

대부분의 Windows 업데이트는 다시 시작해야 합니다. 이러한 재부팅 후 Windows 8.1이 예상대로 /boot/EFI/Microsoft에서 부트로더를 찾지 못했기 때문에 부팅에 실패했습니다. (같은 장소에서 우리는 지금 Linux를 살고 있습니다). 따라서 Windows 업데이트를 설치하기 전에 부트로더를 제자리에 되돌려 놓아야 합니다. 저것들. 이 예에서는 Microsoft 폴더로 이동합니다. 예, 그 후에는 Windows만 다시 로드되기 때문에 전체 문제가 반환되지만 결국 솔루션에서 알고리즘을 두 번째로 실행하는 것이 더 쉬울 것입니다.;)

  • 세르게이 사벤코프

    어딘가에 서두르는 것처럼 일종의 "부족한"리뷰 ...