이것 저것

[펌] 노트북에 크롬 OS 설치, 멀티 부팅

Light Pillar 2022. 2. 1. 20:57

<출처 : https://quasarzone.com/bbs/qb_tip/views/47061 >

 

reference : https://github.com/sebanc/brunch/blob/master/install-with-windows.md (brunch 프로젝트의 원문이며, 가장 리프레시가 빠릅니다. 이 문서가 오래되었다면 해당 링크를 참조하시는 편이 도움이 될 겁니다. discord 등으로 문의도 가능!)

referencce 2 : https://sourceforge.net/p/grub2win/discussion/general/thread/a834534834/

(grub2win으로 부팅이 자동으로 막히는 서피스 고와 같은 특정 제품의 경우 윈도우의 부트로더 수정이 필요합니다. 해당 링크는 이를 위한 원문입니다.)

Reference 3: https://www.lainyzine.com/ko/article/how-to-install-wsl2-and-use-linux-on-windows-10/

 

필요한 물건

1. 설치할 노트북(되도록 램 4GB, 64GB 이상의 저장공간 추천)

2. 16GB 이상의 USB

3. 윈도우가 설치된 PC(1로도 가능합니다만 따로 있는 편이 편합니다)

4. 아아아아주 기초적인 리눅스 터미널에 대한 이해

 

1 WSL2 설치

    1.1 WSL2를 설치하기 위해 윈도우의 버전을 한번 더 확인합니다.

        1.1.1 설정 – 시스템 – 정보 를 통해 윈도우의 버전 확인이 가능합니다.

    1.2 가상터미널(powershell로 하겠습니다)을 열어줍니다.

        1.2.1 Windows 키, powershell 입력, 오른클릭 -> 관리자 권한으로 실행

    1.3 DISM을 이용해 WSL 기능을 활성화합니다.

        1.3.1 $ dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

    1.4 Dism 명령어로 VirtualMachinePlatform 기능을 활성화합니다.

        1.4.1 $ dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

    1.5 정상 완료 메시지를 확인 후, 커널 업데이트 작업을 수행합니다.

    1.6 터미널을 열고, 다음 명령어를 실행해 WSL 버전을 2로 올려줍니다. (powershell, cmd등 무관)

        1.6.1 $ wsl --set-default-version 2

    1.7 마이크로소프트 스토어에서 Ubuntu를 설치해줍니다.

    1.8 설치된 Ubuntu를 실행한 후 버전을 확인해봅니다.

        1.8.1 $ wsl -l -v

    1.9 버전이 2라면 WSL2가 설치된것이고, 1이면 아래 명령어를 입력해 변환해줍니다.

        1.9.1 $ wsl --set-version Ubuntu 2

    1.10 완료!

 

