[아치] ARCH 리눅스 설치 하기_UEFI (리눅스)

Visits: 1734

 

 

 

 

 

 

※※※ BIOS 부팅 환경은 추측으로 작성했습니다. 참고용으로만 확인하세요. ※※※

 

 

지금까지 페도라, 민트를 쓰면서 배포판 업그레이드를 할 때 마다 클린 설치(전체 포맷 후 설치)를 했고,

그 와중에 아치 리눅스에 도전했다가 실패하길 반복 했었어요.

그리고 얼마 전 드디어 아치 리눅스에 다시 도전해서 깔끔하게 성공했습니다.

(사실 주기적으로 업데이트 하는 것도 매우 귀찮았습니다 -_-;;)

아치는 롤링업데이트 지원하니 노트북을 바꾸거나 심각한 문제가 생기지 않는 이상 이제 재설치 할 일은 없겠네요ㅎㅎ

 

그래서 기록도 할 겸 설치 과정 간략히 남겨 둡니다.

우선 설치 환경은

i7-7700HQ 2.8GHz(3.8GHz)

8 GB DDR4

GTX 1060

이고

UEFI 모드에서 설치하고

xfce 환경을 사용할 예정입니다.

 

설치 디스크부터 만듭니다.

https://www.archlinux.org/download/

이 링크로 가셔서 스크롤 쭉 내리시면 South Korea라고 한국 서버에서 설치 이미지 받으실 수 있습니다.

받아서 DVD에 구워 주세요.

 

시디로 부팅하신 후 선택화면이 뜨면 기본적으로 boot arch linux가 선택 되어 있을 겁니다.

엔터를 누르고 로딩 후 명령어를 입력할 수 있는 CLI 화면이 뜨면 작업을 시작합니다.

그럼 본격적으로 설치 과정 들어가겠습니다.

0. uefi 확인

여기서 바이오스 설정에 대한 내용은 각 메인보드마다 다르기 때문에 넘어가겠습니다.

 

다만 설치 CLI화면이 나오면

ls /sys/firmware/efi/efivars

를 입력한 후 이러저러한 항목이 출력 되는지 확인 해 봅시다.

해당 폴더가 없거나 아무런 항목이 출력되지 않으면 UEFI 환경이 아닙니다.

 

1. 인터넷 연결

유선으로 사용하신다면 자동으로 연결 됩니다.

와이파이를 사용하실 경우

# wifi-menu

를 이용해 사용하실 와이파이에 연결하시면 됩니다.

연결 후 

# ping -c 1 photoguraphy.com

결과 로스가 없으면 정상적으로 인터넷 사용이 가능합니다.

 

 

 

2. 파티션 작업

# lsblk

를 입력하면 현재 인식되는 저장장치들이 쭈르륵 나옵니다.

제 경우 사용할 저장장치 명이 nvme0n1 이네요.
(컴퓨터 구성에 따라 sda 등 다른 형태로 나타납니다)

장치 이름과 용량 확인 하시고

# fdisk -l

을 통해 해당 장치의 경로를 확인합니다.

/dev/nvme0n1 으로 확인 됩니다.

 

# cfdisk /dev/nvme0n1

레이블 타입은 gpt 로 선택합니다.
(UEFI가 아닌 BIOS부팅은 mbr(dos로 표시됩니다)로 선택하세요.)

 

새 디스크라면 아무것도 없겠지만 기존에 사용하던 디스크라면 보이시는 기존 파티션에서 리눅스를 설치할 공간을 DELETE 해 주세요.

전 리눅스만 사용하기 때문에 전부 다 지웠습니다.

이제 생긴 공간에 아치 리눅스를 설치 할 파티션을 만들어야 합니다.
(BIOS 부팅의 경우 모든 파티션은 primary로 지정합니다.)

 

먼저 부팅에 필요한 boot 파티션 부터 만들겠습니다

 

NEW 를 누르시고

용량은 256M

TypeEFI System으로 합니다.
(BIOS 부팅의 경우 필요 없습니다.)

 

다음은 swap 영역인데 이건 RAM용량이 부족할 경우 하드를 빌려 쓰는 공간입니다.

보통 자신의 RAM과 같은 사이즈로 지정하면 됩니다. (필요 없으면 안해도 돼요)

NEW 를 누르시고

용량은 8G (원하는 용량 만큼)

TypeLinux Swap 으로 합니다.

 

