관리 메뉴

Value Creator의 IT(프로그래밍 / 전자제품)

서피스 프로7+의 micro sd 카드에 우분투 설치하기 본문

카테고리 없음

서피스 프로7+의 micro sd 카드에 우분투 설치하기

valuecreatort 2023. 8. 26. 16:28
반응형

그냥 micro sd에 우분투를 설치하면 부트로더를 찾을 수 없어서 절대 안된다. 또한 micro sd에 부트로더를 설치해도 서피스 프로가 micro sd의 부트로더를 못찾기 때문에 수동으로 부트로더를 세팅해줘야 하는데 그 방법 찾기가 어렵다. 서피스 프로는 기본적으로 SSD의 efi 시스템에 설치된 부트로더만 취급한다.

아래 전제 조건 숙지
1. 서피스 프로는 좀 특이해서 기존 내장된 SSD의 efi 경로에 다른 부트로더를 설치 못하게 되어있다

2. UEFI 시스템에서 하나의 디스크에는 반드시 하나의 efi 시스템만 있어야 한다


위 내용을 종합해보면
1. 기존 windows boot manager가 설치된 efi 파티션을 잠시 다른 타입으로 바꿔놓는다.
2.


[사전 준비]

1. 윈도우의 디스크 관리(하드디스크 포맷 .... ) 메뉴에 들어간다.

기존 SSD에 파티션을 추가한다(300mb 정도)

fat32 타입으로 한다

-> 요 파티션에 우분투 부트로더를 넣을 것이다. 추후에.

('우분투 부트로더 파티션')

 

 

2. WinNTSetup 프로그램을 설치해놓는다.

-> 숨겨진 efi 드라이브를 보기 위해서다. 추후에 사용.

 

 

3. explorer++ 프로그램을 설치해놓는다.

-> 숨겨진 efi 드라이브를 보기 위해서다. 추후에 사용.

 

 

 

 

[우분투 설치]

1. 우분투 부팅 설치를 위한 USB 준비 (ubuntu 22.04 iso 파일을 USB에 rufus로 굽는다)

 

2. 우분투를 설치할 micro sd를 준비 (서피스 프로 뒷면에 꼽는다)

 

3. 서피스 UEFI에 들어가서 USB를 맨위 우선순위로 놓는다  ( 전원 켜짐과 동시에 볼륨UP 버튼 누른다)

& secure boot를 끈다.

 

4. 리스타트

 

5. 우분투 설치 화면에서 반드시 'try ubuntu'로 들어간다

 

6. 우분투가 실행되었으면 터미널을 열고 gparted를 실행한다.

 

7. 기존 윈도우를 위한 efi(esp) 파티션을 msftdata 타입으로 변경한다(우클릭 후 변경)

 

8. 아까 만든 '우분투 부트로더 파티션' 을  esp 타입으로 만들어준다.

 

9. 열었던거 끄고 우분투 설치를 눌러 설치한다

 

10. 이 때 micro sd 쪽 파티션은 뭔가 데이터가 있다면 마이너스 버튼을 눌러 지워주고 ext4 타입, 경로는 /  로 만든다.

 

11. 부트로더는 /dev/nvnm?? 경로의 최상단부로 선택한다. 이것은 SSD의 최상단 경로이다. 그러면 우분투 설치마법사가 알아서 efi(esp) 타입의 드라이브에 우분투 부트로더를 집어넣을 것이다.

 

12. 우분투 설치를 끝까지 진행한다.

 

13. 다 되었으면 끄지말고 continue를 누른뒤에 gparted를 켜준다.

 

14. gparted에서 아까 만든 '우분투 부트로더 파티션'에 용량이 들어가 있는지 확인한다. 용량이 들어갔으면 우분투 부트로더가 잘 깔린것이다.

 

15. 재부팅 버튼 누른다.

 

16. USB를 뺀다.

 

17. 엔터를 누르면서 다시 UEFI를 켜주기 위해 볼륨UP버튼을 누른다

 

18. 부팅 우선순위를 ubuntu가 맨위에 오게 한다.

 

19. 우분투가 잘 부팅된다.

 

여기까지 우분투만 쓰기 위한 세팅이다.

윈도우와 우분투를 번갈아가며 멀티부팅하기 위해 또 다른 산을 넘어야 한다.

왜냐하면 아까 윈도우의 EFI 드라이브를 잠시 다른 타입으로 바꾸어놓았기 때문에 윈도우 부팅이 안된다.

-----------------------------------------------------------

 

[우분투와 윈도우 멀티부팅]

1. 우분투를 들어간다.

 

2. gparted를 다운받는다

sudo apt-get update

sudo apt-get install gparted

 

3. gparted를 실행한다.

 

4. 윈도우의 efi를 msftdata 타입에서 esp타입으로 변경해준다.

 