2 USB boot(듀얼부팅을 위해 필수)

    2.1 리커버리 및 Brunch 다운로드

        2.1.1 인텔 1~9세대의 경우 rammus 리커버리를, 10~11세대의 경우 volteer 리커버리를 추천드립니다.

            2.1.1.1 https://cros.tech/device/rammus

            2.1.1.2 https://cros.tech/device/volteer

            2.1.1.3 11세대의 경우 커널 5.10을 위해 아래 링크를 확인합니다.

                2.1.1.3.1 https://github.com/sebanc/brunch/blob/master/troubleshooting-and-faqs.md#kernels

        2.1.2 AMD의 경우 라이젠 이상은 Zork, 이하는 grunt 리커버리를 설치합니다.

            2.1.2.1 https://cros.tech/device/grunt

            2.1.2.2 https://cros.tech/device/zork

            2.1.2.3 라이젠 4천번대 이상의 경우 커널 5.10을 위해 아래 링크를 확인합니다.

                2.1.2.3.1 https://github.com/sebanc/brunch/blob/master/troubleshooting-and-faqs.md#kernels

        2.1.3 Brunch 파일을 릴리즈 탭에서 다운로드합니다.(되도록 최신을 추천합니다)

            2.1.3.1 https://github.com/sebanc/brunch/releases

    2.2 Linux USB 만들기

        2.2.1 WSL2 터미널을 작동합니다.

        2.2.2 sudo apt update && sudo apt -y install pv cgpt tar unzip

                    업데이트 및 설치를 위해 필수 명령어를 다운로드합니다.

        2.2.3 cd /mnt/c/Users/username/Downloads

                    파일들을 받은 디렉토리로 이동합니다. (Username은 독자의 PC Username으로 변경합니다.)

        2.2.4 tar zxvf brunch_filename.tar.gz tar

                    명령어로 아카이브를 열어줍니다. (파일명을 brunch_archive.tar.gz 등으로 변경하셔도 됩니다.)

        2.2.5 unzip chromeos_filename.bin.zip

                     unzip 명령어로 리커버리를 풀어줍니다. (파일명을 chromeos_recovery.bin.zip 등으로 변경하셔도 됩니다.)

        2.2.6 sudo bash chromeos-install.sh -src chromeos_filename.bin -dst /mnt/c/Users/username/Downloads/chromeos.img

                    브런치 설치 진행

        2.2.7 Rufus 등을 이용하여 만들어진 이미지 파일을 USB에 구워줍니다

        2.2.8 이제 만들어진 리눅스 USB로 부팅하시면 됩니다.

        2.2.9 Profit!

 

3 USB를 통하여 ChromeOS 부팅(여기까지만 하시면 USB ChromeOS를 만드신 겁니다.)

 

