[UPDATED 18.02.17.] 최근 Linux 커널 버전의 문제인지 제대로 작동하지 않는 문제가 있어 이를 바로 잡았다. 잘못된 설명도 수정하였다.
[UPDATED 17.11.21.] xorg가 서버 유틸을 apps로 명칭을 변경하여 이를 반영하였다. 또한 불필요한 과정을 제거하고 Microcode를 설치하여 부트시 발생하는 에러를 잡았다.
지금껏 웹개발 환경을 Lubuntu로만 사용해왔다. 아무래도 Ubuntu가 편했고, 가벼웠기 때문이었다. 하지만 최근 개발을 위해 여러 프로그램을 빌드하다보니 Ubuntu가 썩 낭만적이진 않았다. 그러다 ArchLinux를 만났다. 일단 다른 것보다 내가 쓰는 모든 툴들이 단순히 Install만 하면 된다는 점은 큰 장점이었다. 수십번씩 컴파일하고 의존성 모듈을 설치하는 과정은 리눅스를 쓰는 이라면 충분히 공감할 것 같다.
하지만 Arch Linux의 가장 큰 문제는 설치였다. 다른 건 다 좋은데, 설치 과정이 다른 OS와 달리 파티션부터 본인이 다 설치해야했다. 사용하고는 싶은데, 진입 장벽이 높았다. 따라서 그간 설치 과정을 메모도 할 겸 이 글을 작성해본다.
과정은 크게 4단계로 나뉜다. 복잡한 것은 파티션 설정 정도다.
파티션 설정
언어 및 지역설정
호스트네임 및 네트워크 설정
유저 및 부트로더 설정
먼저 인터넷이 제대로 작동하는지 확인한다.
lsblk 명령어로 해당 파일 시스템을 확인한다. 이 때, sda이면 sda로 그게 아니면 vda로 적용한다.
파티션을 만들기 위해 cfdisk를 실행한다. 이후 dos 환경으로 작업을 이어간다. 기본적으로 메인 파티션, SWAP 파티션 그리고 보조 파티션을 만들어야 한다. 각각 비율은 10:1:9로 하는 것이 일반적이다. 모든 파티션엔 primary로 적용한다.
이제 파일 시스템을 마운트한다.
이제 Arch Linux를 올릴 준비가 되었다. 빠르게 다운로드하기 위해 가까운 미러 DB를 추가한다.
이제 Arch Linux의 base를 설치한다. 가장 시간이 소요되는 구간이다.
파티션을 인식하기 위해 fstab를 설치한다. 마운트된 디스크에 쉽게 접근할 수 없도록 chroot 명령어도 내린다.
OS 언어와 위치를 설정한다.
타임존도 설정한다. 시스템 시간은 bus 작업이 필요하므로 이후 진행한다.
32비트 프로그램을 돌릴 수 있도록 multilib를 허용한다.
호스트네임과 네트워크를 설정한다.
루트 비밀번호와 유저를 생성한다.
부트로더를 설정한다.
이제 작업은 끝났다. 디스크를 언마운트하고, 재부팅한다.
만일 재부팅 후 로그인이 되지 않는다면, linux 커널대신 linux-lts를 사용해 재설치한다.
추가로 데스크탑 환경이 필요하다면, lxde나 gnome 등을 설치하면 된다.
이렇게 설치를 완료하고 나면 폰트가 로딩되지 않는 경우가 발생한다. 이럴 땐 폰트를 설치하면 된다. 여기선 ttf-d2coding을 설치한다.1 주의할 점은 반드시 X Window System 설정이 끝나고 설치해야 한다는 것이다. 그렇지 않으면 부트 지연이 발생한다.
시스템 시간을 하드웨어 시간과 맞춘다.
이제 한글을 입력할 수 있도록 nimf 입력기를 설정한다.
이제 추가로 필요한 부분을 알아서 설치하면 된다. Arch Linux의 가장 큰 장점은 모든 repo가 연결되어 자동으로 모든 패키지를 업데이트 할 수 있다는 점이다. 따라서 필요하다면 pacman -Syu을 실행하면 된다.