마지막으로 실제 사용하는 영역입니다. 이 부분은 필요하시다면 home, etc, usr 등 세분화 해도 되지만

데스크탑 용도로 사용하는 저는 그냥 root 파티션 하나만 만들었습니다.

NEW 를 누르시고

용량은 최대치 그대로 하고

Type Linux File System으로 합니다.
(BIOS의 경우 꼭 Bootable 설정해주세요.)

그리고 WRITE를 선택 후 QUIT로 과정을 마칩니다.

 

 

 

3. 포맷

이제 생성한 파티션을 포맷합니다.

# lsblk

를 이용해 다시 한번 파티션 이름을 확인하시고

부트 파티션은
(BIOS 부팅의 경우 필요 없습니다.)

# mkfs.vfat -F32 /dev/nvme0n1p1

스왑 파티션은

# mkswap /dev/nvme0n1p2

# swapon /dev/nvme0n1p2

root 파티션은

# mkfs.ext4 /dev/nvme0n1p3

으로 작업합니다.

 

 

 

4. 마운트

포맷까지 완료한 파티션들을 마운트 할 차례입니다.

# mount /dev/nvme0n1p3 /mnt

후 마운트 한 루트 파티션 안에 부트 폴더를 만들어 줍니다.
(BIOS 부팅의 경우 필요 없습니다.)

# mkdir /mnt/boot

그리고 만들어 진 부트 폴더에 부트 파티션을 마운트 합니다.
(BIOS 부팅의 경우 필요 없습니다.)

# mount /dev/nvme0n1p1 /mnt/boot

 

 

 

5. 설치를 빠르게

이제 리눅스를 설치할 사전 준비가 끝났는데 이대로 설치를 하면 시간이 너무 오래 걸리게 돼요.

이유는 기본 값인 해외 서버를 사용하게 되서 다운로드 속도가...ㅜㅜ

그래서 빠른 속도의 서버를 우선적으로 사용하도록 미러리스트를 수정 해 줘야 합니다.

다른 방법들도 있지만 간단하게 제 미러리스트를 다운 받습니다.

(다른 방법이란게 직접 미러서버 하나하나 접속해서 속도 체크하고 내림차순 정렬하는 방식이라

시간이 오래 걸려 미리 작업해 둔 제 미러서버 리스트 공유합니다.

2019년 7월 7일 정렬 한 미러리스트입니다.

+  2022년 8월 9일 미러리스트 업데이트.

)

# pacman -Sy wget; rm -rfv /etc/pacman.d/mirrorlist; wget -P /etc/pacman.d/ https://www.photoguraphy.com/share/mirrorlist

 

 

 

6. 리눅스 설치

이제 기본적인 리눅스의 골조를 설치하는 단계입니다.

# pacstrap /mnt base base-devel

전체 설치 과정 중에 가장 오래 걸리는 단계예요.

진행 되는 동안 잠시 쉬셔도 됩니다.

인터넷 회선과 서버상태가 좋다면 금방 끝나기도 해요.

 

 

7. 마운트 정보

지금 마운트 되어 있는 파티션 정보들 가진 파일을 만들어 두어야 이후 부팅 할 때 알아서 마운트를 진행할 수 있습니다.

#genfstab -U /mnt >> /mnt/etc/fstab

 

 

 


 

 

 

사실상 기본적인 설치는 완료된 상태이지만 이대로는 정상적인 사용이 불가하기에 몇몇 설정이 더 필요합니다.

이 설정들은 설치된 시스템 내부에서 진행해야 됩니다.

위의 과정까지 끝나셨다면 설치과정을 중단하거나 누락된 것이 있어도 4번째 과정인 마운트만 다시 하면

언제든 다시 설정을 진행 할 수 있습니다.

또 지금부터의 과정은 저장장치에서 진행되기 때문에 설치과정이 끝난 이후에도 남아있으니

필요하신 소프트웨어를 미리 설치하셔도 됩니다.

 

 

 1. 시스템 진입

# arch-chroot /mnt

 

 

 

2. pacman을 빠르게

앞서 5에서 작업한 내용은 설치될 시스템에 남아있지 않습니다. 그러므로 다시 한번 작업해 줍니다.

# pacman -Sy wget

# rm -rfv /etc/pacman.d/mirrorlist

# wget -P /etc/pacman.d/ https://www.photoguraphy.com/share/mirrorlist

 

그리고 전 vim 에디터를 주로 쓰기 때문에 이것도 미리 설치했습니다.

