어떻게 든 도전적인 것을 달성하려고합니다. 나는 매우 빠르고 큰 USB 스틱 (SanDisk Ultra USB 3.0 16GB)을 사용하여 정통 방식으로 사용하고 싶습니다.
- 1GB 크기의 파티션이 필요합니다.이 파티션은 Windows와 Linux 모두에서 읽을 수 있습니다 (알다시피, 이전 버전의 Windows는 다중 파티션 USB 스틱과 잘 어울리지 않습니다). ? 첫 번째 파티션 만 읽고 나머지는 무시합니다.)
- 스틱에 Linux 배포판 (우선 우분투)이 설치되어 있어야합니다.
- EFI 지원 시스템과 레거시 시스템 모두에서이 스틱을 부팅 할 수 있어야합니다.
디스크에 Ubuntu를 설치하는 것은 간단했으며 스틱 속도가 예상보다 좋습니다. 그러나 비 UEFI 시스템에서 스틱을 부팅 할 수 없었습니다. 기계는 단순히 막대기를 읽지 않고 풀 블랙 스크린에 매달려 있습니다.
그래서 내 질문은 :
-
내가 달성하려고 노력하는 것이 가능한가?
-
그렇다면 특별한 파티션 구성표가 필요합니까? 새로 설치해도 괜찮습니다.
-
UEFI와 레거시 모드 모두에 GRUB을 설치할 수 있습니까? 그렇다면 어떻게?
답변
내가 달성하려고 노력하는 것이 가능한가?
예!
그렇다면 특별한 파티션 구성표가 필요합니까? 새로 설치해도 괜찮습니다.
특별한 파티셔닝 구성표가 필요합니다. 기존 파티션을 수정하기 위해 수정하는 것이 가능할 수 있습니다 (작은 1MiB BIOS 부팅 파티션 만 추가하면 됨). 아래 필요한 파티션 구성표를 간략하게 설명하겠습니다.
UEFI와 레거시 모드 모두에 GRUB을 설치할 수 있습니까? 그렇다면 어떻게?
각 모드마다 GRUB을 설치하면됩니다. 다음은 Ubuntu 및 Debian에 대한 지침입니다.
설정
UEFI 및 레거시 부팅 모드에서 Ubuntu를 설치하는 데 필요한 스크래치 지침은 다음과 같습니다. 이 지침은 USB뿐만 아니라 모든 디스크에서 작동합니다.
이 안내서는 처음부터 시작 하고 디스크는 이라고 가정합니다 /dev/sdX
. /dev/sdX
디스크 블록 장치로 교체하십시오 .
-
깨끗한 슬레이트를 얻으려면 모든 파티션을 제거하십시오.
sgdisk --zap-all /dev/sdX
-
디스크에 GPT 파티션 테이블을 작성하십시오.
sgdisk --mbrtogpt /dev/sdX
-
플래시 드라이브 시작 부분에 1GB 파티션이 필요하므로 1GiB 파티션을 만드는 명령이 있습니다 (주 : GB 대신 GiB ).
sgdisk --new 3::+1G --typecode 3:0700 /dev/sdX
-
BIOS 부팅 파티션을 만듭니다. 레거시 부팅에서 EFI 지원을 추가하는 데 필요합니다.
sgdisk --new 1::+1M --typecode 1:ef02 /dev/sdX
-
EFI 시스템 파티션을 작성하십시오.
sgdisk --new 2::+50M --typecode 2:ef00 /dev/sdX
-
Ubuntu를 설치할 데이터 파티션을 만듭니다 :
sgdisk --new 4::+ --typecode 4:8300 /dev/sdX
-
위에서 설정된 파티션 구성표를 사용하여 플래시 드라이브에 Ubuntu를 설치하십시오.
그래픽 Ubuntu 설치 프로그램을 사용하지 않으려는 경우에만 다음 단계로 진행하십시오.
그래픽 Ubuntu 설치 프로그램을 사용하려면 이미 생성 된 파티션 구성표를 사용하여 사용하고 여기로 돌아와서 다음 명령을 실행하십시오.
mount /dev/sdX4 /mnt mount --rbind /dev /mnt/dev mount --rbind /proc /mnt/proc mount --rbind /sys /mnt/sys chroot /mnt /bin/bash --login
그래픽 설치 프로그램을 사용 했으므로 17 단계로 건너 뜁니다.
-
/dev/sdX4
방금 만든 데이터 파티션 인 Ubuntu의 파일 시스템을 만듭니다 .mkfs.ext4 /dev/sdX4
-
새 파일 시스템을 임시 경로에 마운트하십시오.
mount /dev/sdX4 /mnt
-
베어 본 우분투 설치 (
bionic
설치하려는 우분투 버전의 코드 명으로 대체 ) :debootstrap bionic /mnt
-
새로운 Ubuntu 설치의 호스트 이름을 설정
HOSTNAME
하십시오 (원하는 호스트 이름으로 대체 ).echo HOSTNAME > /mnt/etc/hostname
-
다음 내용을 작성하여 패키지 소스를 구성하십시오
/mnt/etc/apt/sources.list
(bionic
설치 한 Ubuntu 버전의 코드 이름으로 대체 ).deb http://archive.ubuntu.com/ubuntu bionic main universe deb-src http://archive.ubuntu.com/ubuntu bionic main universe deb http://security.ubuntu.com/ubuntu bionic-security main universe deb-src http://security.ubuntu.com/ubuntu bionic-security main universe deb http://archive.ubuntu.com/ubuntu bionic-updates main universe deb-src http://archive.ubuntu.com/ubuntu bionic-updates main universe
-
새로운 우분투 시스템에 로그인을 준비하십시오 :
mount --rbind /dev /mnt/dev mount --rbind /proc /mnt/proc mount --rbind /sys /mnt/sys
-
새로운 우분투 시스템에 로그인하십시오 :
chroot /mnt /bin/bash --login
-
로케일을 구성하십시오 (원하는대로 수정).
locale-gen en_US.UTF-8 echo LANG=en_US.UTF-8 > /etc/default/locale
-
나머지 Ubuntu Desktop을 설치하십시오 (Ubuntu Desktop
ubuntu-desktop
을 원하지 않는 경우 원하는 버전으로 바꾸십시오 ).dpkg-reconfigure tzdata ln -s /proc/self/mounts /etc/mtab apt update apt install -y ubuntu-desktop
-
레거시 부팅을위한 GRUB 설치 :
apt install -y grub-pc
-
EFI 파일 시스템을 설정하고 EFI 부팅을위한 GRUB을 설치하십시오 :
apt install -y dosfstools mkdosfs -F 32 -n EFI /dev/sdX2 mkdir /boot/efi echo PARTUUID=$(blkid -s PARTUUID -o value /dev/sdX2) /boot/efi vfat nofail,x-systemd.device-timeout=1 0 1 >> /etc/fstab mount /boot/efi apt install -y grub-efi-amd64
-
레거시 부팅을 위해 GRUB을 구성합니다 :
grub-install --target=i386-pc /dev/sdX
-
EFI 부팅을위한 GRUB 구성 :
grub-install --target=x86_64-efi /dev/sdX
-
initrd 파일을 업데이트하십시오 :
update-initramfs -ckall
-
GRUB 부트 구성을 업데이트하십시오.
update-grub
-
chroot를 종료하고 마운트 해제하여 정리하십시오.
exit umount -R /mnt
이제 EFI 모드 또는 레거시 모드로 부팅 할 수있는 디스크에 Ubuntu가 설치되어 있어야합니다.
/dev/sdX3
요청한 데이터 파티션입니다. 원하는대로 Windows 호환 파일 시스템으로이 형식을 지정할 수 있습니다.
감사의 말
이 안내서를 두 가지 다른 출처에서 정리했습니다.