
외장 하드 드라이브에 Linux를 설치했지만 외장 하드 드라이브의 플러그를 뽑으면 창에 액세스할 수 없습니다(grub 종류는 나타나지만 외장 하드 드라이브에는 grub이 있음). 외장 HD를 다시 넣으면 grub이 나타나고 I 창을 선택한 다음 창에서 HD를 제거하면 창이 정상적으로 작동합니다. HD를 연결하지 않고도 이전처럼 창을 정상적으로 사용할 수 있는 방법이 있나요?
답변1
분명히 내부 드라이브에 grub을 설치했습니다. 아마도 외부 드라이브에 해당 모듈과 grub.cfg가 있지만 부팅 코드(또는 UEFI 시스템의 경우 EFI 바이너리)가 내부 드라이브의 MBR(및 MBR 이후 간격/BIOS 부팅 파티션)에 설치되었습니다. 외장 드라이브를 분리하면 grub RESCUE 쉘이 보일 것입니다.
해결책은 grub을 올바르게 다시 설치하는 것입니다. 예를 들어,
/dev/sda
: 내부 Windows 드라이브/dev/sdb
: 외장 리눅스 드라이브
당신이 한 일은 아마도 다음과 같습니다:
grub-install /dev/sda
, 묵시적 옵션 으로 구성되고--boot-directory /boot
while/boot
은 켜져 있습니다./dev/sdb
당신이 해야 할 일은:
grub-install /dev/sdb
/dev/sdX 이름은 부팅 중에 변경될 수 있습니다. 따라서 이를 실행하기 전에 어떤 드라이브가 Linux 드라이브인지 확인 lsblk
하거나 확인하십시오 .findmnt
그런 다음 내부(Windows) 드라이브의 MBR을 수정합니다.https://technet.microsoft.com/en-us/library/cc749177%28v=ws.10%29.aspx