# pacman -Syyu vim

Syyu 옵션으로 시스템 업그레이드까지 함께 진행합니다.

 

 

 

3. root 암호설정

시스템의 관리자 계정인 root의 암호를 설정합니다.

# passwd

암호는 입력해도 화면상으로는 안보입니다. * 로 표시가 되는 경우가 없진 않지만 대부분 아무런 변화가 없습니다.

 

 

 

4. 로케일 설정

# vim /etc/locale.gen

뭔가 쭈욱 뜰텐데 전부 #으로 주석처리 되어있습니다.

필요한 부분만 #을 지우고 저장합니다.

일일이 찾기 힘드니 esc 누르고 :/en_US.UTF-8 을 입력해 검색 후

해당 라인 가장 앞의 #을 지워 언어 주석 설정을 해제합니다.

그리고 :/ko_KR.UTF-8 도 검색해 주석을 해제 해 줍니다.

esc 누르고 :wq 로 저장하고 나온 뒤

# locale-gen

 

 

 

5. 언어 설정

나중에 한글을 쓰겠지만 처음 설치한 경우 한글 폰트가 없어 사용하기가 힘들기 때문에 일단은 영어로 설정해 둡니다.

# export LANG=en_US.UTF-8

 

 

 

6. PC명 설정

# vim /etc/hostname

그리고 원하는 PC이름을 입력 후 :wq로 저장하고 나옵니다.

 

 

 

7. 시간 설정

한국 기준으로 설정합니다.

# ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime

그리고 실제시간과 하드웨어 타임을 동기화 합니다.

 

# timedatectl set-ntp true

# hwclock --systohc --utc

 

 

 

8. 유저 설정

이제 사용자를 추가 합니다.

# useradd -m -g users -G wheel -s /bin/bash 이름

그리고 사용자 암호를 설정합니다.

# passwd 이름

암호 설정 후 sudo 사용을 편하게합니다.

# visudo

 %wheel ALL=(ALL) NOPASSWD: ALL 앞에 있는 #을 지웁니다.

 

 

 

9. 인터넷 설치

이제 마지막 작업인 부트로더 설치에 앞서 재부팅 후에도 인터넷이 사용 가능하도록 설정을 해 줘야합니다.

유선으로 사용하실 경우

# systemctl enable dhcpcd

를 입력해 줍니다. 유선의 경우 재부팅 이후 설정해도 무관합니다.

 

하지만 와이파이로만 사용해야하는 경우에는 재부팅 전에 꼭 아래 과정을 진행 해 주셔야 합니다.

# pacman -S networkmanager

# systemctl enable NetworkManager.service

 

 

 

10. 부트로더 설정

이제 마지막 부트로더 설정입니다. 이것만 하면 끝입니다 컴퓨터가 부팅이 되야 뭐라도 할 수 있으니까요.

저는 UEFI 기준으로 설치했고 systemd-boot를 사용했습니다. (레거시로 사용하시는 분은 GRUB 설정을 하셔야 합니다)

# bootctl --path=/boot install

 

# vim /boot/loader/loader.conf

그리고 이렇게 작성합니다.

default arch

editor 1

timeout 1

:wq로 저장하시고

 

#vim /boot/loader/entries/arch.conf

 

title ArchLinux

linux /vmlinuz-linux

initrd /initramfs-linux.img

options root=/dev/nvme0n1p3 rw

이렇게 작성하신 후 저장하고 나옵니다.

 

 

BIOS 환경의 경우 GRUB 설정을 진행합니다.

# pacman -S grub

# grub-install --target=i386-pc /dev/nvme0n1

# grub-mkconfig -o /boot/grub/grub.cfg

그리고 부팅시간을 줄이기 위해 (선택사항)

# vim /boot/grub/grub.cfg

timeout 5로 되어 있는 것들을 찾아 timeout 1로 바꿔줍니다.

 

 

이제

# reboot

로 재부팅하시고 컴퓨터가 꺼지면 설치 미디어를 제거합니다.

 

 

 

이제 재부팅 후 로그인 화면이 보이신다면 일단 설치는 성공입니다.

 

곧이어 Xfce환경으로 초기 설정하는 과정 알려드리도록 하겠습니다.

 

 

[아치] ARCH 리눅스 xfce 세팅 하기 (리눅스)

 

 

 

1 thoughts on “[아치] ARCH 리눅스 설치 하기_UEFI (리눅스)

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다