5. 재부팅한다. 그러면 grub 화면이 뜰 것이다. exit 입력해줘서 빠져나간다.

 

6. 윈도우 화면을 들어간다.

 

7. explorer++를 관리자 권한으로 실행해준다.

 

8. Z드라이브가 아마 efi일 것이다. 혹시 안보이면 WinNTSetup을 실행시켜준 후 다시 explorer++를 관리자 권한으로 실행시켜주고 그 화면에서 새로고침하면 Z드라이브(혹은 efi 드라이브)가 보일 것이다.

 

9. 아까 '우분투 부트로더 파티션'에 있는 'BOOT' 폴더와 'ubuntu' 폴더를 Z드라이브의 EFI 안으로 복사해준다.

 

10. 다 해줬으면 재부팅한다.

이제 UEFI화면에서 우선순위 선택하는대로 우분투와 윈도우를 번갈아가며 쓸 수 있다.

 

11. 터치스크린 및 grub의 부트매니저를 쓰고 싶으면 아래 [트러블 슈팅 및 선택사항]을 실행해준다.

 

아래 트러블 슈팅에서

sudo apt-get update grub 까지 해줬으면

부팅화면에 ubuntu와 windows boot manager를 선택할 수 있게 예쁜 창이 뜬다.

 

 

 

 

[트러블 슈팅 및 선택사항]

Surface에 Ubuntu를 설치했을 때 발생하는 문제점 해결하기

Surface Pro에 Ubuntu를 설치했을 때 남은 배터리 잔량이 표시안되거나 터치 스크린이 안되는 문제, 재부팅시 Freeze 되는 현상 등이 있습니다. (Surface Pro 7 가준)

다음 방법을 통해 해결할 수 있습니다.

 

 

원본 https://github.com/linux-surface/linux-surface/wiki/Installation-and-Setup

 

Installation and Setup

Linux Kernel for Surface Devices. Contribute to linux-surface/linux-surface development by creating an account on GitHub.

github.com

 

 

 

wget -qO - https://raw.githubusercontent.com/linux-surface/linux-surface/master/pkg/keys/surface.asc \
    | gpg --dearmor | sudo dd of=/etc/apt/trusted.gpg.d/linux-surface.gpg

 

 

 

echo "deb [arch=amd64] https://pkg.surfacelinux.com/debian release main" \
| sudo tee /etc/apt/sources.list.d/linux-surface.list

 

 

 

sudo apt update

 

 

[단, iptsd는 우분투 22.04부터 지원한다. iptsd가 멀티터치와 스타일러스 지원기능인가보다. 따라서 그 미만 버전에서는 싱글 터치만 지원한다]

sudo apt install linux-image-surface linux-headers-surface libwacom-surface     iptsd

 

 

 

위에서 401ERROR  발생하면

sudo add-apt-repository ppa:gpxbv/apt-urlfix
sudo apt-get update
sudo apt install apt

한번 해준다.

 

 

 

마지막으로

sudo update-grub

 

해주면 커널이 업그레이드 된다.

 

위에꺼 해주기 전에

uname -a 로 커널버전을 업그레이드 전 / 후 비교해봐도 된다.

 

 

 

 

Touch 스크린 활성화

위에서 커널을 새로 설치한 다음 systemctl start iptsd.service 명령을 수행하면 터치 스크린이 활성화됩니다. 만약 재부팅 후에도 서비스를 계속 활성화하고 싶으면 sudo systemctl enable iptsd.service 명령어를 실행하면 됩니다.

현재는 멀티 터치는 지원하지 않고 싱글 터치만 지원합니다.

 

Reboot 시 Freeze 되는 현상 수정

Boot Parameter에 reboot=pci를 추가하면 됩니다. Boot Parameter는 다음 방법을 이용해서 수정할 수 있습니다.

sudo code /etc/default/grub

그 이후 GRUB_CMDLINE_LINUX_DEFAULT 변수에 reboot=pci룰 추가하고 저장을 합니다. 아래 명령어를 이용해서 GRUB에 반영을 해줘야 합니다.

sudo update-grub

 

GRUB 해상도 조절

윈도우와 멀티 부팅으로 했을 경우 부팅 OS를 선택하는 화면인 GRUB 화면의 해상도가 너무 높아서 글씨가 아주 작게 나옵니다. 이를 해결하기 위해서 다음과 같은 작업을 해줍니다.

sudo nano /etc/default/grub

여기에 GRUB_GFXMODE=640x480 옵션을 추가해줍니다. (기본적으로 주석으로 존재하고 있습니다. 주석을 제거해줘도 됩니다.)

수정 후 다음 명령어를 이용해서 GRUB에 반영을 해줍니다.

sudo update-grub

sudo reboot

 

 

 

 

설치다했으면 클론질라를 이용해서 백업 하나 해준다.

 

3일 날렸다.

반응형
Comments