4 듀얼부트 설치

    필요사항

    16GB 이상의 설치할 파티션(NTFS 포맷으로 윈도우에서 만들어두시면 됩니다)

    Brunch USB(지금 들고 계신거)

    브런치를 돌릴 PC

    Grub2win 부트로더(https://sourceforge.net/projects/grub2win/)

    Hibernate와 Fast boot 비활성화

 

    4.1 chromeOS로 부팅

    4.2 첫 부팅의 경우, 귀찮은 과정 생략하시고 Guest 계정으로 바로 들어가시면 됩니다.

    4.3 타겟 파티션 지정

        4.3.1 Crosh shell에 들어가세요.

            4.3.1.1 Ctrl+Alt+T, shell 입력 및 엔터

        4.3.2 lsblk -e7 입력

        4.3.3 mkdir -p ~/tmpmount 입력

        4.3.4 sudo mount /dev/part ~/tmpmount 입력

                    (part 부분은 설치하실 파티션을 용량으로 구분 후 입력하세요. 예시 : sda3, nvme0n1p4, mmcblk0p5 등)

    4.4 설치

        4.4.1 sudo chromeos-install -dst ~/tmpmount/chromeos.img -s size

                    size 단은 설치하실 파티션의 용량 -1만큼 입력하시면 됩니다.(정수, 14 이상)

        4.4.2 설치 후 나타나는 Grub 설정 텍스트를 백업해둡니다. 열려있는 chrome 브라우저를 통해 keep, 메일 등으로 보내두시면 되며, ******* 두 개 사이에 있는 16여줄을 통째로 긁어서 백업해두세요. 저의 경우 아래와 같았습니다. 밑의 경우 uuid 부분을 임의로 변경해두어서 그대로 복사하시면 곤란합니다.

 

menuentry "ChromeOS" --class "brunch" {

search --no-floppy --set=root --file /chromeos.img

loopback loop /chromeos.img

source (loop,12)/efi/boot/settings.cfg

if [ -z $verbose ] -o [ $verbose -eq 0 ]; then

linux (loop,7)$kernel boot=local noresume noswap loglevel=7 options=$options chromeos_bootsplash=$chromeos_bootsplash $cmdline_params \

cros_secure cros_debug loop.max_part=16 img_uuid=XXXXXXXX img_path=/chromeos.img \

console= vt.global_cursor_default=0 brunch_bootsplash=$brunch_bootsplash quiet

else

linux (loop,7)$kernel boot=local noresume noswap loglevel=7 options=$options chromeos_bootsplash=$chromeos_bootsplash $cmdline_params \

cros_secure cros_debug loop.max_part=16 img_uuid=xxxxxxxx img_path=/chromeos.img

fi

initrd (loop,7)/lib/firmware/amd-ucode.img (loop,7)/lib/firmware/intel-ucode.img (loop,7)/initramfs.img

}

menuentry "ChromeOS (settings)" --class "brunch-settings" {

search --no-floppy --set=root --file /chromeos.img

loopback loop /chromeos.img

source (loop,12)/efi/boot/settings.cfg

linux (loop,7)/kernel boot=local noresume noswap loglevel=7 options= chromeos_bootsplash= edit_brunch_config=1 \

cros_secure cros_debug loop.max_part=16 img_uuid=xxxxxxxx img_path=/chromeos.img

initrd (loop,7)/lib/firmware/amd-ucode.img (loop,7)/lib/firmware/intel-ucode.img (loop,7)/initramfs.img

}

 

        4.4.3 재부팅하여 윈도우로 접속합니다.

5 Grub2win 설정

    5.1 Grub2win을 실행합니다.

    5.2 Manage boot menu – Add a new entry 항목으로 들어갑니다.

    5.3 Submenu 선택, 이름은 ChromeOS로 짓습니다.

    5.4 Edit custom code를 누르고, 아까 위에서 백업해둔 grub 세팅을 붙여넣고 저장해줍니다.

    5.5 Apply – OK 버튼을 눌러 저장합니다.

    5.6 재부팅하시면 grub2win을 통해 윈도우 혹은 chromeOS로 선택하여 부팅하실 수 있을 겁니다.

6 (추가사항) 만약 grub2win이 작동되지 않는 경우, windows boot loader의 변경

    Grub2win을 거부하는 저의 surface go 같은 펌웨어의 경우, 지속적으로 grub2win을 해제하고 기본 windows EFI 부트로더로 자동변경되기 때문에 그대로는 dualboot가 불가합니다. 이 때 기본 부트로더를 임의로 백업하고 커스텀 부트로더를 불러오는 작업이 필요합니다.

    6.1 Grub2win을 실행하고 Manage boot menu 버튼을 누릅니다.

    6.2 Add an new entry -> Custom code 항목 선택 후 이름은 Windows Alternate로 지어줍니다.

 

set efibootmgr=/efi/Microsoft/Boot/bootmgfw.efi.sav

     getpartition file $efibootmgr root

     if [ ! -z $reviewpause ] ; then

  echo GNU Grub will load the Windows EFI Boot Manager at disk address $root

     fi

     chainloader $efibootmgr

 

    6.3 커스텀코드를 위와 같이 입력하고 저장해줍니다. (저장이 잘 됐는지 두번 확인하셔야 합니다! 윈도우 부트로더를 재설정하기 때문에 잘못하면 윈도우를 재설치하셔야..)

    6.4 Grub2win의 시작지점으로 돌아간 후, 파란색 EFI Partition Operation 항목을 누릅니다.

    6.5 Actions 항목이 보라색으로 뜨면, Browse 버튼을 누릅니다.

    6.6 Microsoft/Boot/ 디렉토리로 이동합니다.

    6.7 bootmgfw.efi 파일을 찾아 이름을 bootmgfw.efi.sav 파일로 변경해줍니다.

    6.8 Grub2win 시작지점으로 돌아갑니다.

    6.9 재부팅합니다.

 

수고하셨습니다! 여기까지 따라오셨다면 chromeOS로 듀얼부팅되는 컴퓨터를 얻으셨습니다.

대부분의 경우 윈도우10 대비 훨씬 빠릿하고 깔끔하며 터치인터페이스에 최적화된 노트북/태블릿으로 변환되며, google 생태계 내에 계신다면 더 편리하게 사용하실 수 있습니다. 특히 배터리 부분에서 향상이 뚜렷합니다.

'이것 저것' 카테고리의 다른 글

데이터 분석  (0) 2019.11.22