Installation guide (한국어)
이 문서는 공식 설치 매체로 부팅된 라이브 시스템에서 아치 리눅스를 설치하는 방법을 안내합니다. 설치 매체는 문서 Install Arch Linux with accessibility options에서 설명하고 있는 접근성 기능을 제공합니다. 다른 방식의 설치 방법에 대해서는 Category:Installation process (한국어) 를 확인하십시오.
설치하기 전에 FAQ를 읽어 보십시오. 이 안내서가 어떤 원칙에 따라 작성되었는지는 읽기 도움을 보십시오.
자세한 사항은 여기 안내서에서 링크로 제공하는 해당 아치위키 항목이나 각 프로그램의 man page를 보십시오. 대화나 질문으로 다른 사용자에게서 도움을 받으려면 IRC 채널이나 포럼을 이용하십시오.
아치 리눅스는 메모리가 최소 512MB인 x86_64 호환 기계에서 실행되어야 하나, 설치를 위한 라이브 매체를 부팅하기 위해서는 추가 메모리가 필요합니다. [1] 기본적인 설치는 2 GiB 미만의 저장공간을 사용할 것입니다. 설치 과정 중 원격 저장소로부터 패키지를 가져와야 하므로, 이 문서는 유효한 인터넷 연결이 있다고 간주합니다.
설치에 앞서 할 일
설치 매체 다운로드하기
다운로드 페이지를 방문하여 부팅하고 싶은 방법에 따라 ISO 또는 netboot 이미지, 그리고 그에 맞는 GnuPG 서명을 다운로드하십시오.
서명 검증
이미지를 사용하기 전에, 특히 악의적으로 변조된 파일을 제공할 가능성이 있는 HTTP 미러에서 다운로드하는 경우, 서명을 검증하는 것이 권장됩니다.
GnuPG 가 설치되어있는 시스템에서는, (다운로드 페이지의 Checksums 항목 아래의) PGP signature를 ISO파일이 있는 저장공간에 다운받고 아래 명령어를 통해 검증하십시오:
$ gpg --keyserver-options auto-key-retrieve --verify archlinux-"버전"-x86_64.iso.sig
다른 방법으로, 이미 설치되어있는 아치 리눅스에서 다음을 실행하십시오:
$ pacman-key -v archlinux-"버전"-x86_64.iso.sig
- 서명 자체는 archlinux.org가 아닌 미러 사이트에서 다운로드한 경우 변조될 수 있습니다. 이 경우, 서명을 디코딩하기 위해 사용된 공개키가 다른, 신뢰 가능한 키로 서명되었는지 확인하십시오.
gpg
명령어가 공개키의 지문을 출력할 것입니다. - 서명의 사실성을 검증하기 위한 다른 방법은 공개키의 지문이 ISO파일을 서명한 Arch Linux developer 의 키와 동일한지 확인하십시오. 키 인증을 위한 공개키 절차에 대해서는 Wikipedia:Public-key cryptography를 보십시오.
설치 매체 준비
설치 이미지는 대상 기기에 USB 드라이브, 광학 디스크 또는 PXE가 있는 네트워크를 통해 제공될 수 있습니다. 선택한 설치 이미지를 통해 설치 매체를 준비하기 위해 적합한 문서를 따르십시오.
라이브 환경 부팅
- 현재 부팅 장치를 아치 리눅스 설치 매체가 있는 장치로 설정하십시오. 대체로 이는 POST 단계에서, 화면에 표시되는 키를 입력하면 됩니다. 자세한 것은 사용중인 메인보드의 설명서를 참조하십시오.
- 설치 매체의 부트로더 화면이 나타나면, "Arch Linux install medium"을 선택하고
Enter
를 눌러 설치 환경으로 진입하십시오. - 첫번째로 가상 콘솔로 루트 사용자로 로그인한 Zsh 쉘 프롬프트가 제공될 것입니다.
다른 콘솔로 전환하기 위해서는-예를 들어, 이 가이드를 Lynx를 설치 과정에서 함께 확인하기 위해-Alt+"화살표"
단축키를 사용하십시오. 구성 파일을 편집하기 위해서는, mcedit(1), nano 그리고 vim 을 사용할 수 있습니다. 설치 매체에 포함된 패키지 목록에 대해서는 pkglist.x86_64.txt 를 확인하십시오.
키보드 레이아웃 설정
기본 콘솔 키맵은 US(미국)입니다. 사용할 수 있는 레이아웃은 아래 명령어를 통해 확인할 수 있습니다.
# ls /usr/share/kbd/keymaps/**/*.map.gz
레이아웃을 변경하려면, 해당 파일 이름을 경로와 파일 확장자를 제외하고 loadkeys(1)에 덧붙입니다. 가령, German(독일) 키보드 레이아웃을 설정하려면 다음 명령어를 사용합니다.
# loadkeys de-latin1
콘솔 폰트는 /usr/share/kbd/consolefonts/
에 있으며 키맵처럼 setfont(8)로 설정할 수 있습니다.
부트 방식 확인
부트 방식을 확인하려면, efivars 디렉토리를 나열하십시오.
# ls /sys/firmware/efi/efivars
명령어가 디렉토리를 에러 없이 보여준다면, 시스템이 UEFI모드로 부팅한 것입니다. 만약 디렉토리가 존재하지 않는다면, 시스템이 BIOS (또는 CSM) 모드로 부팅했을 수 있습니다. 만약 시스템이 원하는 모드에서 부팅되지 않았다면, 사용자의 메인보드 설명서를 참조하십시오.
인터넷에 연결
라이브 환경에서 인터넷 연결을 설정하기 위해서는 다음 단계를 따르십시오.
- 사용자의 네트워크 인터페이스가 나열되어있고 활성화되어있는지 확인하십시오. 예를 들어, ip-link(8):
# ip link
를 통해 확인할 수 있습니다. - 무선 연결과 무선 광역 네트워크에서는, 카드가 rfkill로 차단되어있지 않은지 확인하십시오.
- 네트워크에 연결하십시오:
- 네트워크 연결을 구성하십시오:
- DHCP: 동적 IP주소와 (systemd-networkd와 systemd-resolved를 통한) DNS 서버 할당은 이더넷, 무선 인터넷과 무선 광역 인터넷에서는 추가적인 설정 없이 동작할 것입니다.
- 정적 IP 주소: Network configuration#Static IP address 를 따르십시오.
- 네트워크 연결 여부는 ping:
# ping archlinux.org
을 통해 확인할 수 있습니다.
시스템 시간 설정
timedatectl(1)을 사용해 시스템의 시간을 정확하게 설정하십시오.
# timedatectl set-ntp true
timedatectl status
을 실행해 현재의 상태를 확인하십시오.
디스크 파티션 나누기
라이브 시스템에 의해 인식되었을때, 디스크들은 /dev/sda
, /dev/nvme0n1
또는 /dev/mmcblk0
와 같은 블럭 장치로 할당됩니다. 이 장치들을 식별하기 위해서는 lsblk나 fdisk를 사용하십시오.
# fdisk -l
rom
, loop
또는 airoot
로 끝나는 결과는 무시되어도 무방합니다.
다음 파티션들은 설치할 장치에 반드시 필요합니다.
- 루트 디렉토리
/
를 위한 파티션 하나. - UEFI 모드에서의 부팅을 위한 EFI 시스템 파티션
LVM, 디스크 암호화 혹은 RAID를 위한 스택 블록 장치를 만들려면 지금 하십시오.
파티션 테이블을 수정하려면 fdisk나 parted를 사용하십시오. 예를 들어:
# fdisk /dev/파티셔닝될 디스크
와 같이 사용할 수 있습니다.
- 만약 디스크가 나타나지 않는다면, 디스크 컨트롤러가 RAID모드에 있지 않은지 확인하십시오.
- 부팅하고자 하는 디스크가 EFI 시스템 파티션을 이미 가지고 있다면, 새로 생성하지 말고, 기존의 파티션을 사용하십시오.
- 스왑 공간은 지원하는 파일 시스템에서 스왑 파일을 통해 설정될 수 있습니다.
예시 레이아웃
마운트 위치 | 파티션 | 파티션 종류 | 권장 크기 |
---|---|---|---|
/mnt/boot 1
|
/dev/efi_system_partition
|
EFI system partition | At least 300 MiB |
[SWAP]
|
/dev/swap_partition
|
Linux swap | 512 MiB 이상 |
/mnt
|
/dev/root_partition
|
Linux x86-64 root (/) | 장치의 남은 공간 |
/mnt/efi
와 같은 추가적인 마운트 위치 또한, 사용되어진 부트로더가 커널과 initramfs이미지를 루트 모듈로부터 불러올 수 있다면 사용할 수 있습니다. Arch boot process#Boot loader에 있는 경고를 읽으십시오.
마운트 위치 | 파티션 | 파티션 종류 | 권장 크기 |
---|---|---|---|
[SWAP]
|
/dev/swap_partition
|
Linux swap | 512 MiB 이상 |
/mnt
|
/dev/root_partition
|
Linux | 장치의 남은 저장공간 |
Partitioning#Example layouts 또한 확인하십시오.
파티션 포맷
파티션을 나눈 후에 각 파티션은 알맞은 파일 시스템으로 포맷되어야 합니다. 자세한 사항은 파일 시스템문서를 참고하십시오.
예를 들어, /dev/sda1
의 루트 파티션을 ext4
로 포맷하려면 다음을 실행하십시오.
# mkfs.ext4 /dev/sda1
스왑을 위한 파티션을 만들었다면, mkswap(8)을 이용해 초기화하십시오.
# mkswap /dev/swap_partition
/dev/*_partition
을 적합한 블록 장치 경로로 변경하십시오.EFI 시스템 파티션을 만들었다면, mkfs.fat(8)을 이용해 FAT32로 포맷하십시오.
# mkfs.fat -F 32 /dev/efi_system_partition
파일 시스템 마운트
/mnt
에 루트 파티션의 파일 시스템을 마운트해야 합니다.
예) 루트 볼륨이 /dev/root_partition
인 경우:
# mount /dev/sda1 /mnt
(/mnt/efi
와 같은) 남아 있는 파티션의 마운트 포인트를 만들어서 파티션을 알맞게 마운트하십시오.
UEFI 시스템에서는, EFI 시스템 파티션을 마운트하십시오.
# mount --mkdir /dev/efi_system_partition /mnt/boot
스왑 볼륨을 만들었다면, swapon(8)을 사용하여 활성화하십시오.
# swapon /dev/swap_partition
genfstab(8)이 나중에 마운트된 파일 시스템과 스왑 공간을 인식할 것입니다.
설치
미러 선택하기
설치할 패키지는 미러 서버에서 다운로드해야하는데, 미러 서버는 /etc/pacman.d/mirrorlist
에서 지정됩니다. 라이브 시스템에서는 인터넷 연결 후에, reflector가 설치 이미지가 만들어진 시점에서 동기화 상태 및 속도 순으로 20개의 미러를 선택하고 다운로드율에 따라 정렬합니다.
패키지를 다운로드할 때 미러 목록에서 위에 있는 미러 서버순으로 우선 순위가 주어집니다. 따라서 자신의 위치나 기타 조건에 맞게 이 미러 목록을 수정할 수 있습니다.
pacstrap이 이 미러 목록 파일을 새로운 시스템으로 복사하기 때문에 이 파일을 제대로 수정해 둘 필요가 있습니다.
필수 패키지 설치하기
pacstrap(8) 스크립트를 사용해 base 패키지 그룹과 리눅스 커널, 기본적인 하드웨어를 위한 펌웨어를 설치합니다.
# pacstrap /mnt base linux linux-firmware
base 패키지는 라이브 설치에서의 모든 도구를 포함하고 있진 않습니다. 따라서, 완전히 작동하는 시스템 구축을 위해서는 추가적인 패키지 설치가 필요할 수 있습니다. 자세하게는, 다음과 같은 패키지 설치를 고려해보십시오.
- 파일 시스템 관리를 위한 유저 도구,
- RAID 또는 LVM파티션에 접근하기 위한 도구,
- linux-firmware 에 포함되어있지 않은 펌웨어 (예: 사운드카드를 위한 sof-firmware),
- 네트워킹을 위한 소프트웨어 (예: 네트워크 관리자나 DHCP 클라이언트),
- 텍스트 편집기,
- man과 info 페이지에 있는 문서에 접근하기 위한 패키지: man-db, man-pages, texinfo.
패키지 그룹 등을 추가로 설치하려면 패키지 이름을 위의 pacstrap 명령어 뒤에 (공백으로 구분하여) 덧붙이거나, chroot 단계에서 pacman 명령으로 패키지를 설치할 수 있습니다. 라이브 환경에서 사용 가능한 패키지는 pkglist.x86_64.txt에서 찾을 수 있습니다.
시스템 설정하기
Fstab
다음의 명령어를 사용해 fstab 파일을 생성합니다. 이때 UUID를 사용하려면 -U
옵션을, 레이블을 사용하려면 -L
옵션을 사용할 수 있습니다.
# genfstab -U /mnt >> /mnt/etc/fstab
생성된 /mnt/etc/fstab
파일을 확인해 오류가 있으면 수정하십시오.
Chroot
새로운 시스템으로 Change root합니다.
# arch-chroot /mnt
시간대
시간대를 설정합니다.
# ln -sf /usr/share/zoneinfo/지역/도시 /etc/localtime
hwclock(8)를 실행해 /etc/adjtime
를 생성합니다.
# hwclock --systohc
위 명령은 하드웨어 클럭을 UTC로 설정합니다. 자세한 내용은 시간 표준을 참고하십시오.
현지화
화
/etc/locale.gen
에서 en_US.UTF-8 UTF-8
과 필요한 로캘을 찾아 주석 표시를 제거하고 다음 명령어를 실행해 로캘을 생성합니다.
# locale-gen
locale.conf(5) 파일을 생성 하고, LANG 변수를 그에 따라 설정합니다.
예)
/etc/locale.conf
LANG=en_US.UTF-8
키보드 레이아웃을 설정하고자 한다면 vconsole.conf(5)에 변경사항을 반영하십시오.
예)
/etc/vconsole.conf
KEYMAP=de-latin1
네트워크 구성
hostname(5) 파일을 만드십시오.
/etc/hostname
myhostname
새로 설치한 환경의 네트워크 구성을 완료하십시오. 이는 적합한 네트워크 관리 도구 설치를 포함할 수 있습니다.
Initramfs
새로운 initramfs를 따로 생성할 필요는 없습니다. pacstrap으로 커널 패키지를 설치할 때 mkinitcpio가 실행되었기 때문입니다.
LVM, 디스크 암호화 또는 RAID에서는, mkinitcpio.conf(5)를 수정하고 initramfs이미지를 다시 만드십시오.
# mkinitcpio -P
루트 비밀번호
루트 사용자의 비밀번호를 설정하십시오.
# passwd
부트로더
리눅스를 지원하는 부트로더를 설치해야 합니다. 인텔 혹은 AMD CPU가 있다면, 마이크로코드를 활성화하십시오.
재부팅
chroot 환경에서 exit
를 입력하거나 Ctrl+D
를 눌러서 그 환경을 종료하십시오.
원한다면 앞서 마운트했던 파티션들을 umount -R /mnt
명령으로 직접 언마운트할 수도 있습니다. 이렇게 하면 "사용중"인 파티션을 알 수 있고 fuser(1)로 그 원인을 찾아볼 수 있습니다.
마지막으로 reboot
명령으로 컴퓨터를 재부팅합니다. 마운트된 파티션이 남아있다면 systemd가 자동으로 언마운트할 것입니다. 설치 매체를 꼭 제거한 후에 새로운 시스템에 루트 계정으로 로그인하십시오.
설치가 끝난 후
시스템 관리에 대한 안내나 GUI 환경 설정, 소리, 터치패드 등 추가적으로 해야할 일은 일반 추천 사항을 보십시오.
관심을 가질 만한 프로그램 목록도 참고하십시오.