우분투 부팅 파일을 먹은 Windows 7을 설치했습니다. 컴퓨터를 시작할 때 우분투 부팅 옵션을 제공하지 않고 Windows로 바로 이동합니다.
우분투를 어떻게 다시받을 수 있습니까?
우분투 부팅 파일을 먹은 Windows 7을 설치했습니다. 컴퓨터를 시작할 때 우분투 부팅 옵션을 제공하지 않고 Windows로 바로 이동합니다.
우분투를 어떻게 다시받을 수 있습니까?
답변:
Windows를 설치할 때 Windows는 시스템에서 유일한 운영 체제 (OS)이거나 최소한 Linux를 고려하지 않는 것으로 가정합니다. 따라서 GRUB을 자체 부트 로더로 대체합니다. Windows 부트 로더를 GRUB으로 바꾸십시오. GRUB 명령이나 그와 같은 것들을 사용하여 GRUB을 대체하는 다양한 지침을 보았지만 가장 쉬운 방법은 단순히 chroot
설치하고 실행하는 것 update-grub
입니다. chroot
여기저기서 리디렉션하는 대신 실제 설치 작업을 할 수 있기 때문에 좋습니다. 정말 깨끗합니다.
방법은 다음과 같습니다.
기본 파티션의 파티션 번호를 결정하십시오. sudo fdisk -l
, sudo blkid
(이미 라이브 세션에 기본적으로 설치되어 있어야합니다) 또는 GParted와 여기에 당신을 도울 수 있습니다. 이 답변에서이 값은이라고 가정 /dev/sda2
하지만 시스템에 올바른 파티션 번호를 사용해야합니다!
주 파티션은 LVM에있는 경우 , 장치 대신에 위치하게 될 /dev/mapper/
가능성이 높습니다, /dev/mapper/{volume}--{os}-root
어디 {volume}
에서 LVM 볼륨 이름이며 {os}
운영 시스템입니다. ls /dev/mapper
정확한 이름으로 실행 하십시오.
파티션을 마운트하십시오 :
sudo mount /dev/sda2 /mnt #Replace sda2 with the partition from step 2
별도의 경우 /boot
, /var
또는 /usr
파티션을 반복 이러한 파티션을 마운트 2, 3 단계 /mnt/boot
, /mnt/var
그리고 /mnt/usr
각각. 예를 들어
sudo mount /dev/sdXW /mnt/boot
sudo mount /dev/sdXY /mnt/var
sudo mount /dev/sdXZ /mnt/usr
대체 sdXW
, sdXY
및 sdXZ
각 파티션 번호.
다른 필요한 것들을 묶습니다 :
for i in /sys /proc /run /dev; do sudo mount --bind "$i" "/mnt$i"; done
Ubuntu가 EFI 모드로 설치된 경우 ( 확실하지 않은 경우이 답변 참조 ) sudo fdisk -l | grep -i efi
또는 GParted를 사용 하여 EFI 파티션을 찾으십시오. 라벨은 EFI
입니다. sdXY
시스템의 실제 파티션 번호로 대체하여이 파티션을 마운트 하십시오.
sudo mount /dev/sdXY /mnt/boot/efi
chroot
우분투 설치에 :
sudo chroot /mnt
이제 라이브 세션이 아닌 설치 중이며 루트로 실행 중입니다. 그룹 업데이트 :
update-grub
오류가 발생하거나 7 단계로 이동해도 문제가 해결되지 않으면 8 단계로 이동하십시오 (그렇지 않으면 선택 사항입니다).
상황에 따라 grub을 다시 설치해야 할 수도 있습니다.
grub-install /dev/sda
update-grub # In order to find and add windows to grub menu.
Ubuntu가 EFI 모드로 설치되어 있고 EFI 파티션 UUID가 변경된 경우에서 업데이트해야합니다 /etc/fstab
. 그것을 비교하십시오 :
blkid | grep -i efi
grep -i efi /etc/fstab
현재 EFI 파티션 UUID (에서 blkid
)가에서와 다를 경우 현재 UUID로 /etc/fstab
업데이트하십시오 /etc/fstab
.
모든 것이 오류없이 작동하면 모든 준비가 된 것입니다.
exit
sudo reboot
이 시점에서 정상적으로 부팅 할 수 있어야합니다.
정상적으로 부팅 할 수없고 오류 메시지가 없어 8 단계를 수행하지 않은 경우 8 단계로 다시 시도하십시오.
grub-efi-amd64
수 있으며 보안 부팅을 사용하는 경우 사용하고 싶습니다 grub-install --uefi-secure-boot
. 자세한 내용은 superuser.com/a/376471/197980
Windows 설치 프로그램은 시스템의 다른 OS를 신경 쓰지 않습니다. 따라서 마스터 부트 레코드 위에 자체 코드를 작성합니다. 다행히도 솔루션도 쉽습니다.
MBR을 수리해야합니다. 다음을 수행하십시오
우분투의 라이브 USB / CD를 사용하여 부팅하십시오. boot-repair
문제를 해결하는 데 사용하십시오 .
live usb / cd로 부팅 한 후 터미널에서 다음 명령을 실행하십시오.
sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair
사용하십시오 Recomended Repair
.
추가 정보-https: //help.ubuntu.com/community/Boot-Repair
라이브 우분투 USB pendrive 또는 CD에서
부팅하고 다음 단계에 따라 우분투에 부팅 수리 설치
터미널을 열고 다음 명령을 실행하십시오
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install boot-repair
설치를 완료 한 후 Gnome을 사용하면 System-> Administration-> Boot-Repair 메뉴에서 시작하거나 Unity를 사용하면 대시에서 "boot-repair"를 검색 할 수 있습니다. 그런 다음 다음 스크린 샷을 따르십시오.
방법 1
적용을 누르고 시스템을 재부팅하십시오
방법 2
easyBCD
Windows 7에 설치 하면됩니다.
새 항목 추가> Linux / BSD> (선택) Grub2> (푸시) 항목 추가
그런 다음 Windows 7 부트 로더에서 Ubuntu 를 선택 하여 Grub2 (이전 부트 로더) 로 이동할 수 있습니다.
EFI 기반 시스템 (예 : Windows 8 이상과 함께 제공되는 대부분의 시스템)에서 Windows는 때때로 부트 로더를 업데이트하거나 기본 부트 로더로 재설정합니다. 이것은 OS를 다시 설치하거나 주요 시스템 업데이트 (예 : 최신 Windows 릴리스로 업그레이드)를 수행 할 때 특히 일반적입니다. Windows는 EFI 기반 컴퓨터에서 GRUB 파일을 실제로 지우지 않을 것입니다. 우분투를 부팅하는 데 필요한 모든 것이 여전히 있습니다. 그냥 우회되고 있습니다. 이 경우 GRUB을 완전히 다시 설치하는 것은 과도하며 실제로는 새로운 문제가 발생할 가능성이 적습니다.
따라서 이러한 경우 GRUB을 다시 설치하는 대신 GRUB (또는 원하는 부트 로더 또는 부팅 관리자)을 기본값으로 재설정하는 것이 좋습니다. 다음과 같은 여러 가지 방법이 있습니다.
ubuntu
부팅 설명 목록 에서 항목을 찾아 목록의 맨 위로 이동하십시오. 다음에 다시 부팅하면 GRUB이 나타납니다. GRUB 이외의 것을 사용하는 경우 해당 항목을 찾아야합니다.bcdedit
-Windows bcdedit
도구를 사용하여 GRUB을 기본 부팅 순서로 설정할 수 있습니다. 관리자 명령 프롬프트 창에 bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi
입력 한 명령 이이를 수행합니다. 그러나 컴퓨터가 보안 부팅이 활성화 된 상태에서 부팅 되는 경우 대신 필요합니다. 실제로 후자의 명령은 일반적으로 보안 부팅을 사용하지 않더라도 작동하므로 먼저 해당 명령을 사용합니다. 제시 한 것과 약간 다른 구문이 필요한 고급 Windows 셸 도구가 있지만 세부 정보는 기억 나지 않습니다.bcdedit /set {bootmgr} path \EFI\ubuntu\shimx64.efi
ubuntu
우분투로 부팅 할 수 있도록,이 부팅 관리자 메뉴에 표시됩니다 우분투를 부팅하는 항목. 또는 설치 프로그램이 "설치하기 전에 시도"모드로 부팅 된 것처럼 Ubuntu 응급 미디어로 부팅 할 수 있습니다. 어느 쪽이든 efibootmgr
부팅 순서를 조정하는 데 사용할 수 있습니다 .
sudo efibootmgr
부팅 항목을 보려면 입력 하십시오.BootOrder
줄을 적어 둡니다.ubuntu
찾아 Boot####
번호를 적어 둡니다.sudo efibootmgr -o xxxx[,yyyy,zzzz,....]
하고, 부팅 순서를 변경하는 xxxx
우분투의 수입니다. Windows가 목록에 없으면 부팅 순서의 시작 부분에 Windows가 다시 추가 될 가능성이 높다고 지적했지만 그 이후에 오는 일은 그다지 중요하지 않습니다. 따라서 Windows가 목록에 있는지 확인해야하며 ubuntu
항목을 목록의 맨 위로 이동 한 상태에서 모든 원래 항목이 있도록 목록을 다시 정렬하는 것이 가장 안전 할 수 있습니다 .같은 사용하여 이러한 절차에 대한 다른 변형이 있습니다 bcfg
사용하여, EFI 쉘에서 bless
내 사용, 맥 OS에서 REFind 함수를 그래도, EasyUEFI로 시작하는 것 등, 한 번 부팅을 할 수는; 가장 간단한 해결책 일 것입니다. 그러나 때때로 Windows는 시작할 때마다 기본값을 설정해야한다고 주장하고 보고서에 따르면 bcdedit
해당 문제를보다 잘 처리 할 수 있습니다.
위의 어느 것도 BIOS 모드 설치에 적용되지 않습니다. 그러나 Windows 8 이상과 함께 제공되는 대부분의 컴퓨터는 EFI 모드로 부팅되므로 BIOS 모드 설치는 점점 더 드문 경우가 많으므로 GRUB을 맹목적으로 다시 설치하는 대신 EFI 방식으로 문제를 처리하는 것이 좋습니다.
efibootmgr
순서를 다시 정렬하는 데 사용할 수있었습니다 (로드-> 감사합니다!). 최신 정보. 그 후 GRUB-bootmanager는 업데이트 이전과 동일하게 나타나므로 제공된 솔루션이 저에게 효과적임을 확인할 수 있습니다. EasyUEFI의 기본 버전을 찾을 수 없었지만 무료 버전이 아닌 시험판 버전 만 제공되었습니다.
더 간단한 해결책이 있습니다.
이것은 Samsung Series 7 Chronos 랩탑 듀얼 부팅 Windows 8 및 Ubuntu 13.10, 보안 부팅 비활성화, UEFI 및 레거시 부팅 활성화에서 테스트되었습니다.
Boot-Repair가 나를 위해 일했습니다. 그래픽 응용 프로그램을 사용하는 것은 매우 쉽습니다. 명령 줄을 사용할 필요가 없으며 버튼 만 클릭하면됩니다. :)
모든 가능한 복구 옵션이 설명되어 있습니다 우분투 문서 와이 별도의 페이지 및 사용 방법 (부팅 디스크를 만들거나 기존 우분투 라이브 디스크에 설치하여) 부팅 복구를 시작하는 방법을 설명가.
Ubuntu 라이브 CD를 부팅하고 Boot-Repair를 설치 한 다음 실행하십시오.
chroot
다른 도구를 설치하려면 Google보다 수리를 설정하는 것이 더 빠릅니다 .
GRUB이 손상된 경우 사용자는 일반적으로 시스템에 액세스 할 수 없으므로 라이브 세션 (live-CD 또는 live-USB)에서 복구를 수행해야합니다.
GRUB 중단의 원인은 여러 가지가 있습니다. MBR에 Windows 쓰기, GRUB가 올바르게 설치되지 못하게하는 DRM, 설치 프로그램 버그, 하드웨어 변경 ... Scott이 처음 제안한 GRUB 업데이트로는 충분하지 않습니다. Marco가 제안한 GRUB 재설치는 더 효율적이지만 여전히 다른 조정이 필요한 다양한 상황이 있습니다 (커널에 옵션 추가, GRUB 메뉴 숨기기 해제, GRUB 옵션 변경, 올바른 호스트 아키텍처 선택 ...). GRUB를 복구하기위한 다른 어려움은 chroot를 사용하고 올바른 파티션 / 디스크를 선택하는 것입니다.
이 모든 것이 작은 그래픽 도구 인 Boot-Repair 에서 쉽게 이루어졌습니다 . Ubuntu 12.04 CD에 통합되어 사용하기 쉬워졌지만 지금은이를 필요로하는 사람들을 위해 이미 일부 배포판이 있습니다 : Ubuntu-Secured-Remix (Ubuntu CD 통합 부팅-수리), 부팅 복구 디스크 (부팅 실행 CD) -시동시 수리), ...
도움이 되었기를 바랍니다.
Scott과 Web-E의 답변은 충분하며 여러 번 도움이되었습니다. 그러나 많은 경우 부트 복구 도구는 i386 및 amd64 플랫폼과 관련된 문제 또는 grub이 efi
디렉토리를 찾을 수없는 문제로 인해 grub을 복구 할 수 없습니다 .
내 문제를 10 번 이상 해결 한 것은 이전 그럽 설치를 수동으로 제거하고 새로 설치하는 것입니다.
따라서 Scott의 답변 에서 처음 6 단계를 수행하여 오류가 발생하면 5 단계를 건너 뛸 수 있습니다.
- "Try Ubuntu"모드에서 라이브 CD 또는 라이브 USB로 부팅하십시오.
기본 파티션의 파티션 번호를 결정하십시오.
sudo fdisk -l
,sudo blkid
(이미 라이브 세션에 기본적으로 설치되어 있어야합니다) 또는 GParted와 여기에 당신을 도울 수 있습니다. 이 답변에서이 값은이라고 가정/dev/sda2
하지만 시스템에 올바른 파티션 번호를 사용해야합니다!주 파티션은 LVM에있는 경우 , 장치 대신에 위치하게 될
/dev/mapper/
가능성이 높습니다,/dev/mapper/{volume}--{os}-root
어디{volume}
에서 LVM 볼륨 이름이며{os}
운영 시스템입니다.ls /dev/mapper
정확한 이름으로 실행 하십시오.파티션을 마운트하십시오 :
sudo mount /dev/sda2 /mnt #Replace sda2 with the partition from step 2
별도의 경우
/boot
,/var
또는/usr
파티션을 반복 이러한 파티션을 마운트 2, 3 단계/mnt/boot
,/mnt/var
그리고/mnt/usr
각각. 예를 들어sudo mount /dev/sdXW /mnt/boot sudo mount /dev/sdXY /mnt/var sudo mount /dev/sdXZ /mnt/usr
대체
sdXW
,sdXY
및sdXZ
각 파티션 번호.다른 필요한 것들을 묶습니다 :
for i in /sys /proc /run /dev; do sudo mount --bind "$i" "/mnt$i"; done
Ubuntu가 EFI 모드로 설치된 경우 ([확실하지 않은 경우이 답변 참조] [efi])
sudo fdisk -l | grep -i efi
또는 GParted를 사용 하여 EFI 파티션을 찾으십시오. 라벨은EFI
입니다.sdXY
시스템의 실제 파티션 번호로 대체하여이 파티션을 마운트 하십시오.sudo mount /dev/sdXY /mnt/boot/efi
chroot
우분투 설치에 :sudo chroot /mnt
그런 다음이 단계를 수행하십시오.
sudo dpkg --configure -a
sudo apt install -fy
sudo apt purge -y grub*-common grub-common:i386 shim-signed
sudo apt install -y grub-pc
sdXY
부트 로더를 설치할 현재 를 지정하라는 메시지가 표시됩니다 . sudo fdisk -l
명령을 사용하여 현재 OS가 설치된 위치를 찾으십시오 . 로 표시됩니다 Linux
. Tab키를 사용하여 해당 창을 탐색하고 키를 사용하여 옵션을 선택하십시오 Space.sudo grub-update
이중 확인을 수행 할 수도 있습니다 .그래도 문제가 지속되면 Arch wiki 를 읽고 다른 많은 종류의 문제를 해결하기 위해 grub에 대해 실제로 이해할 수 있습니다. (예, 우분투에도 도움이됩니다!).
Windows에는 Linux 형식의 파티션이 표시되지 않습니다. liveCD에서 gparted를 사용하고 부팅 플래그를 사용하여 NTFS로 포맷 된 기본 파티션을 만들어야합니다.
Windows가 항상 파티션 테이블을 올바르게 재설정하지는 않으므로 새 기본 파티션이 확장 파티션 뒤에있는 경우 문제가있었습니다. 좋은 백업과 별도의 파티션 테이블 백업이 가장 좋습니다.
파티션 테이블을 텍스트 파일로 백업하고 외부 장치에 저장하십시오.
sudo sfdisk -d /dev/sda > PTsda.txt
이것은 MBR (msdos) 시스템에만 해당됩니다. Ubuntu 설치가 GPT 파티션 드라이브에 있으면 Windows를 UEFI 모드로 설치하거나 드라이브를 MBR (msdos)로 다시 변환 할 수 있습니다.
fsck
명령 만 grub-rescue
화면을 고정했습니다 .
Boot-Repair 를 사용 하여 Live-CD에서 부팅 한 다음 터미널을 엽니 다.
올바른 장치를 얻으십시오.
sudo fdisk -l
부팅 장치를 찾아야합니다. 부팅 장치는 *
다음과 같이 부팅 범주에 있습니다.
Device Boot Start End Sectors Size Id Type
/dev/sda1 2048 2000895 1998848 976M 82 Linux swap / Solaris
/dev/sda2 * 2000896 943716351 941715456 449G 83 Linux
이제 다음을 사용하여 디스크를 복구하십시오.
sudo fsck /dev/sda2 -y
참고 : 이 예에서 / dev / sda2는 부팅 장치입니다.
완료되면 재부팅하십시오. 끝난.
Scott Severance의 답변은 유효하고 상세하지만 외부 부팅 장치 가 필요 하지 않으므로 해상도로 이어지는 모든 Ubuntu 파티션을 식별하고 수동으로 마운트 할 필요가 없습니다 chroot
.
Windows 10에서는 Advanced Recovery
부팅 할 장치 (파티션?)를 선택할 수 있습니다 .
가서 Settings
선택하십시오 Update & Security
:
로 이동 Recovery
:
에서 Advanced Startup
선택Restart Now
그런 다음 선택 Use a Device
하면 모든 부팅 옵션이 표시됩니다. '우분투'파티션을 선택하면 PC가 해당 파티션에서 부팅됩니다.
평소 우분투 환경으로 부팅 한 후에는 실행을 시도했지만 grub-update
아무런 변화가 없습니다.
그런 다음 /boot/efi
파티션 을 찾아서 /dev/nvme0n1p1
실행했다 sudo grub-install /dev/nvme0n1p1
가 다시 시작했습니다 sudo update-grub
.
마이너 업데이트에서 MBR을 덮어 쓰는 새로운 Windows 10 정책이있는 것처럼 보이기 때문에 이제 마스터 부트 레코드가 여러 번 복원되었습니다 .
내 질문에 설명 된 템플릿 을 boot-repair
지우면 (아마) 다른 문제가 발생했습니다 .Windows 10 설치 후 우분투 18.04가 부팅되지 않습니다./etc/grub.d/
@karels 주석에서 지적했듯이 grub 구성은의 파일을 사용하여 생성됩니다 /etc/grub.d
. 내 디렉토리에는 /etc/grub.d/25_custom
.efi 이미지가 아닌 이상한 메뉴 항목이 포함되어 있습니다. 내 /etc/grub.d
템플릿이에 의해 혹사 된 것 같습니다 boot-repair
.
나는 이것을 수정했다.
sudo mount /dev/sdxx /mnt
sudo cp /etc/grub.d/* /mnt/etc/grub.d/
sudo update-grub