· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
아치리눅스설치안내서


아치 리눅스 0.8 (Voodoo) 설치 안내서

2007년 2월 22일 판 1.02 Dennis Herbrich <Mdennis@archlinux.org> Tobias Powalowski <Mtpowa@archlinux.org> Judd Vinet <Mjudd@archlinux.org>

개요

이 문서는 아치 리눅스 배포판 0.8 판(Voodoo)의 일반 사용자 용 문서이다. 이 문서는 필요한 파일 얻기, 배포판 설치 그리고 기본적인 띄우기(boot)가능 시스템 구축을 다룬다. 추가적으로, 시스템 구성과, pacman 꾸러미 관리자와 ABS와 같은 아치 고유의 도구들에 대해 간단히 언급한다.

서론

아치 리눅스란 무엇인가?

아치 리눅스는, 원래 Per Lidén에 의해 개발된 훌륭한 배포판인 [http]CRUX의 착상에 기반을 둔, i686에 최적화된 리눅스 배포판이다.

아치는 빠르고, 가볍고, 유연한 동시에 단순하다. 이 말들은 터무니 없는 선전문구가 아니라, 모두 사실이다. 아치는 i686 처리 장치에 최적화되어 있어서, 당신의 cpu 사이클에서 더 많은 것을 얻을 수 있다. 레드햇 등에 비해 가벼우며, 단순한 설계는, 여러분이 구축하고자 하는 어떤 종류의 시스템으로도 쉽게 확장하여 만들 수 있게 한다.

하나의 명령어로 전체 시스템을 갱신(upgrade)할 수 있게 하는, 사용하기 쉬운 이진(binary) 시스템이 근간을 이루고 있다. 또한 아치는, 쉽게 꾸러미(package)를 만들 수 있게 하는 포트 유사 꾸러미(package) 제작 시스템(Arch Build System-ABS)을 사용하는데, 하나의 명령어로 ABS를 동기화 시킬 수 있다. 그리고, 두말 하면 잔소리지만, 역시 하나의 명령으로 전체 시스템을 재설치할 수 있다. 모든게 아주 단순하고 명백하게 이루어진다.

아치 리눅스는, 소프트웨어들을 최신의 안정 판으로 유지하기 위해 애쓰고 있다. 우리는 상당히 합리화된 핵심 꾸러미(package) 모음을 제공하는 동시에, AL 개발자들에 의해 관리되는 증대하는 extra 꾸러미(package) 모음을 제공한다. 또한, 원한다면 누구나 사용할 수 있는 글자 그대로 수천개의 추가적인 꾸러미들을, 신뢰받는 공동체 구성원들이 AUR에 제공하고 있다.

단순하고 가볍게 한다는 목표로, 리눅스 시스템에서 상대적으로 쓸모없는 부분(/user/doc이나 info 페이지와 같은)은 빼버렸다. 내 개인적인 경험으로는 이것들은 거의 사용되지 않으며, 필요하다면 넷에서 동일한 정보를 구할 수 있다. 맨페이지들은 언제라도 (있다)!

아치 리눅스는 또한, hotplug와 udev 지원과 같은, 리눅스 사용자들이 이용 가능한 보다 새로운 기능을 사용하기 위해 노력하고 있다. 물론 아치 리눅스 0.8 (Voodoo)은 2.6 리눅스 커널과 udev를 기본으로 사용하고, XFS/JFS, RAID/LVM 및 암호화된(encrypted) 파일시스템을 지원한다.

허가

아치 리눅스, pacman, 문서, 스크립트들은 Judd Vinet에 저작권 ©2002-2007 이 있으며, [http]the GNU Public License하에 허가가 주어져 있다.

출처와 의견반영

이 문서는 Judd Vinet <Mjudd@archlinux.org>의 작업에 대폭 의존하고 있다. 일부 교정과 상당한 수정 및 추가가 Dennis Herbrich <Mdennis@archlinux.org>와 Tobias Powalowski <Mtpowa@archlinux.org>에 의해 이루어 졌다. 교정과 의견반영이 [http]오류추적자(bugtracker)에게 제공되어야 한다. 수많은 사람들이 교정을 제시하고 개선을 제안함으로써, 공식 아치 리눅스 문서의 발전에 기여했으며 기여할 것이다. 그들 모두를 목록에 올리는 것은 불가능하다. 하지만, 여러분은 자신이 누구인지 알고 있고, 여러분의 도움 없이는 유지 발전이 거의 불가능하다. 감사한다!

아치 리눅스 설치하기

설치전

아치 리눅스는 i686 처리장치에 최적화되어 있어서, 어떠한 저사양 즉 호환되지 않는 x86 CPU(i386,i486,i586) 세대들에서는 동작하지 않을 것이다. 펜티업 II 혹은 AMD K6-2 처리장치나 그 이상이 요구된다. x86-64 아키텍처도 공식적으로 지원된다.
i586과 ppc 용 꾸러미(package)를 제공하는 공동체 추진 사업이 있다. 추가적인 정보를 알려면 [http]이 사이트를 보라.

아치 리눅스를 설치하기 전에, 여러분은 사용하고자 하는 설치 방법을 결정해야 한다. 아치 리눅스는 CD 롬 설치를 위한 세가지 다른 띄우기(boot)가능 ISO 이미지를 제공한다.

선호되는 설치 방법은 다루기 쉬운 CD-ROM 기반 설치로서, 공급되는 꾸러미들(packages)만 다른 세가지 설치 매체를 제공한다. 이 이미지들 중 어떤 것을 사용하던 간에, FTP를 통해 꾸러미들을 얻을 수 있도록 설치 프로그램에게 지시할 수 있다. 그리고, 모든 이미지들은 최후의 수단인 복구 CD로 사용할 수 있다.

  • 완전한(full) 550MB arch-0.8.iso는 발표시점의 current 꾸러미 저장소 전체를 포함하고 있다. 무슨 꾸러미가 포함되었는지 자세히 알려면, 온라인에서 가능한 [http]꾸러미 목록을 점검하도록 하라. 이 이미지로 설치 매체를 만들어서, 완전히 동작하는 리눅스 시스템을 설치할 수 있을 것이다. 그리고, 창 관리자나 보통 필수적인 것으로 여겨지지 않는 다량의 응용 소프트웨어 같은, 얼마간의 부가기능을 포함할 수 있을 것이다. 하지만 당신이 사용하고자 하는 애플리케이션들이 포함되어 있지 않을 수 있다. 보통 대상 장치에 인터넷 연결이 되어 있지 않다면, CD에서 이용할 수 있는 꾸러미(package) 수가 가장 많은, 이 매체를 얻는 것이 아마 좋은 생각일 것이다.

  • 상당히 작은 arch-0.8-base.iso(150M)는 basekernels 꾸러미 범주들(package categories)만을 포함하는데, 다른 면에서는 동일하다. 얼마전부터 필요한 꾸러미들(packages)이 base에 들어갔기 때문에, 셋업하는 동안 RAID/LVM을 사용할 계획이더라도, 더 이상 완전한 iso 이미지(full iso image)를 내려 받을 필요가 없다는 사실에 유념하라. 이 이미지로 만든 매체로 설치하므로써, 명령줄(command line)로 사용할 작정인, 허식없는 완전히 동작하는 리눅스 시스템을 만들 수 있다. FTP 설치를 실행하기 어려울 정도로 상당히 느리거나 구축하기 힘든 인터넷 연결을 사용하는, 기본적인 동작 시스템과 거기서 출발하고자 하는, 최소주의자나 전문가들에게 이 이미지가 더할 나위 없이 적합하다.

  • 마지막으로 대역폭을 고려하여 이용 가능한 새로운 선택이 있다. 작은 22MB arch-0.8-ftp.iso는 설치 과정을 실행 할 수 있는 최소한의 것만을 가지고 있다. 이 매체는 꾸러미들(packages)을 전혀 가지고 있지 않다. 따라서, 이것으로는 FTP 설치로만 사용 가능하다. 빠르고 셋업하기 쉬운 인터넷 연결을 사용하거나, LAN에 꾸러미 저장소 서버를 가지고 있는 한. 이것은, 22MB만 사용하여 아치리눅스 설치를 시작하는 가장 빠른 길이며, 다른 이미지들에 포함된 배포 꾸러미 판들(release snapshot package versions) 대신에 설치 시점의 최신 꾸러미들을 사용할 수 있다는 부가적인 이점을 가진다. 물론 설치하고자 하는 모든 꾸러미들은 어디에선가 내려받아야 하지만, 적어도 설치 직후에 시스템을 갱신(update)할 필요가 없어서, 약간의 혼란을 피할 수 있다. 통신망 연결이 싸고 빠르다면, 이 이미지를 선택하도록 하라.

당신의 컴퓨터에 cdrom 드라이브가 없다면, 당신은 당연히 난처하게 될 것이다.

이제 띄우기(boot)가능 아치 설치 CD 이미지를 구하라. 열거된 [http]미러 리스트 중 하나에서 최신 ISO를 내려받아 굽던지, 혹은 단지 전화연결이 속도를 낼 수 없거나 cd 라이터가 없다면 다른 사람에게서 구워 달라고 하던지 해서... 또한 거의 전세계로 배달되는 OSCDisc로 부터 온라인 [http]CD 구매를 할 수 있다.

한걸음 더 나아가 오래된 ISO로 설치하는데 우려할 필요가 없는데, 일단 기본 시스템을 구축해 놓으면 최신 브랜치로 시스템을 갱신(upgrade)하는 것은 식은 죽 먹기이기 때문이다. 최소한 당신이 광대역 연결을 사용한다면!
이제는, 설치과정이 진행되는 동안 인테넷에 연결하기 위해, 전화 PPP 연결을 사용하는 것이 지원된다. ppp 도구들, rp-pppoe와 ISDN 사용자 도구들이 설치 매체에 포함되어 있다.

0.8 Iso들이 이제는 설치된 아치 시스템처럼 동작한다. 여기 가장 두드러진 항목들이 있다:
  • 설치환경에서 어떤 다른 필요 꾸러미를 설치할 수 있도록 pacman이 포함되었다.
  • /etc/rc.d/와 /etc/rc.conf 지원이 완성되었다.
  • ssh, telnet 그리고 portmap 지원들을 포함한 아치 통신망(network) 지원이 완성되었다.
  • 맞춤 설정 파일들이 지원된다: 어떤 매체든 /config 디렉토리와 파일들을 사용하여, /etc/ 설치환경에 복사될 것이다.
  • 띄우기(boot)때 부가적으로 꾸러미들을 올린다: 어떤 매체든 pacman 꾸러미들을 포함하는 /packages 디렉토리를 사용하여, 띄우기(bootup)시에 설치될 것이다.
  • 인테넷상에서 통신이 가능하도록 링크(links)와 naim이 포함되었다.
  • kexec 지원이 완성되었다.

아치 리눅스를 확실히 설치하는 신참자에게 가장 친숙한 방법은, CD로 부터 기반 시스템(base system)과 온라인 연결을 위해 필요한 모든 것들을 설치하고 나서, 인터넷 연결 구축 후 완전한 시스텝 업그레드를 수행하고, 원하거나 필요한 다른 꾸러미(package)들을 추가하는 것이다.

아치 리눅스 설치 시도 전에 알아 두어야 할 다른 사항은, 무슨 하드 드라이버가 준비되어 있고, 무슨 모듈을 올릴 지, 그리고 lilo.conf와 rc.conf와 같은 몇가지 중요 시스템 파일을 어떻게 수정할 것인지에 대해서, 설치할 동안 당신은 몇가지 질문을 받는다는 사실이다. 여기서 설치 프로그램은 당신에게 도움을 주지 않을 것이며, 사람들에게 알려진 혹은 알려지지 않은 어떠한 잠정적인 설정으로도 안내하지 않을 것이다. 당신이 뭘 넣고 뭘 뺄지 알고 있다고 가정한다. 이것은 신참자들에게 상당한 요구사항이다. 그래서 이것이 두렵다면, 당신이 시스템을 완전히 망쳐놓기 전에, 당신에게 불명확한 것들이 있다면 질문 받을 것에 대한 최소한의 대략적인 이해을 얻기 위해서, 이 전체 안내서를 확실히 다 읽고, IRC, [http]포럼이나 여러분 주위의 리눅스 전문가에 문의하도록 하라. 물론 당신은 무모하게 전투에 임해서 동작할 때까지 서툴게 만지작거리며 시도할 수 있지만, 경고받지 않았다고 나중에 누구에게 얘기하지 마라. 말하자면 그렇다는 거고, 그렇게까지 나쁘진 않다.

필요한 것

  • 리눅스와 당신 시스템에 대한 실무 지식, 특히 당신 하드웨어
  • 아치 리눅스 설치 매체 ( [http]미러목록을 보라)
    o 아치 리눅스 설치 CD
  • i686 기반 컴퓨터나 x86-64 컴퓨터 (PPro, Pentium 2 혹은 그 이상. Athlon/Duron 등. AMD K6, Transmeta Crusoe, CyrixIII, 와 VIA-C3 는 지원되지 않는다는 사실에 주의하라.)
  • 96 MB RAM
  • 얼마간의 시간 낭비

아치 리눅스 얻기

당신은 [http]내려받기 페이지에 실린 미러들에서 아치 리눅스를 내려받을 수 있다. 참고용으로 아래 미러들이 실려있다 (이것들은 케케묵은 것일 수 있음에 주의하라; 최신 목록은 웹페이지를 참고하라):
DOWNLOAD MIRRORS
[http]prdownloads.sourceforge.net전세계
[ftp]mirror.pacific.net.au호주
[ftp]gd.tuwien.ac.at오스트리아
[ftp]ftp.belnet.be벨기에
[http]mirror.vmmatrix.net중국
[ftp]ftp.sh.cvut.cz체코 공화국
[ftp]ftp.estpak.ee에스토니아
[ftp]mir1.archlinuxfr.org프랑스
[ftp]mir2.archlinuxfr.org프랑스
[http]mirrors.jakimowicz.com프랑스
[ftp]ftp.tu-chemnitz.de독일
[ftp]ftp.hosteurope.de독일
[ftp]ftp.pangora.org독일
[ftp]ftp.parrswood.net영국
[ftp]ftp.tu-chemnitz.de그리스
[ftp]ftp.heanet.ie아일랜드
[ftp]mi.mirror.garr.it아탈리아
[ftp]saule.mintis.lt리투아니아
[ftp]ftp.nluug.nl네덜란드
[ftp]ftp.surfnet.nl네덜란드
[ftp]sunsite.icm.edu.pl폴란드
[ftp]mirror.icis.pcz.pl폴란드
[http]darkstar.ist.utl.pt포르투칼
[ftp]cesium.di.uminho.pt포르투칼
[ftp]ftp.iasi.roedu.net루마니아
[ftp]archlinux.puzzle.ch스위스
[ftp]cle.linux.org.tw대만
[ftp]ftp.nethat.com미국
[ftp]ftp.ibiblio.org미국
[ftp]ftp-linux.cc.gatech.edu미국
[ftp]mirror.cs.vt.edu미국
[http]www2.cddc.vt.edu미국

설치 매체 준비

CD 설치
  1. 0.8/iso/<당신 아키텍처>/arch-0.8.iso를 내려받아라 (경로는 미러 루트와 관련된다)
  2. 0.8/iso/<당신 아키텍처>/arch-0.8.md5sum를 내려받아라
  3. md5sum를 사용해서 .iso 이미지의 무결성을 검증하라:
    # md5sum --check arch-0.8.md5sum
    arch-0.8.iso: OK
    
  4. 공 CD-R에다가 .iso 이미지를 구워라 (이 단계는 당신이 사용하고 있는 OS/소프트웨어에 따라 달라진다).
    대신 기반(base)이나 ftp 혹은 베타 ISO를 내려받길 원한다면, 적당한 파일 이름을 사용하라, 즉: arch-0.8.iso대신에 arch-0.8-base.iso, md5sum도 마찬가지.
  5. FTP를 통해 설치를 원하면, 당신의 네트워크 환경(setting)을 몽땅 기록해 둬서 나중에 그것들을 지정할 수 있도록 하라:
    • IP 주소
    • 서브넷 마스크(Subnet Mask)
    • 게이트웨이(Gateway)
    • 당신 통신망 카드의 이더넷 모듈 (예: eepro100, 8139too, ne2k-pci 등)

CD-ROM 사용

당신이 이미 띄우기(boot) 절차에 익숙하다면, 이 모든 허튼 소리도 생략하고 실제 아치 리눅스 설치 개요를 말하는 [http]일반 설치 절차로 건너 뛰어라.

아치 리눅스 설치 CD를 드라이브에 넣고 당신의 컴퓨터를 재띄우기(boot)하라. CD-ROM 띄우기(boot)으로 BIOS를 지정했는지 확인하라. 어떻게 해야 될지 모른다면 자세한 부분은 마더보드 설명서나 시스템 제조사에 조회하라. 일단 CD로 띄우기(boot)을 하면, 이 단계에서 당신의 선택 지정에 해당되는 자판 입력을 무한정 기다리고 있는, boot prompt를 보게 될 것이다. 대부분의 사용자들은, 그냥 Enter를 누르면 된다.
명확하지 않은 이유로 CD-ROM 띄우기(boot)에 실패하고, CD-RW에서 구운 복사본과 함께 꽤 오래된 CD-ROM 드라이브를 사용한다면, 대신에 보통 CD-R을 사용하길 고려해라. 어떤 구형 드라이브 (예를 들어 내 것 두개 -Dennis)는 CD-RW들을 제대로 읽을려고 하지 않는다.

띄우기(boot)절차가 끝나면, 화면 상단 절반에 채워진 소수의 명령어들이 있는 루트 쉘(root shell)로 떨어질 것이다. 이제 당신은 [http]실제 설치를 시작할 준비가 되었다. 혹은, 필요하다고 여겨지는 수동으로 준비한 어떤 것을 진행해라.

일반 설치 절차

이 시점에서 당신 시스템은 띄우기(boot)이 되어야 한다. 그리고, 설치 원본 뿐만 아니라, 당신이 설치하기 원하는 하드 드라이브도 접근 가능 해야 한다.

설치 단계들: 경험있는 사용자라면, 가능한 쉘 도구들을 사용해서, 설치 프로그램을 시작하기 전에, 설치에 필요한 하드 드라이브나 장치들을 준비할 수 있다. 더 이상 설명서 보기가 당장 필요하지 않다면 이 단락을 건너 뛰어도 된다. 아치 리눅스 설치 매체에는, 경험있는 사용자들을 위한 /arch/quickinst 스크립트가 있다. 이 스크립트는 사용자가 지정한 목표 디렉토리에 "기반(base)" 꾸러미(package) 모음을 설치한다. RAID와 LVM처럼 재미난 것들로 별난 설치를 하고자 한다면, 혹은 설치 프로그램을 전혀 사용하고 싶지 않다면, 당신은 아마 quickinst 스크립트를 사용하고자 할 것이다. 모든 멋진 친구들이 그렇게 한다.

US 아닌 키맵 올리기

US가 아닌 키맵을 원한다면, 새로운 키맵을 올리기 위해 km 도구를 사용할 수 있다. 프롬프트에 단지 km을 쳐 넣고, 올바른 키맵과 콘솔 폰트로 나아가기 위해 화살표 키를 사용하라.

셋업 실행

이제 /arch/setup을 실행해서 설치 프로그램을 구동할 수 있다. 얼마의 정보 메시지 후에 설치 방법을 선택하게 된다. 만약 빠른 인터넷 연결을 사용하고 있다면, 어쩌면 구식이 되어버린 CD 내용물 대신에, 당신은 최신 꾸러미(package)를 확보할 수 있는 FTP 설치를 선호할 것이다. 만약 인증이 필요한 복잡한 프락시 설정을 가지고 있다면, 아마 곤란에 빠질 수도 있음에 주의하라. 만약 당신이 CD-ROM이나 이 단계에서 마운트할 수 있는 다른 매체들을 사용할 수 없다면, 이 방법이 아치 리눅스를 설치 가능한 유일한 방법이다.
setup 스크립트를 진행할 때, 각 단계를 수행한 후에 하위메뉴로 부터 DONE을 선택해야 한다. 이는 다음 단계를 대비해서 만들어지는 지정들을 저장한다. 그리고, 설치 과정 중에 임의의 단계로 들어가는 것을 피하라. 이것은 또한 설치 프로그램을 혼란에 빠뜨릴 수 있다.
여러분 자신의 FTP 꾸러미(package) 미러를 구축하거나 여러분이 필요한 꾸러미로 구성된 자신의 띄우기(boot)가능 설치 CD를 만드는 것은 사실 상당히 쉬운데, 이는 다수의 장치들에 대한 몇가지 아치 리눅스 설치 작업을 꽤 간단하게 하고, 동시에 많은 미러 대역폭을 절약할 수 있다. 당신과 우리들의 삶을 좀 더 편하게 하고, 이러한 대안들을 연구해라!

CD-ROM이나 다른 원본 설치를 선택했을 때, 당신은 상당히 오래되었을 지 모르는 CD에 포함된 꾸러미(package)들이나, 수동으로 파일시스템 (DVD, USB 막대와 같은) 어딘가에 마운트할 수 있는 매체에 저장된 꾸러미들만을 설치할 수 있다. 물론 이것의 장점은 인터넷 연결이 필요없는 것이어서, 전화 연결 사용자들 혹은 최소한 100 MB의 꾸러미(package)도 내려받고 싶지 않은 또 다른 사람들을 위해 추천되는 선택이다.

두가지 안 중 하나를 선택한 후에, 완료해야 할 순서대로 필수 단계들이 목록화되어 있는 설치 메뉴를 제공 받게 된다.

설치과정 중 어느 때라도, 여러분은 5번째 가상 콘솔 (ALT-F5)로 들어가서 셋업이 수행되는 명령들에 의한 출력을 볼 수 있다. 설치 프로그램이 진행 중인 첫번째 콘솔로 돌아오기 위해서는 (ALT-F1)을 사용하고, 어떤 이유에 의해 수동으로 개입하고자 할때는 중간에 있는 어떠한 F-키로 또 다른 콘솔을 열 수 있다.

네트웍 설정 (FTP 설치에서만)

Configure Network은 당신의 네트웍 장치의 설치 및 설정을 하게 해준다.

일반적으로 이용 가능한 모든 통신망 장치 목록이 당신에게 주어진다. 하지만 이더넷 장치가 사용 가능하지 않다면, 즉 사용하길 원하는게 없다면, ALT-F2(예를 들어)를 사용하여 다른 터미널로 먼저 바꾸고, 필요한 모듈들을 수동으로 올려야 할 것이다. 다른 방도로, 지시사항으로 단지 OK를 치고, 그 다음 화면에서 Probe 명령을 선택해서 통신망 모듈을 올릴 수 있다. 만약 설치 프로그램이 알맞은 통신망 모듈을 찾지 못한다면, 플로피를 사용할 경우 이더넷 모듈을 사용할 수 있도록 이전에 loaddisk 명령을 제대로 실행했는지 확인하라. CD-ROM으로 띄우기(boot)을 했을 때는, 이것이 필요없다. 만약 당신의 통신망 카드가 여전히 발견되지 않는다면, 당신 카드가 제대로 물리적으로 설치되었느지 그리고 적어도 리눅스 커널이 지원하는지 확인하라. 때때로, 통신망 카드의 제조회사로 부터 이진(binary) 독점 드라이버를 구해서, 어떻게든지 해서 이것을 설치 시스템으로 복사하고, 수동으로 올려야 할 필요가 있을 것이다. 통상 이것으로 용기를 잃을 건 없고, 다른 모델의 통신망 카드를 사용할 것을 조언하다.

적절한 모듈이 올라 올때 그리고 원하는 통신망 카드가 목록에 있을 때, 당신이 설정하고자 하는 이더넷 장치를 Select하면 DHCP로 통신망을 설정하는 선택사양이 주어진다. 당신이 DHCP 서버에 연결되어 있다면, YES를 쳐서 설치 프로그램이 나머지를 수행하게 하라. 만약 NO를 선택하면, 통신망 정보를 수동으로 입력하길 요청받을 것인데, 지적받았던 대로 이것에 대해 아마 당신이 적어 놓았을 것이다. 둘 중 어떤 방법이든, 당신 통신망은 성공적으로 설정되어야한다. 만약 당신이 의심 많은 유형이라면, 다른 콘솔에서 ping과 같은 표준 도구를 사용하여 접속 가능성을 점검할 수 있을 것이다.

자동 작동이 완벽하진 않기 때문에, 설치 프로그램이 통신망을 구축하는데 성공하지 못할 수도 있다. 이런 드문 경우에, 고민하지 말고, 콘솔 중의 하나에서 수동으로 통신망 장치를 셋업하도록 하라. 설치 프로그램이 원하는 것은, 설치 중에 뒤에 선택할 ftp 서버로의 명쾌한 연결이다.

명백한 이유로, 이 메뉴 항목은 FTP 설치를 선택했을 때만 쓸모있다.

하드 드라이브 준비

Prepare Hard Drive는, 설치할 목표 드라이브를 준비하는데 두가지 안을 제시하는, 하위메뉴로 당신을 이끌 것이다.

첫번째 선택Auto-Prepare이며, 이는 /boot, swap, 과 root 가르기(partition)으로 당신의 하드 드라이브를 자동 분할할 것이다. 그런 다음 셋 모두에 대해 파일시스템을 생성시킨다. 또한 이 가르기(partition)들은 적절한 곳에 자동으로 마운트될 것이다. 정확히 말하면, 이 선택 지정은 아래 내용을 생성시킨다:
  • 32 MB ext2 /boot 가르기(partition)
  • 256 MB swap 가르기(partition)
  • 나머지 공간에 대해 root와 /home 가르기(partition)

실제 크기는 하드 디스크 구조 차이로 인해 약간 다를 수 있다. 당신은 하드 드라이브 가르기(partition)에 대해 잘 모른다면 이 선택사양을 선택할 수 있지만, 다음과 같이 경고 받는다:
AUTO-PREPARE WILL ERASE ALL DATA ON THE CHOSEN HARD DRIVE!
(자동 준비는 선택된 하드 드라이브의 모든 자료를 지울 것이다!)
설치 프로그램이 제시하는 경고를 매우 주의깊게 읽고, 올바른 장치가 분할될려고 하는지 확인하라!

장치 분할에 대한 당신의 선택을 검증하는 한 방법은, 또다른 터미널을 열고 (ALT-F2, Enter) 다음을 입력해서
# cfdisk -P s <장치 이름>
선택한 장치의 현재의 분할 표를 보여주게 한다. 이는 하드 디스크를 확인하는데 충분하다.

만약 아무 장치 이름도 보여주지 않는다면 ("완전 삭제될 게 아무 것도 없다! ..."), 그리고 YES를 친 후에 설치 프로그램이 "적절치 않은 장치(Device not valid)"라는 오류를 보여준다면, SCSI, RAID 등 필요한 모든 모듈들을 올렸는지 확인하라. 아직, 다른 터미널로 바꾼 다음 명령어들을 입력해서 모듈들을 올리고, 다시 첫번째 터미널 (ALT-F1)상의 설치자 과정으로 돌아올 수 있다.

만약 수동으로 분할하기를 선호한다면, 당신의 내역에 따라 목표 매체를 준비하기 위해 아래에 약술되어 있는 것처럼 Partition Hard DrivesSet Filesystem Mountpoints의, 다른 두 선택사양(option)을 사용하라. 그리고 나서, 준비가 성공한 후에 Return to Main Menu하라.

하드 드라이브 분할

이미 Auto-Prepare를 선택했다면, Partition Hard Drives건너 뛰어야 한다.

그렇지 않다면 분할하길 원하는 디스크를 선택해야 한다. 그리고 나면, 당신은 WriteQuit하기 전까지 자유롭게 분할 정보를 수정할 수 있는 cfdisk 프로그램으로 들어가게 된다.
설치를 계속하기 위해서는 최소한 root 가르기(partition)이 필요하다. 그리고, 어느 가르기(partition)을 어디에 마운트 할 지 위치를 알고 있는게 도움이 된다. 다음 단계에서 바로 질문을 받게 될 것이다.

파일시스템 마운트포인트 지정

하드 드라이브를 Auto-Prepare 했다면, Set Filesystem Mountpoints건너 뛰어야 한다. 이전 메뉴 선택 시에 분할 정보를 당신이 바라는 바대로 일단 편집했다면, 혹은 뭐라고 표현하던간에 분할 정보가 이미 존재한다면, 당신은 이 선택을 골라야 한다.

대답 해야할 첫 질문은 무슨 가르기(partition)을 swap으로 사용할 것인가 이다. 목록에서 이전에 만든 swap 가르기(partition)을 선택하든지, swap 가르기(partition)을 사용하길 원하지 않으면 NONE을 선택하라. swap 파일 사용은 설치 프로그램이 직접 지원하지 않는다; 대신에 여기서 NONE을 선택하고, 마운트포인트 연결을 끝내고 나서, swapon 명령을 사용하여 원하는 포맷된 가르기(partition) 상의 swap 파일을 활성화 시켜라.

swap 가르기(partition)을 구축한 후에, root 가르기(partition)이 될 가르기(partition)을 지정하길 요청받을 것이다. 이것은 필수사항이다.

의도하는 마운트포인트에 모든 목록화된 가르기(partition)이 연결된 후 목록에서 DONE을 선택하기 전까지, 연결 과정이 반복된다. 설치 프로그램은, swap과 root를 선택한 후에, 후속 마운트포인트로 /boot를 제안할 것이다.

마운트할 가르기(partition)을 지정할 때마다, 관계되는 가르기(partition)에 파일시스템을 만들 것인지 질문 받을 것이다. 만약 YES를 선택하면, 무슨 파일시스템을 만들거냐를 질문 받은 다음 (사실 취향의 문제다. 모르겠다면 ext3를 지정하라), 가르기(partition)은 선택된 파일시스템으로 포맷될 것인데, 과정 중에 모든 자료(data)는 파괴될 것이다. 그런데, 가르기(partition)내에 존재하는 파일들을 보존하기 위해, 이 단계에서 NO라고 해도 문제는 없을 것이다.
가르기(partition)내에 존재하는 자료를 보존하고자 한다면, 설치하는 동안 나쁜 일이 일어나지 않기를 바라는 대신에, 백업을 만들기를 강력하게 충고한다. 내가 경고하지 않았다고 말하지 말라!
swap 가르기(partition)에 파일시스템을 생성시킬지 여부를 질문받을 것인데, 이 가르기(partition)은 그 자체가 가지는 특유의 파일시스템을 사용하기 때문에, 여기서 항상 YES라고 답해야 한다.

분리된 /boot이나 /home처럼 다른 가르기(partition)들을 마운트하고자 한다면, 지금 그렇게 할 수 있을 것이다. 단순히
  • 마운트할 가르기(partition)을 선택한다
  • 파일시스템을 선택한다 (데이타를 보존하지 않고 새로 만들고자 한다면)
  • 가르기(partition)의 독자적인 마운트포인트를 입력한다
만족할 때까지 이 단계들을 반복하고 나서, 파일시스템을 만들고 관련 장소에 가르기(partition)을 마운트하기 위해서 DONE을 선택하라. 실제 포맷팅을 하기전에, 당신이 검토할 수 있도록 선택한 모든 것의 목록을 설치 프로그램이 보여줄 것이다. 포맷 작업과 모든 가르기(partition)을 마운트 후에, Main Menu로 들어가서 다음 단계를 진행하게 된다.

꾸러미(package) 선택

Select Packages는 CD나 FTP 미러로 부터 설치할 꾸러미(package)들을 선택하게 한다.

만약 CD-ROM 설치를 선택했다면, CD를 마운트할지 혹은 당신이 이미 설치 매체를 /src에 마운트했는지를 설치 프로그램에게 알려야 한다. 당신이 원하는 것에 따라서 선택(option)을 골라라; 보통 CD를 선택하고자 할텐데, 검색된 장치 목록에서 CDROM 드라이브를 선택할 수 있을 것이다.
목록에서 CD-ROM 드라이브가 표시되지 않는다면, SCSI나 USB 저장장치 지원과 같은 필요한 모듈들을 올렸는지 확인하고, 필요하다면 다른 터미널에서 그것들을 올려라.

만약 FTP설치를 선택했다면, 목록 중에서 당신과 가까운 미러를 선택하든지, 당신 자신에 적격인 도메인 이름(혹은 IP 주소)을 지정하기 위한 Custom을 선택하도록 요청받을 것이다. Custom 선택으로 입력하는 도메인 이름(혹은 IP 주소)은 설치 원본 꾸러미들이 있는 FTP 서버로서, 당신 LAN에 준비된 서버이든지, 어떠한 이유에 의해 목록화되지 않은 미러이다. 그리고 이 경우, 뒤이어 꾸러미들과 특히 current.db.tar.gz 파일을 포함하는 서버 디렉토리의 완전한 경로(full path)를 지정하도록 요청 받을 것이다. 설치 프로그램은 입력사항에 대한 타당성을 점검해서, 연결 가능하고 꾸러미 목록 내려받기가 가능한 주소와 경로가 입력될 때까지, 당신이 수정하도록 해준다.

무슨 원본매체을 선택했든간에, 꾸러미(package) 목록을 가지고 온 후에는, 꾸러미(package) 범주(category) 선택 화면을 보여준다.
꾸러미(package) 데이터베이스를 가지고 오는데 오류가 발생한다면, 다른 FTP 미러를 선택하든지, 아니면 통신망이 제대로 작동하는지 확인하라. 그리고, 당신의 맞춤 서버 주소를 잘못 입력했는지 확인하라. /src 디렉토리에 당신의 자료 매체를 마운팅하는데(이 옵션을 선택했다면) 실수가 있을 수 있다. 제공된 메시지를 주의깊게 읽어라. 대부분의 경우, 설치매체나 서버상의 각각의 디렉토리 배치를 약간 수정하면 된다.

이제 일단 달려들면, 꾸러미(package)를 설치하고자 하는 전체 꾸러미(package) 집단(group)들을 지정하고, 개별적인 패키지들을 선택(해제)해서 당신이 대충 선택한 것을 세부 조정할 기회를 가지게 된다.

BASE 범주(category)에 있는 모든 꾸러미(package)들은 어떤 환경에서든 선택되어야 하며, 당신이 필요로 하는 꾸러미(package)를 포함하는 다른 집단(group)들도 선택해야 한다. 앞으로 나타날 개별 꾸러미(package) 선택 화면은, 여기서 당신이 선택하는 범주(category)에 있는 꾸러미(package)들 만을 보여준다. 그래서 BASE만을 선택한다면, BASE 범주(category)에 있는 것들 이외의 꾸러미(package)들은 추가할 수 없을 것이다.
설치할때 꾸밈없는 최소한의 선택만을 원하지만, 추가할 흥미로운 게 있는지 보기 위해, 모든 이용 가능한 꾸러미(package)들을 살펴보고자 한다면, 모든 꾸러미 범주 선택(select all package categories)을 해야겠지만 기본으로 모든 꾸러미 선택하지 않기(NOT select all packages by default)를 골라야 한다.

기본으로 모든 꾸러미 선택하기(Select all packages by default?) 질문은 잘못 이해하기 쉽다; 기본적으로, 당신이 방금 선택한 범주(category)에 존재하는 모든 꾸러미(package)들을 원하는지에 대해 질문받는 것이다. 만약 YES를 선택하면, 선택된 범주(category)내에 포함된 꾸러미(package)들의 모든 목록이 표시되는 동시에 선택될 것인데, 당신이 해야될 일은 원하지 않는 것을 선택해제하는 것이다. 만약 NO를 선택하면, 똑같은 꾸러미(package) 목록이 표시되지만, Base 범주(category)의 꾸러미(package)들만 선택되는데, 당신이 설치하고자하는 다른 꾸러미(package)은 명백하게 선택해야 한다.
NO를 선택하는 것이 간결한 시스템을 설치하는데 도움이 된다!
Base 꾸러미(package)들은 모두 설치하고, 다른 것들은 이 시점에서 설치하지 않기를 추천한다. 원하는 꾸러미(package)를 얻는 것에 염려하지 마라 - 기본 시스템으로 띄우기(boot) 후에 쉽게 추가적인 꾸러미(package)들을 설치할 수 있다. 이 규칙상의 유일한 예외는 인터넷 연결 구축에 필요한 꾸러미(package)들을 설치하는 것이다. 이 꾸러미(package)들은 아래와 같다:
dhcpcd (base)
    당신 장치가 DHCP 클라이언트라면 추가하라.
isdn4k-utils (network)
    전화연결에 ISDN을 사용한다면 추가하라.
ppp (base)
    전화연결에 아날로그 모뎀을 사용한다면 추가하라.
wvdial (network)
    아날로그 모뎀 전화연결 구축에 쉬운 프런트엔드를 원한다면 추가하라.
rp-pppoe (base)
    유사전화연결을 위해 DSL을 사용한다면 추가하라.
내려받을 수 있는 base ISO는 BASE 범주(category) 것 이외의 꾸러미(package)들을 포함하지 않고 있다. 그래서 ISDN 꾸러미(package)나 어떤 도움 도구들이 필요하면 전체크기 ISO를 받기를 충고한다!

일단 필요한 꾸러미(package) 선택이 끝나면, 선택화면을 빠져나와 다음 단계인 Install Packages로 넘어가라.

꾸러미(package) 설치

이제 Install Packagespacman과 선택한 다른 꾸러미(package)들을, 분석된 의존물들과 함께, 당신의 하드디스크에 설치할 것이다. 당신이 선택한 것 보다 더 많은 꾸러미들이 설치된다고 놀라지 마라! 이 꾸러미들은, 당신이 선택한 것에 대한 의존물들이다. 그리고, 설치 프로그램은 당신이 알고 있다고 가정하고서, 이 추가 꾸러미들을 설치하는 것에 대해, 명시적인 허락을 구하지 않을 것이다.

꾸러미를 선택한 후에, 설치 프로그램은 설치 대상의 빈 공간을 점검하지 않을 것이다! 이런 하찮게 여겨지는 작업이 상당한 시간을 잡아 먹는 관계로, 설치 프로그램은 단순히 대상 가르기(partition) 상에 충분한 빈 공간이 있다고 가정한다. 그렇지 않은 경우에, 여러가지 이상한 식으로 설치가 실패할 것이다. /mnt 아래에 마운트된 하나 또는 그이상의 대상이 꽉 차서 문제가 일으나는지를, 또 다른 터미널에서 df -h를 사용하여 알 수 있다. 다시 분할(repartitioning)하거나 꾸러미들을 적게 선택하는 것을 고려하라.

오류 메시지나 오류수정 출력은 보통 다섯번째 터미널(ALT-F5)에 뿌려진다. 하지만, 정상적이고 성공적으로 작동하는 동안에는, 거기서 읽을 게 별로 없을 것이다. 꾸러미(package) 설치 후에, 다음 단계인 Configure System으로 넘어가라.

시스템 설정

Configure System은, 당신이 새로 설치한 시스템에 필수적인 설정 파일들을 편집하도록 해준다. 처음에 hwdetect 스크립트가 장치 탐지를 시도해서, 설정 파일을 위한 약간의 분별있는 내정값(default)들을 만들어내도록 허가할지 여부에 대한 질문을 받을 것이다. 문제나 고장이 생기지 않는 한, 그렇게 하도록 해서, 그 생성물로부터 작업하도록 해야한다.

root 가르기(partition)이 RAID, LVM 혹은 암호화된 매체 단위(encrypted volume)에 각각 위치한다면, 필요한 HOOKS가 mkinitcpio.conf에 자동으로 추가되도록, RAID, LVM 과 암호화된 매체 단위(encrypted volume)에 관한 뒤따르는 질문에 Yes라고 답하도록 하라. 그렇게 하지 않으면, 띄우기(boot)때 root 가르기(partition)에 접근 할 수 없어서, 띄우기(boot)하는 동안 커널패닉(kernel panic)을 겪을 것이다. 하지만, 대부분 사람들은 이 질문에 No라고 대답하고, 이것에 대해 거의 생각하지 않을 것이다.

이 자동화된 선행 설정 후에, 생성된 설정 파일들을 수동으로 세부조정(fine-tuning)하기 위해서, VIM이나 nano중에서, 사용할 선호하는 편집기(editor)를 선택 하도록 질문을 받게 된다. 확신이 들지 않으면 nano를 골라라.

당신이 정말 바쁘다면, 설정을 검토하는 다음 단계를 몽땅 건너뛰고, 내정값(default)들로 동작하도록 할 수도 있지만, 여기서 제시된 설정파일 목록을 쭉 반복해서, 주의깊게 설정치를 검토하길 강력하게 추천한다. 여러 파일들에 대한 자세한 기술에 대해서는 [http]시스템 설정 부분을 참고하라.

커널 설치

Install Kernel은 당신의 하드 드라이브에 어떤 커널 이미지를 설치할 지 질문한다.
2.6
SCSI/SATA/IDE를 지원하는 표준 2.6.x 커널을 설치한다. 띄우기(boot)하는 동안 커널이 정확히 지원하는 것은, initial ramdisk를 어떻게 설정했는냐에 따라 좌우되는데, 기본은 알려진 SCSI, SATA, 그리고 IDE 시스템을 모두 지원한다. 새로운 initramfs에 대한 좀 더 많은 정보를 얻기 위해서는, 특히 새로운 PATA와 ide 구식 드라이버와 관련된 잠재적인 함정들에 관련해서, [http]시스템 설정 부분을 보라.

mkinitcpio 도구에 의해 생성되는 initramfs에 유연성이 주어짐에 따라, 아치 리눅스 이번 배포판은 하나의 설치 커널만 제공한다.
CD롬에는 2.6.20.1 커널이 포함되어 있다. 만약 FTP 설치를 사용한다면, 설치 커널은 FTP 공급처에 있는 최신판일 것이다. 그래서, 현시점에 알려지지 않은 변화나 비호환성이 초래될 지도 모르겠다. 이럴 가망은 없겠지만, 기억해둬라.

띄우기 싣개(bootloader) 설치

Install Bootloader는, 당신의 개인적인 선호에 따라서, GRUB(추천)이나 LILO 중 하나의 띄우기 싣개(bootloader)를 당신의 하드 드라이브에 설치할 것이다.

띄우기 싣개(bootloader)를 설치하기 전에, 셋업 스크립트는 정확한 설정 지정들을 확인하기 위해서, 당신이 적절한 설정파일을 검사하길 원할 것이다. 당신의 루트(와 /boot, 당신이 가지고 있다면) 가르기(partition)이 무엇인지 확실히 알아야 한다.

만약 리로 설치가 선택되면, 띄우기 싣개(bootloader)는 설정파일내의 설정에 따라 자동으로 설치될 것이다. 반면에 그럽은 띄우기 싣개(bootloader)를 설치할 가르기(partition)의 선택을 요구한다. 여기서 당신은 리로 boot 옵션으로 입력해야 하는 것을 선택해야 하는데, 통상적으로 이것은, 첫번째 하드 디스크의 매스터 띄우기(boot) 레코드(master boot record)로 언급되는 /dev/hda로 명명되는 항목이다. 뭔가 잘못 되고 있다면, VC5(5번째 가상 콘솔)에서 자세한 오류 메시지를 발견할 수 있다.
만약 당신이 다중 띄우기(boot) 시스템을 구축할 계획이라면, 띄우기 싣개(bootloader)를 root/boot 가르기(partition)에 설치해서, 매스터 띄우기(boot) 레코드(master boot record)에 존재하기를 원하는 다른 띄우기 싣개(bootloader)로부터 이 띄우기(boot) 섹터를 조회하게 하는 것이 더 좋은 선택이 될 수 있다.
MBR에 띄우기 싣개(bootloader)를 설치하는 것은 기존의 띄우기 싣개(bootloader)를 가차없이 덮어쓸 것이다! 만약 다중 띄우기(boot) 시스템을 돌릴 생각이면, 즉 다른 OS로 부터 설치된 띄우기 싣개(bootloader)를 보존하고 싶다면, 그것에 대한 의미를 확실히 이해하도록 하라!

설치 나가기

이제 Exit Install하고, 드라이브에서 CD를 제거하고, 명령행에 reboot을 치고, 좋은 결과를 기원해라!

당신의 시스템이 띄우기(bootup) 되면, 암호없이 root로 로그인할 수 있는데, 해야 할 첫번째는 일단 로그인하면 passwd란 명령어로 root 암호를 지정하는 것이다. [http]사용자 관리 부분에 약술된 바와 같이 사용자를 추가하고 [http]인터넷 연결을 셋업하라.

축하한다! 이제 당신은 시스템의 흥미로운 부분들을 설정하는 핵심으로 들어 갈 수 있다. 당신이 원하는 바에 맞춰 수정하도록 하라!

시스템 설정

이것들은 아치 리눅스의 핵심 설정 파일들이다. 도움을 줄 GUI 도구들이 없기 때문에, 당신은 텍스트 편집기로 이 파일들을 수동 편집하는데 익숙해야 한다. 가장 기본적인 설정 파일들만 여기 목록화 했다. 특별한 서비스를 설정하는데 도움을 얻고 싶다면, 적절한 맨페이지를 읽거나 필요한 온라인 문서를 참고하도록 하라. 많은 경우, [http]아치리눅스 위키[http]포럼에서도 풍부한 도움을 얻을 수 있다.

아치 리눅스는 시스템을 관리하는데, 추상화 계층(abstraction layer)을 사용하지 않는다. 결과적으로, 소프트웨어 창시자가 발표한 명령어들에 늘 충실할 수 있다. 즉, 당신이 선택한 검색엔진에서 무엇을 발견하던 간에, 그것은 당신 시스템을 꼬이게 하지 않으면서 효력을 발휘할 것이다. 왜나하면 , 당신 시스템은 관여하지 않기 때문이다.

설정 파일들

새로 설치한 시스템을 띄우기(boot)하기 전에, 최소한 이 파일들을 한번 보고 동 떨어지게 설정되어 있는게 아닌지 확인해야 한다.

설정 파일들 목록

/etc/rc.conf

이는 아치 리눅스에서 주된 설정 파일이다. 이는 키보드, 시간대역, 호스트명, 통신망, 실행할 디몬들과 띄우기(bootup)시 올릴 모듈들, 특성(profile), 그리고 그 밖에 것들을, 당신이 지정할 수 있도록 한다. 당신은 이 파일에 있는 모든 지정(setting)들을 통독하고, 이것들을 확실히 이해해서, 적절하게 수정해야 한다.:

LOCALE
이것은 시스템 언어를 지정하는데, i18n에 친근한 모든 응용 프로그램과 유틸리티들에 의해 사용된다. 명령줄에 locale -a를 실행시켜서 사용 가능한 로케일 목록을 얻을 수 있다. 기본 내정치는 US 영어 사용자들에게 맞춰져 있다.
HARDWARECLOCK
당신 바이오스 시계가 UTC나 GMT로 지정되어 있다면 UTC로, 혹은 바이오스 시계가 당신의 지역 시간으로 지정되어 있다면 localtime으로 지정하라. UTC 바이오스 시간을 정확히 다루지 못하는 윈도우즈와 같은 OS가 설치되어 있다면 localtime을 선택하라. 그렇지 않은 경우, 일광 절약 시간(daylight savings time)을 문제없이 사용할 수 있고, 다른 긍정적인 면을 좀더 가지고 있는, UTC를 선택하는 편이 더 좋다.
TIMEZONE
이는 당신의 시간대역을 지정한다. 가능 시간대역들은 /usr/share/zoneinfo 디렉토리에서 시작하는 대역정보 파일의 상대적 경로이다. 예를 들어, 독일 시간대역은 Europe/Berlin이 될텐데, 이는 /usr/share/zoneinfo/Europe/Berlin 파일을 참조한다. 당신 시간대역 파일의 정확한 이름을 모른다면, 나중에 고민해라.
KEYMAP
이는 띄우기(bootup)시에 loadkeys 프로그램을 사용하여 올릴 키맵을 정의한다. 가능한 키맵들은 /usr/share/kbd/keymaps에서 찾을 수 있다. 이 지정은 TTY들에서만 유효한 것이지, 그래픽 창 관리자 즉 X에서는 아니라는 것에 주의하라! 기본 내정치는 US 사용자들에게 적절하다.
CONSOLEFONT
이는 띄우기(bootup)시에 setfont 프로그램을 사용하여 올릴 콘솔 글꼴을 정의한다. 가능한 글꼴들은 /usr/share/kbd/consolefonts에서 찾을 수 있다.
CONSOLEMAP
이는 띄우기(bootup)시에 setfont 프로그램을 사용하여 올릴 콘솔 맵을 정의한다. 가능한 맵들은 /usr/share/kbd/consoletrans에서 찾을 수 있다. 위에서 utf8 로케일을 사용한다면, 당신 로케일(예를 들어 Latin1에 대해서는 8859-1)에 맞게 맵을 지정하길 원할 것이다. 일상적인 작업에 X11을 사용한다면 신경쓰지 말라. 이는 리눅스 콘솔 도구들의 출력에만 영향을 미친다.
USECOLOR
이는 띄우기(bootup)시에 상태 메시지들이 색상화 되도록(혹은 되지 않도록) 한다.
MOD_AUTOLOAD
만약 YES로 지정하면, 아치는 띄우기(bootup)시에 당신의 하드웨어를 검색해서 적절한 모듈들을 자동으로 올리기를 시도할 것이다. 이는 hwdetect 유틸리티를 사용하여 동작한다.
MOD_BLACKLIST
이는 띄우기(bootup)시에 올리고 싶지 않은 모듈들의 배열이다. 예를 들어, 성가시게 하는 PC 스피커를 원하지 않으면, pcspkr 모듈을 블랙리스트에 올릴 수 있다.
MODULES
modprobe.conf에서와 같이 모듈들을 하드웨어 장치에 묶을 필요없이, 이 배열에 띄우기(bootup) 동안 올리고 싶은 모듈 이름들을 목록화할 수 있다. 단순히 여기에 모듈 이름을 추가하고, 필요하면 선택사양(option)들을 modprobe.conf에 넣어라. 느낌표('!')로 모듈을 미결정 상태로 두면, 띄우기(bootup)하는 동안 해당 모듈을 올리지 않을 것이다(이는 MOD_BLACKLIST와 같지 않다). 이렇게, 필요하면 특정 모듈들을 "설명 처리화(comment out)"하게 한다. 여기에 통신망 모듈들을 지정하면, 목록화된 모듈들에 의해 적용되는 이더넷 카드들은, 모듈들이 나열된 순서대로 탐지될 것이다. 이렇게 해서, 띄우기(boot)때마다 이더넷 장치가 표면적으로 무작위로 접속에 지정되는, 공포의 접속 혼란을 막을 수 있다. 이 문제를 다루는 더 낳은 방법은, udev를 적절히 설정해서 정적 접속 라벨(static interface labels)을 사용하는 것이긴 하지만.
USELVM
YES로 지정하면 시스템 초기화(sysinit)동안 vgchange를 실행시켜서, LVM 집단(group)들을 작동 시킨다. 이게 뭘 뜻하는 지 모른다면, 고민하지 마라.
HOSTNAME
도메인 구성부분 없이 장치의 호스트명을 지정한다. 글자, 숫자, 그리고 대쉬와 같은 약간의 통상적인 특수문자 등을 사용하는 한, 당신 마음대로 해도된다. 하지만, 여기서 너무 독창적으로 하지 마라. 불확실하면 기본 내정치(default)를 사용하라.
INTERFACES
네트워킹 연결을 위한 지정들을 정의한다. 기본 내정 행들과 포함된 설명들은 이 지정을 충분히 잘 설명한다. 장치 설정에 DHCP를 사용하지 않는다면, 변수 값(그 이름은 설정하고자 하는 장치명과 같아야 한다)은, 쉘(shell)에서 수동으로 장치를 설정할 때의, ifconfig명령에 부가되는 행과 같음을 염두에 둬라.
ROUTES
여기서 임의의 이름들로 당신 자신의 정적 통신망 통로(static network routes)를 정의할 수 있다. 이를 이해하기 위해서 기본 내정 게이트웨이의 예를 보라. 기본적으로, 인용된 부분은, 당신이 수동 route add 명령에 부여하는 것과 똑같다. 그래서, 여기다 뭘 써야될 지 모른다면, man route를 읽어보던지, 아니면 그냥 냅둘 것을 권한다.
NET_PROFILES
띄우기(bootup)시에 어떤 통신망 특성들(network profiles)을 활성화 시킨다. 통신망 특성들(network profiles)은 다수의 통신망 설정을 관리하는 편리한 방법을 제공한다. 그리고, 이것은, 하나의 통신망 설정을 가지고 있는 시스템에서 여전히 추천되는, 표준의 INTERFACES/ROUTES 설정지정을 대체하게 된다. 당신 컴퓨터가 다른 시간에 다른 통신망에 관계한다면(랩탑 경우), 어떤 특성들(profiles)을 구축하기 위해서 /etc/network-profiles 디렉토리를 살펴 봐야 한다. 거기에는 새로운 특성들(profiles)을 만드는데 사용할 수 있는 template 파일이 포함되어 있다.
DAEMONS
이 배열은, 띄우기(boot) 과정동안 시작하기로 되어 있는, /etc/rc.d/에 포함된 스크립트 이름들을 단순히 목록화한 것이다. 만약 스크립트 이름 앞에 느낌표(!)가 붙어 있다면, 이것은 실행되지 않는다. 만약 스크립트 앞에 "골뱅이" 부호(@)가 붙어 있다면, 백 그라운드(background)로 실행될 것이다. 즉, 시동 절차는 후속으로 계속하기 전에, 이전 수행이 완전히 끝나기를 기다리지 않을 것이다. 일반적으로 당신은, 시스템을 실행시키기 위해 기본사항을 수정할 필요가 없지만, sshd와 같은 시스템 서비스를 설치하고 띄우기(bootup)시에 자동으로 시작되길 원한다면, 이 배열을 꽤 자주 편집할 것이다. 이 방식은 근본적으로, 다른 배포판들이 init.d 디렉토리에 복잡한 심링크(symlinks)를 사용하여 처리하는 것을 다루는, 아치 방식이다.

/etc/hosts

이 파일은, 컴퓨터들의 호스명과 ip 조합들을 당신 통신망에 부여한다. 호스트명이 DNS에 알려져 있지 않다면, DNS 응답에 우선하여 적절하게 결정(resolving)하도록, 당신은 그것을 여기다 추가 할 수 있다. 통상적으로 당신은 여기서 어떠한 것도 바꿀 필요가 없지만, 당신은 이 파일에 컴퓨터의 호스트명과 호스트명 + 도메인을 추가해서, 당신 통신망 접속 IP를 결정할 수도 있다. 이렇게 하지 않으면, 어떤 서비스들은, 예를 들어 postfix는, 먹통이 된다. 당신이 뭘할지 모르겠다면, man hosts를 읽어 보기 전까지, 이 파일을 냅둬라.

/etc/fstab

당신의 파일시스템 지정과 마운트포인트들이 여기서 설정된다. 설치 프로그램이 당신을 위해 필수적인 항목을 만들 것이지만, 특히 암호화(encrypted) root 장치, LVM 혹은 RAID를 사용할 때는, 당신이 이것을 점검해서 올바른지 확인해야 한다.
최신 커널에서는, ATA/IDE 하부시스템에 관련되어 중요한 변화가 도입되었다. 새로운 pata (Parallel ATA) 드라이버들이 구식인 IDE 하부시스템을 대체한다. 그리고, 또 하나의 중요한 변화는, 옛 hda, hdb 등에서, SCSI와 SATA 장치들에서 하는 것 처럼, sda, sdb, 등과 같은 형태의 장치 이름을 사용하는 것으로, IDE 디스크들의 명명 체계가 바뀐 점이다. 이것 때문에, /etc/mkinitcpio.confHOOKS에 새로운 pata 드라이버를 사용할 때는, /etc/fstab와 띄우기 싣개(bootloader) 설정에 적절한 장치 이름들을 사용해야 함을 염두에 둬라! 대체 방법으로, /dev/disk/by-uuid/.../dev/disk/by-label/...의 디스크 표현를 사용할 수도 있다. 이렇게 해서, 절대적으로 확실히 올바른 가르기(partition)들을 나타내고, sda나 hda 중 어느 것을 사용할 지 가려내는 불편에서 벗어날 수 있다. 이게 하나의 선택이 못된다면, 여기에 요약설명이 있다; /etc/mkinitcpio.conf내의 HOOKS 배열에 ide대신에 pata를 사용한다면, sd? 이름을 사용하게 될 것이다. 만약 아니라면, 옛 방식인 hd? 이름을 사용하라. 그래서, 다른 파일들을 조정하기 위해서는, /etc/mkinitcpio.conf내의 HOOKS 배열을 점검하는 것이 결정적이다.

/etc/mkinitcpio.conf

이 파일은 당신 시스템을 위한 initial ramdisk(통상적으로 initrd라고도 언급되는)을, 당신이 세부 조정할 수 있게 한다. initrd는 띄우기(bootup)동안 커널이 읽어 들이는 압축된(gzipped) 이미지이다. initrd의 목적은, 루트 파일 시스템을 접근할 수 있는 지점까지, 시스템을 시동하는 것이다. 이는 IDE, SCSI, 혹은 SATA 드라이브들(혹은 USB/FW 드라이브를 띄우기(boot)한다면 USB/FW)과 같은 것들을 "인식하기" 위해서, 요구되는 모듈들을 올려야 함을 의미한다. 일단 initrd가 적정 모듈들을 올리면, 수동이든 udev를 통해서든 간에, 이것은 아치 시스템에 제어를 넘겨서 띄우기(bootup)이 계속되게 한다. 이러한 이유로, initrd는 단지, 루트 파일시스템을 접근하는데 필요한 모듈들을 포함할 필요만 있다. 이것은, 당신이 사용하고자 하는 모든 모듈을 가지고 있을 필요가 없다. 일상적인 모듈 대부분은, 초기 과정(init process) 동안, hwdetecthwd에 의해 나중에 올려진다.

기본적으로 mkinitcpio.conf는, 이른바 HOOKS란 것을 통하여, IDE, SCSI, 혹은 SATA 시스템을 위한, 알려진 모든 모듈들을 제공하도록 설정되어 있다. 이는 기본 내정 initrd는 거의 모두에게 동작해야 함을 뜻한다. 이것의 부정적인 면은, 당신이 필요로 하지 않는, 많은 모듈들이 올려지는 것이다. 이것은 띄우기(bootup) 후에 당신 모듈 목록을 검사(lsmod 명령어로)해서 쉽게 알 수 있다. 이러한 것은 실제 아무것도 망가뜨리지 않지만, 어떤 이들은 이것을 성가시게 여긴다. 이 목록에서 실제 필요한 것들만의 목록을 추려내기 위해서, 당신은 mkinitcpio.conf를 편집해서 필요없는 하위시스템들(예, IDE, SCSI, RAID, USB 등)을 제거할 수 있다.

필요로 하는 정확한 모듈들을 MODULES 배열에 열거하고 더 많은 hooks를 제거함으로써, 더욱 더 맞춤화(customize)할 수 있다. 그런데, 이곳은, 기재사항들을 지우면 미쳐 버릴 수 있는, 다루기 힘든 장소이므로, 파일내의 설명들에 주의하도록 하라!
만약 당신의 루트 파일시스템에 RAID나 암호화(encryption)를 사용하고자 한다면, 아랫쪽에 있는 RAID/CRYPT 지정들을 조정해야할 것이다. 좀더 정보를 원하면 [http]RAID/LVM, [http]파일시스템 암호화, 그리고 [http]mkinitcpio를 위한 위키 페이지들을 보라.
시스템 설치 중이 아니라면, mkinitcpio.conf 조정을 마치면, 이미지들을 재생성시키기 위해 root에서 mkinitcpio -p kernel26을 실행시켜야 한다; 설치 중인 경우에는, 설치과정에서 나중에 Install Kernel을 선택한 후에, 자동으로 이 부분이 실행될 것이다.
경고: mkinitcpio.conf을 올바르게 설정하는것에 실패하면, 당신 시스템은 띄우기(boot) 하지 못할 것이다! 이러한 이유로, 당신이 이 파일을 조정할때 특별히 조심해야 한다.
당신이 시스템을 띄우기(boot)하지 못하게 해버렸다면, 표준 커널과 나란히 설치되는 대체 이미지(fallback image)를 사용하여 띄우기(boot)을 시도할 수 있다. 이 띄우기(boot) 선택은 기본 내장 GRUB과 LILO 설정에 포함되어 있다. [http]fstab 부분에서 상세히 설명된 pata 변환 문제들에 대한 경고를 주의깊게 읽어라!

/etc/modprobe.conf

이는 시스템 장치를 위해 어떤 모듈들을 올려야 할 지와, 지정할 선택사양들(options)이 뭔지를 커널에게 알려준다. 예를 들어, 통신망을 시작할때(즉, eth0 구성을 시도할 때) 커널이 당신의 Realtek 8139 이더넷 모듈을 올리게 할려면, 아래 행을 사용해라:
alias eth0 8139too
post-install과 같은 좀 더 색다른 선택 지정을 사용하지 않는 한, 이 파일의 문법은 오래된 modules.conf 체계와 거의 같다. 그러면, 당신은, man modprobe.conf을 읽는데 약간의 시간을 투자해야 한다.

대부분의 사람들은 이 파일을 편집할 필요가 없을 것이다.

/etc/resolv.conf

사용기 원하는 네임서버(들)을 수동으로 구성하기 위해서 이 파일을 사용하라. 이것은 기본적으로 아래와 같을 것이다:
search domain.tld
nameserver 192.168.0.1
nameserver 192.168.0.2
domain.tld와 ip 주소들을 당신의 구성들로 대체하라. 이른 바 search domain은, 부적당한 호스트명들에 자동으로 부가되는 기본 도메인을 표시한다. 이렇게 지정하면, ping myhost는 위의 값들에 의해 효과적으로 ping myhost.domain.tld가 될 것이다. 이 지정들은 보통 별로 중요하진 않아서, 대부분 사람들은 우선 이것들 자체로 냅둘 것이다. 만약 당신이 DHCP를 사용한다면, 네트워킹이 시작될 때, 이 파일은 자동으로 올바른 값들을 부여 받을 것이다. 이는 기꺼이 이 파일을 무시할 수 있다는 걸 의미한다.

/etc/locale.gen

이 파일에는, 당신이 이용할 수 있는, 모든 지원되는 로케일과 문자 집합(charset)들의 목록이 있다. /etc/rc.conf에서 LOCALE을 선택할 때 혹은 프로그램을 시작할 때, 기계어로 번역된 판("compiled version")이 시스템에서 이용 가능하게 하기 위해서는, 이 파일에서 관련된 로케일을 설명제거화(uncomment)하는 것이 요구된다. 그리고, 모든 설명제거화된(uncommented) 로케일들을 생성시켜서 후에 제자리에 그것들을 두기 위해서, root에서 local-gen명령을 실행하라. 당신이 사용하고자 하는 모든 로케일을 설명제거화(uncomment) 해야 한다.
설치 과정 중에, 수동으로 locale-gen을 실행할 필요는 없다. 이 파일에 변경이 저장된 후에 자동으로 처리된다.
기본적으로, /etc/rc.conf 파일에 언급되는 기본 en_US.utf8 로케일을 포함해서, 모든 로케일들이 설명처리화(commented out) 되어 있다. 시스템이 원할하게 동작하기 위해서는, 이 파일을 편집해서 rc.conf에서 사용하는 최소한 하나의 로케일은 설명처리 해제(uncomment)해야 한다.

/boot/grub/menu.lst

GRUB은 아치 리눅스에서 기본적인 띄우기 싣개(bootloader)이다. 그럽을 사용하길 원하면, 띄우기(boot) 설정을 조정하기 위해서 이 파일을 점검하고 수정해야 한다. 만약 그렇지 않으면 [http]리로 설정을 읽어라.
[http]fstab 부분에서 상세히 설명된, pata 변환 문제와 관련된 경고를 확실히 읽도록 하라!
그럽을 설정하기는 꽤 쉽지만, 가장 큰 장애물은 /dev와 다른, 또 다른 장치 명명 체계를 아직 사용한다는 사실이다; 당신의 하드 디스크들은 전체로서 (hd0), (hd1) 등으로 언급되는데, 리눅스에서 hda, hdb 등으로 명명되는 것처럼, IDE/SCSI 버스에서 나타나는 순서대로 연속적으로 번호가 매겨진다. 디스크 가르기(partition)들은 (hd0,0), (hd0,1) 등등으로 언급되는데, 여기서 0는 첫번째 가르기(partition)을 의미한다. 당신의 이해를 돕기 위해 기본 menu.lst에 약간의 변환 예들이 포함되어 있다.

일단 장치 명명 개념을 파악하고 나면, 당신의 띄우기(boot) 구역에 대한 근사한 제목을 선택하고, 띄우기(bootup)시에 /로 마운트하기 위한 root 옵션에 매개 변수로서 정확한 가르기(partition) 장치를 부여하고, 띄우기(boot) 매개변수들과 함께 커널이 위치한 가르기(partition)과 경로를 포함하는 kernel 행을 만드는 것이, 할 필요가 있는 모든 것이다. 표준 아치 2.6.x 커널을 사용한다면, 당신의 boot 디렉토리에 있는 kernel26.img 파일을 가리키는 initrd 행이 당신에게 필요할 것이다. initrd 행에서 놓여지는 경로는, kernel 행에서 주어지는 vmlinuz26 경로와 동일해야 한다. pata 문제를 특별히 고려하여 rootkernel 행들에서의 가르기(partition) 정보가 정확한지 여부만 점검한다면, 기본 내장 설정이 더할 나위 없을 것이다!

다른 종류의 OS 대한 띄우기(boot)영역을 올리기 위한 띄우기(boot) 선택사양을 만들기 위해서, 다음 예는 도움을 줄 수 있을 것이다. 단지 다른 구역 뒤에 이 덩어리를 추가하고 나서, 당신이 띄우기(boot)하고자 하는 OS의 띄우기(boot)영역을 포함하는 가르기(partition)을 지시하도록 가르기(partition) 장치를 수정하므로써, 어떠한 마이크로소프트 기반 운영체계도 아마 시동하는데 성공할 수 있을 것이다.
# (1) Other OS
title My Other OS
rootnoverify (hd0,1)
makeactive
chainloader +1
다른 OS들에 대한 고급 설정을 위해서는 [http]온라인 그럽 안내서를 참고하도록 하라.

띄우기 싣개(bootloader) 설정이 올바른지 점검한 후에, 로더를 설치할 가르기(partition) 입력을 요구 받을 것이다. 아직 다른 띄우기 싣개(bootloader)를 사용하고 있지 않다면, 보통 숫자 접미어 없이 해당 장치이름을 나타내는, 설치 디스크의 MBR에 GRUB을 설치해야 한다.

/etc/lilo.conf

이는 리로 띄우기 싣개(bootloader)의 설정파일이다. 만약 시스템 띄우기(boot)를 위해 리로 사용을 원한다면, 이것을 점검하고 올바르게 고쳐라. 이것에 대해 도움을 얻고자 한다면 [http]리로 설명서를 보라.

당신이 점검해야 될 것은, 이미지 구역내에 있는 root= 행들과 파일 첫머리에 있는 boot= 행이다. root 행들은 띄우기(bootup)시에 루트 파일시스템으로 마운트할 장치를 명시한다. 만약 여기다 뭘 넣어야 될 지 모른다면, 다른 터미널에서 현재 마운트된 장치들의 모든 목록을 볼 수 있도록 mount를 쳐 넣어서, on /mnt type ...에 마운트된 장치명을 보여주는 행을 찾아라. 바로 그 행의 처음에 있는 장치 경로가 lilo.confroot행들에 들어가야 한다. 필요하면 바꾸고, pata 문제를 명심해라!

boot 행은 대부분의 경우 기본 내정 상태로 둬도 무방하다. 만약 당신이 다수의 OS들로 이뤄진 무시무시한 띄우기(boot) 관리를 구축할 생각이 아니라면, 여기서 언급된 장치는 root 행들의 앞부분과 같은데, 끝 숫자가 없다. 예를 들어 /dev/hda3 루트인 경우, 하드디스크의 매스트 띄우기(boot) 레코드(Master Boot Record)에 리로를 설치하기 원할 것인데, 디스크 전체를 가리키는 /dev/hdaboot에 지정하면 된다. 설치하는 동안, boot 장치는, 띄우기(boot)섹터를 기록할려고 하는, 장치의 현재 이름이어야 한다; pata 변환 때문에, 이것은 첫 띄우기(boot) 후의 장치 이름과 다를 수 있다! 예를 들어 mount 명령을 사용하여, 설치 단계 동안 기록되는 장치가 무엇인지, 주의깊게 점검해라.
어떤 심각한 재앙을 막기 위해서, 당신은 예를 들어 윈도우즈의 FIXBOOT/FIXMBR 도구들과 같은 다른 OS들의 띄우기(boot)섹터를 복원하는 방법을 알고 있어야 한다.

안전을 기하기 위해, prompt행 바로 아래에 lba32 선택사양을 둬야 한다. 이는 어떤 구조적인 문제가 일어나는 것을 막는다.

어떤 경우에는, 당신의 바이오스에 따라서, 리로가 띄우기(bootup)을 작동시키지 않고 오류 부호를 무한정 뱉어낼 것이다. 대부분의 경우 lba32 선택사양을 제거 했던지, 아니면 CD-ROM 드라이브가 프라미머리 매스터(primary master)이고 하드 드라이브를 세컨더리 스레이브(secondary slave)에 설치한 것처럼, 하드웨어 설치가 약간 특별한 경우이다. 이는 바이오스를 매우 혼란시켜서 띄우기(bootup)을 막을 수 있다. 이를 예방하기 위해서는 IDE 버스상에 설치 드라이브를 프라이머리 매스터(primary master)로 해라. 만약 IDE와 SCSI 체계가 섞여 있고 문제가 계속된다면, 아마 작업배치(working mapping)을 제공할 diskbios 선택사양들에 대한 몇가지 실험 작업이 필요할 것이다; 당신 시스템에서 디스크 드라이브들은 바이오스에 의해 0x80로 시작하여 연속적으로 번호가 매겨져 있다. 운이 좋다면 SCSI 컨트롤러가 어느 드라이브가 어느 BIOS ID를 가지고 있는 지 알려주겠지만, 대부분의 경우는 아니다. 드라이브들이 어떻게 효과적으로 번호가 매겨져 있느냐는 당신의 바이오스에 따라 달라서, 최악의 경우 동작하기 전까지는 단지 추측만 가능할 것이다. 대표적인 disk행은 아래와 같다:
boot=/dev/hda
disk=/dev/hda bios=0x80
disk 선택사양은 리눅스에서 알려진 디스크 장치에 BIOS ID를 배치한다. 다른 것들이 잘못되어 있을 수 있기 때문에 제대로 동작할 것이라는 보장은 여전히 없음에 유의하라. 그래서, 당신의 모든 시도가 실패한다고 해서 절망하지 말고, 전체적으로 이상하지 않은 방식으로 차라리 당신 하드웨어 재배치를 시도해라. 이 영역에서 너무 많은 것이 잘못되어서, 여기서 설명된 특별한 처리가 필요할 수 있다. 대부분의 경우에는 어쨌든 lba32 선택사양이면 충분하다. 구식 하드 드라이브들은 명령대로 행하기까지, 통상 좀 더 특별한 주의가 필요할 것이다.
이 부분을 읽고 안절부절하지는 말아라. 꽤 특이한 시스템을 가지고 시도했을때, 내(Dennis)가 이 문제를 당했었기 때문에, 여기서 이 방해물과 대안들을 언급하는게 좋다고 생각했다. 여하튼 GRUB을 사용할 때는, 당신은 아마 이것을 절대 겪지 않을 것이다.

구조 디스크(rescue disk)로 [http]리로 띄우기(boot) 영역을 재생성하는 방법은, 나중에 이 문서에서 설명된다.

/etc/conf.d/*

셋업할 동안에, 이 파일은 전적으로 중요하지 않다. 흥미를 위한 참고로 이것을 검토해라.

어떤 디몬 스크립트들은 이 디렉토리내에, 다소 유용한 기본 내정 값들을 가지는, 걸맞는 설정파일을 가지고 있을 것이다. 디몬이 시작되면, 먼저 이 디렉토리내의 설정파일로 부터 설정들을 구하고, 그 다음 /etc/rc.conf로 부터 구한다. 이것이 뜻하는 바는, rc.conf내에 적절한 변수값들을 지정함으로써, 쉽게 모든 디몬 설정 사양들을 집중화할 수 있다는 것이다. 아니면, 당신이 이 문제에 분산화된 접근을 선호하면, 여러 파일들로 설정을 쪼갤 수 있다. 모든 걸 간단히 쓰는게 멋지지 않을까?

/etc/profile

이 스크립트는 각 사용자가 로그인할 때마다 시스템을 초기화하기 위해 실행된다. 대부분의 것들이 그런 것처럼, 아치 리눅스에서는 상당히 간단하게 되어있다. 원하는 대로 맞추기 위해서, 당신은 이를 편집하거나 맞춤화하길 원할 것이다.

띄우기(boot) 스크립트들

아치 리눅스는 *BSDs와 상당히 유사한, 아주 단순한 띄우기(bootup) 절차(sequence)를 사용한다. 실행되는 첫번째 띄우기(boot) 스크립트는 /etc/rc.sysinit이다. 이것이 실행된 후에, (통상적인 띄우기(bootup)시에) /etc/rc.multi가 호출된다. 실행될 마지막 스트립트는 /etc/rc.local이다. 단일 사용자 방식(the single user mode)인 런레벨 1로 시작될 때는, /etc/rc.multi 대신에 /etc/rc.single 스크립트가 실행된다. 당신은, 모든 가능 런레벨별로 띄우기(boot) 순서를 정의하는, /etc/rc?.d/ 디렉토리의 무수한 심볼링크 모음을 발견할 수 없을 것이다. 이러한 접근방법으로 인해, 만약 당신이 런레벨 5로 X를 시작하는 것을 고려하면, 아치는 실제 세가지 런레벨만을 가진다. 띄우기(boot) 스크립트들은, /etc/rc.conf 파일내에서 발견되는 변수 및 정의들과 그리고 또 /etc/rc.d/functions 스크립트에서 명시된 일반 함수들 모음(set of general functions)을 사용한다. 만약 당신 자신의 디몬 파일들을 작성할 계획이라면, 이 파일과 존재하는 디몬 스크립트들을 보는 걸 고려해야 한다.

/etc/rc.sysinit

중심이 되는 시스템 띄우기(boot) 스크립트. 이는, 파일시스템 마운트, devfsd 실행, 스왑 작동, 모듈 올리기, 국지 매개변수들(localization parameters) 지정 등과 같은 띄우기(boot)에 결정적인 것들을 수행한다. 아마 당신은 이 파일을 편집할 필요가 결코 없을 것이다!

/etc/rc.single

단일 사용자 시동 스크립트. 정규 띄우기(bootup)에서는 사용되지 않는다. 예를 들어 띄우기(boot)전에 커널 매개변수를 1로 혹은 보통의 다중 사용자 작업동안 init 1 명령으로 인해, 시스템이 단일 사용자 방식으로 시작된다면, 이 스크립트는 최소한의 것(syslog-ngudev)을 제외하고는 아무 디몬도 작동하지 않도록 한다. 단일 사용자 방식은, 원격 사용자자료 손실 이나 손상을 유발하는 어떠한 것도 확실히 못하게 하면서, 어떤 시스템을 변경할 필요가 있으때 유용하다.

데스크탑 사용자들에게는, 보통 이 방식이 쓸모없다. 또한 당신은 이 스크립트를 편집할 필요도 없을 것이다.

/etc/rc.multi

다중 사용자 시동 스크립트. 이는, 당신이 (/etc/rc.conf에 지정된) DAEMONS 배열에서 설정한 모든 디몬들을 시작 시킨다. 그 다음에 /etc/rc.local를 호출한다. 당신은 이 파일을 편집해야 할 절박한 필요성를 느끼지 못할 것이다.

/etc/rc.local

국부(local) 다중 사용자 시작 스크립트. 여기는, 띄우기(bootup) 과정 마지막에 시스템이 실행하길 원하는 최종적인 명령들을, 넣어두기 좋은 장소이다. 이는, 당신이 원하면 수정해야할 하나의 유일한 스크립트이다. 이 스크립트에 뭘 추가할 것인지에 대해, 당신은 완전한 자유를 가진다.
모듈 올리기, 콘솔 글꼴 변경, 장치 지정과 같은 대부분의 시스템 설정 작업들은, 통상적으로 그것들이 속하는 전용 장소를 가지고 있다. 혼란을 피하기 위해서는, 당신이 rc.local에 추가할려고 하는 것이, /etc/profile.d/나 혹은 이미 존재하는 다른 설정 장소에 더 잘 어울리는 것이 아닌지 확인해야 한다.

/etc/rc.shutdown

시스템 종료 스크립트. 이것은 디몬들을 중지시키고, 파일시스템들을 언마운트하고, 스왑을 비작동 시키는 등을 수행한다. 건드리지 마라.

/etc/rc.local.shutdown

/etc/rc.local 파일과 유사하게, 이 파일은 rc.shutdown이 수행되기 바로 전에 당신이 실행하고자 하는 어떠한 명령들을 포함할 수 있다. 이 파일은 기본내정으로는 존재하지 않는다는 사실에 유념하라. 이것이 적절히 동작하기 위해서는, 실행할 수 있게 설정이 되어 있어야 한다.

/etc/rc.d/*

이 디렉토리에는, rc.conf의 디몬들 배열에서 언급되는, 디몬 스크립트들이 포함되어 있다. 띄우기(bootup) 과정에서 호출하는 것 뿐만 아니라, 시스템이 당신 시스템 서비스 관리를 수행 중일때도 이 스크립트들을 사용할 수 있다. 예를 들어 명령어
# /etc/rc.d/postfix stop
postfix 디몬을 중지시킨다. 물론 적절한 꾸러미가 설치되어 있을때(이 경우 postfix), 스크립트가 존재한다. 기본 시스템 설치시에는 여기에 스크립트들이 많지 않을 것이지만, 모든 관련 스트립트들은 여기에 모이게 된다. 이 디렉토리는 타 배포판에서의 /etc/rc3.d//etc/init.d/ 디렉토리와 거의 같은 것인데, 혼란스러운 심링크(symlink)는 없다.

사용자 관리

사용자들과 집단(group)들은, util-linux 꾸러미에서 제공되는 기본 명령어들(useradd, userdel, groupadd, groupdel, passwd, 그리고 gpasswd)에 의해 추가되고 삭제될 수 있다. 사용자를 추가하는 대표적인 방법은 아래 절차와 비슷하다:
# useradd -m -s /bin/bash johndoe
# passwd johndoe
첫번째 명령은 시스템에 johndoe라는 사용자를 추가하고, /home/johndoe홈 디렉토리를 만들고, 홈 디렉토리에 약간의 기본 내정 로그인 파일들을 갖다 둘 것이다. 또한 로그인 쉘을 /bin/bash지정할 것이다. 두번째 명령은 johndoe 사용자의 암호를 물어 볼 것이다. 계정이 작동하기 위해서는 암호가 필요하다.

useradd 명령의 대안으로서, adduser 스크립트는 대화식으로 질문들에 단순히 대답하는 것에 의해, 시스템에 새로운 사용자들을 만들 수 있게 한다.

나머지 명령어들에 대한 정보를 더 얻을려면 맨페이지를 보라. 이용 가능한 보안 기능들을 충분히 사용하고, 시스템 관리 일들 이외의 것에 root 사용자를 사용한 결과로 일어날 수 있는 잠재적인 피해를 최소화하기 위해서, 일상적인 작업용으로 하나 혹은 여러개의 일반 사용자들을 만드는 것이 좋은 생각이다.

인터넷 연결

전화연결 문제들에 대한 개발자 부족으로, 아치의 전화선 인터넷 연결을 위해선 많은 수동 설정이 필요하다. 가능하면, 아치 상자에 기본 게이트웨이로 사용할 수 있는 전용 router를 구축하라.
[http]아치 리눅스 위키에 상당히 많은 전화 연결 관련 문서들이 있다.

아날로그 모뎀

헤이즈(Hayes) 호환성의, 외장형의, 아날로그 모뎀을 사용하기 위해서는, 최소한 ppp 꾸러미 설치가 필요하다. 당신이 필요한 것들을 맞추기 위해서, 그리고 man pppd에 따라서, /etc/ppp/options 파일을 수정하라. 초기 연결이 수립된 후에, ISP에 사용자명과 암호를 제시하기 위해, 당신은 chat 스크립트를 정의할 필요가 있을 것이다. 당신이 충분히 경험이 있든지 혹은 고집이 세든지 하기만 하면, 연결 실행에 충분한 실례들이 pppdchat의 맨페이지에 있다. udev에서는, 당신 직렬 포트들은 보통 /dev/tts/0/dev/tts/1이다.

평이한 pppd와 명예로운 전투를 치르는 대신에, wvdial이나 혹은 구축 절차를 상당히 쉽게하는 유사한 도구 설치를 선택할 수 있을 것이다.

내장 아날로그 모뎀으로 동작하는, 기본적으로 PCI 접속식 카드인, 이른바 WinModem을 사용하는 경우에는, [http]LinModem 홈페이지에서 광대한 정보 찾기에 몰두해야 한다.

ISDN

ISDN 구축은 세 단계로 진행된다:
  1. 장치를 설치하고 설정한다
  2. ISDN 유틸리티를 설치하고 설정한다
  3. 당신 ISP에 대한 지정들을 추가한다
아치 표준 커널들은 필요한 ISDN 모듈들을 포함하고 있다. 이는, 당신이 상당히 특이한 ISDN 장치를 가지고 있지 않는 한, 커널을 재 컴파일할 필요가 없다는 걸 뜻한다. 컴퓨터에 ISDN 카드를 물리적으로 설치한 후에, 혹은 당신의 USB ISDN-Box에 꽂은 후에, modprobe로 모듈들 올리기를 시도할 수 있다. 거의 모든 수동 ISDN PCI 카드들은, typeprotocol이라는 두개의 매개변수가 필요한 hisax 모듈로 조종된다. 당신 나라가 1TR6 표준을 사용한다면 protocol을 '1'로 지정하고, EuroISDN (EDSS1)을 사용한다면 '2'로, 당신이 이른바 D-channel이 없는 임차 통신선(leased-line)에 걸려 들었다면 '3'을, US NI1에 대해서는 '4'를 protocol에 지정해야 한다.

모든 그 지정들에 대한 세부항목들과 그것들을 지정하는 방법은 커널내 문서에, 특히 isdn 하위 디렉토리에, 혹은 유용한 온라인에 포함되어 있다. type 매개변수는 당신 카드에 따라 달라진다; 모든 가능 type들 목록은 README.HiSax 커널 문서에 있다. 아래와 같이 적절한 선택사양들을 사용하여 카드를 고르고 모듈을 올려라:
# modprobe hisax type=18 protocol=2
이는, 독일에서 사용하는 EDSS1 통신 규약(protocol)과 ELSA Quickstep 1000PCI 용으로, hisax 모듈을 올릴 것이다. 당신은, 카드 작동 준비가 되었는지 볼 수 있는 /var/log/everything.log 파일에서, 도움이 될 만한 오류제거 출력을 발견할 수 있다. 외장형 USB ISDN 어댑터를 동작시키 전에, 아마도 어떤 usb 모듈들을 올릴 필요가 있다는 사실에 주의하라.

일단 특정 설정으로 카드 동작이 확인되면, 당신은 /etc/modprobe.conf모듈 지정 사양(option)들을 추가할 수 있다:
alias ippp0 hisax
options hisax type=18 protocol=2
다른 방법으로는, 여기서 options 행만 추가하고, hisaxrc.conf내의 MODULES 배열에 추가할 수 있다. 사실 당신 선택이지만, 이 예는, 실제 필요하기 전에는 모듈이 올라가지 않는다는, 이점을 가진다.

해야될 것으로, 당신은 작동하고 지원되는 장치를 가지고 있어야 한다. 그 다음 실제 사용할 기본 유틸리티들이 필요하다!

isdn4k-utils 꾸러미를 설치하고, isdnctrl 맨페이지를 읽어라. 이게 시작이다. 맨페이지에서, 어떤 도움이 되는 셋업 실례들 뿐만 아니라, isdnctrl에 의해 해석될 수 있는 설정파일 작성법에 대한 설명들을 더 발견할 것이다.
만약 당신이 US NI1를 사용한다면, MSN 지정에 콜론으로 분리하여 SPID를 추가해야 한다는 사실에 주의하라.

isdnctrl 유틸리티로 당신의 ISDN 카드를 설정한 후에, PHONE_OUT 매개변수를 사용해서 명기한 장치에 전화연결을 할 수 있을 것이지만, 사용자명과 암호 인증에 실패할 것이다. 이게 동작하도록 하기 위해서, 보통의 아날로그 PPP 연결을 설정하는 것처럼, 당신 ISP가 인증에 사용하는 통신방식에 따라서, 당신 사용자명과 암호를 /etc/ppp/pap-secrets이나 /etc/ppp/chap-secrets추가하라. 명확하지 않다면, 양쪽 파일 모두에 당신 정보를 넣어라.

모든걸 제대로 구축했다면, 이제 root로서 isdnctrl dial ippp0를 사용하여 전화연결을 완수할 수 있을 것이다. 어떤 문제들을 가지고 있다면, 로그 파일들을 점검해야한다는 걸 기억해라!

DSL (PPPoE)

PC 스스로 ISP 연결을 수행 하기로 되어 있다면, 이 설명이 당신에게 타당하다. 지루하고 고된 일을 수행해낼 수 있는 어떤 종류의 독립된 router를 사용하고 있다면, 올바른 기본 내정 게이트웨이 정의 이외에 다른 것을 할 필요는 없다.

DSL 온라인 연결을 사용할 수 있기 전에, 당신은 컴퓨터에 DSL-Modem에 연결할 물리적인 통신망 카드를 설치해야 할 것이다. 새로 설치한 통신망 카드를 modprobe.confMODULES 배열에 추가한 후에, rp-pppoe 꾸러미를 설치하고, 연결을 구성할 pppoe-setup 스크립트를 실행해야 한다. 모든 정보를 입력한 후에, 아래 명령으로 각각 당신 통신선을 접속하고 끊을 수 있다.
# /etc/rc.d/adsl start
그리고
# /etc/rc.d/adsl stop
보통 설정은 상당히 쉽고 간단하지만, 단서들을 얻기 위해서 마음 편히 맨페이지를 읽어라. 띄우기(bootup)할 ㅤㄸㅒㅤ 자동으로 전화 연결을 원하다면, 당신의 DAEMONS 배열에 adsl을 추가하라.

꾸러미 관리

Pacman

pacman은 시스템에 설치된 모든 소프트웨어를 추적하는 꾸러미(package) 관리자이다. 이는 간결한 의존성 지원을 가지며, 모든 꾸러미들에 대해 표준의 압축된(gzipped) tar 저장 형식을 사용한다. 명령들 각각에 대해 긴 선택사양과 짧은 선택사양(option) 형태를 사용하여, 몇가지 통상적인 기능들이 아래에 설명되어 있다. pacman의 선택사양에 대한 최신 설명을 볼려면, man pacman을 읽어보라. 이 개요는 단지, pacman의 현 기능들에 대해 겉만 핥은 것이다.

꾸러미 파일로 새로운 꾸러미 추가하기

# pacman --add foo.pkg.tar.gz
# pacman -A foo.pkg.tar.gz
이것은 시스템에 foo.pkg.tar.gz 꾸러미를 설치할 것이다. 만약 의존물들이 빠져 있다면, pacman은 오류와 없는 의존물들을 보고하고는 나가 버릴 것이다. 자동으로 빠진 의존물들을 해결할려고 시도하지 않을 것이다. 만약 이 기능을 바란다면 --sync 선택사양을 보라. 다중 꾸러미 추가가 가능한데, 대상 파일들이 서로 의존적이라면, 자동으로 꾸러미들이 올바른 순서대로 설치될 것이다.

꾸러미 파일로 꾸러미 갱신(upgrade)하기

# pacman --upgrade foo.pkg.tar.gz
# pacman -U foo.pkg.tar.gz
이는 본질적으로 --add 기능과 같지만, 추가적인 대가 없이 기 설치된 꾸러미를 갱신(upgrade)할 것이다. 꾸러미가 기 설치되어 있을 때에는 pacman이 중단되길 원하는 경우가 아니라면, 당신이 --upgrade 기능보다 --add를 더 선호할 것으로는 생각하지 않는다.

꾸러미들 제거하기

# pacman --remove foo
# pacman -R foo
이것은, 편집된 설정 파일들은 제외한, foo라는 이름의 꾸러미에 속하는 모든 파일들을 삭제할 것이다. 이 명령에는, pkg.tar.gz 접미사 없이 꾸러미(package) 이름만을 부여하라.

꾸러미의 모든 남겨진 흔적을 없애기 위해서는, 위의 명령에 --nosave 선택사양을 추가하라.

꾸러미 목록 갱신하기

# pacman --sync --refresh
# pacman -Sy
이는 /etc/pacman.conf내에 정의된 저장소들로 부터 최신의 원본 꾸러미 목록을 검색해서, 데이타베이스 영역에 그것을 풀어 놓을 것이다. 최신의 꾸러미들을 확실히 얻기 위해서는, --sysupgrade를 사용하기 전에 이 명령을 사용해야한다. pacman.conf의 환경설정에 따라서, 이 명령은 FTP 기반 저장소들에 접근하기 위해, 인터넷 연결 작동이 필요할 수 있다. 이 선택사양은 데비안의 apt-get update 명령과 상당히 유사하다.

시스템 갱신(upgrade)하기

# pacman --sync --sysupgrade
# pacman -Su
이 명령은 --refresh 명령으로 내려받은 원본 꾸러미 목록의 판들과 지역(local) 꾸러미 판을 비교해서, 당신 시스템에서 한물간 모든 꾸러미들을 갱신(upgrade)할 것이다. 당신 시스템을 최신으로 유지하기 위해서는, 이 명령을 정기적으로 수행하는 것이 좋을 것이다. 이 명령은 무조건적으로 원본 패키지 목록을 새로 공급하지는 않는다는 사실에 주의하라. 그래서 일반적으로 아래와 같이 두 명령들을 하나로 결합하는 것이 보다 현명하다:
# pacman --sync --refresh --sysupgrade
# pacman -Syu
이 선택사양들을 사용하여 pacman은 최신 원본 꾸러미 목록을 자동 검색해서, 자동 결정된 모든 의존물들과 함께, 최신 꾸러미들로 전체시스템을 갱신(upgrade)할 것이다. 당신은 이것을 꽤 자주 실행하고 싶을 것이다.

저장소들로 부터 꾸러미 추가/ 갱신(upgrade)하기

# pacman --sync foo
# pacman -S foo
요구되는 모든 의존물들을 갖추어서, foo 꾸러미에 대한 검색 설치를 진행한다. 어떠한 sync 선택사양을 사용하기 전에, 꾸러미 목록을 갱신했는지 확인하라. 혹은, 설치를 시도하기 전에 선택사양들에 --refresh-y를 추가하라. --add와 달리, --sync 선택사양은 꾸러미 설치와 갱신(upgrade)를 구별하지 않는다. pacman.conf 설정에 따라, 이 기능은 인터넷 연결 작동이 필요하다.

설치된 꾸러미들의 목록보기

# pacman --query
# pacman -Q
시스템에 설치된 모든 꾸러미들의 목록을 보여준다.

특정 꾸러미의 설치 유무 확인하기

# pacman --query foo
# pacman -Q foo
이름에 대한 전체 목록을 가져오는 대신에, 찾고자 하는 꾸러미 이름을 query 명령에 덧붙일 수 있다. 이 명령은, 만약 설치되어 있다면, foo 꾸러미의 이름과 판을 보여줄 것이다. 딴 것은 보여주지 않는다.

특정 꾸러미 정보 표시하기

# pacman --query --info foo
# pacman -Qi foo
설치된 꾸러미 foo의 정보(크기, 설치 날짜, 빌드 날짜, 의존물들, 상충물들 등등)를 보여준다. 아직 설치되지 않은 꾸러미 파일의 정보를 나타낼려면, 각각에 대해 --file 혹은 -p 선택사양을 추가하라:
# pacman --query --info --file foo.pkg.tar.gz
# pacman -Qip foo.pkg.tar.gz

꾸러미에 포함된 파일 목록 표시하기

# pacman --query --list foo
# pacman -Ql foo
꾸러미 foo에 속하는 모든 파일들의 목록을 보여준다.

특정 파일이 어느 꾸러미에 속하는지 알아내기

# pacman --query --owns /path/to/file
# pacman -Qo /path/to/file
이 query는, 매개변수로 전체경로를 참고해서, 특정 파일을 포함하는 꾸러미의 이름과 판을 보여준다. 경로없이 파일 이름만 사용하면 결과가 나오지 않을 것이다.

저장소 접근

꾸러미 저장소는, 지역 디렉토리나 원격 FTP/HTTP 서버에 존재할 수 있는, 꾸러미들과 꾸러미 메타-정보(meta-info) 파일의 모음이다. 아치 시스템의 기본 저장소는 current 저장소이다. 이 저장소는, 최신 판의 소프트웨어들이 대부분 포함되도록, 개발자들에 의해 최신식으로 유지되고 있다. 상당히 최첨단으로 유지된다.

많은 사용자들은 또한, 아치의 핵심 꾸러미 집단에 속하지 않는 더 많은 꾸러미들이 들어 있는, extra 꾸러미 저장소가 활성화 되도록 선택할 수 있다. /etc/pacman.conf내의 적정 행의 설명 처리를 해제(uncomment)함으로써, 이것을 작동시킬 수 있다. 이 저장소는 기본적으로 활성화 된다.

당신은 또한 자신의 꾸러미 저장소들을 만들고, 유지하고, 사용할 수 있다. 설명을 얻기 위해 [http]pacman 맨페이지를 보라.

CD-ROM으로 설치하고 나서 인터넷 연결 문제를 만나게 된다면, CD로부터 추가적인 꾸러미들을 설치할 필요가 있을 것이다. FAQs를 참고하여, 특히 이 문서 아래쪽 [http]FAQ #3, 설치 CD를 꾸러미(package) 공급처로 사용하는 저장소를 지정하는 법을 알 수 있을 것이다.

아치 빌드 시스템 (ABS)

이진(binary) 대 원천(source)

pacman은 꾸러미 세상의 이진(binary)쪽을 담당하고, ABS원천(source)쪽을 담당한다: 이는 원천(source) 코드로부터 당신 자신의 맞춤 꾸러미들을 제작하는데 도움을 주며, 또한 당신 자신에 맞춤화된 아치 리눅스 꾸러미들을 재제작할 수 있게 한다. 그 처리 절차는 통상적으로 아래와 같다:
  1. 당신의 ABS 나무꼴(tree)를 서버와 일치시킨다.
  2. 만들려고 하는 꾸러미의 이름을 따서 /var/abs/local/ 내에 새로운 디렉토리를 생성한다.
  3. /var/abs/로 부터 견본인 PKGBUILD.proto를 새로 만든 디렉토리로 복사한 다음, 접미어 proto를 제거하고, 새로운 꾸러미에 맞게 그것을 편집한다.
  4. PKGBUILD파일이 있는 작업 디렉토리에서 makepkg를 실행한다.
  5. 새로 만든 꾸러미를 pacman을 사용하여 설치한다.
  6. 자랑할 권리를 위해 그 꾸러미를 친구들에게 보낸다(혹은 원본 ABS 나무꼴(tree)에 넣을 수 있도록 Archer에 보낸다).

ABS 나무꼴(tree) 일치시키기

루트로 abs 스크립트를 실행함으로써, /var/abs내의 모든 PKGBUILD파일들을 일치화(synchronize)시킬 수 있다. 동작하기 위해선 cvsup 꾸러미가 필요한데, 이게 설치되어 있지 않다면 abs가 투덜댈 것이다. 물론 인터넷 연결 동작이 필요하다. 이송 매체로 CVS를 사용하므로써, ABS내의 다른 판 나무꼴(tree)들을 추적할 수 있다. - 이는 /etc/abs/supfile.arch에서 설정할 수 있다. 예를 들면, 기본 supfile은 current 꾸러미 나무꼴(tree)를 추적하도록 지정되어 있는데, 이는 최첨단이며 추적하길 추전하는 공급처이다. 당신은 또한 특정 판들을 추적할 수 있다. 더 많은 정보를 원하면 supfile들 안에 있는 설명들을 보라.

ABS는 다수의 저장소들을 지원하는데, 이것들을 /etc/abs/abs.conf로부터 작동시키거나 못하게 할 수 있다. abscurrentextra 저장소들을 기본으로 추적할 것이다. 딴 건 아니다.

당신은 또 /etc/abs/supfile.extra 파일을 발견할 수 있을 것이다. 이것은, 주 ABS 저장소에 포함되지 않은, 모든 비공식 설치 스크립트들에 접근할 수 있게 한다. 만약 이 저장소를 사용하고 싶지 않으면 이 파일을 지울 수도 있지만, 통상적으로는 abs.conf를 대신 편집해서 필요하지 않은 저장소들을 비활성화 시키는 것이 보다 현명하다.

꾸러미들 만드는 방법

만드는 절차는 [http]makepkg 맨페이지에 완전하게 설명되어 있다. 당신 자신의 꾸러미를 만드는 것에 대한 설명을 구하려면 이것을 보라. 만약 이게 도움이 되지 않으면, 위키내의 설명서들에 충분히 주의를 기울이거나, 혹은 포럼이나 IRC에 도움을 청해라.

꾸러미 지침

특히 아치 리눅스에 당신의 새 꾸러미를 제공하고자 한다면, 아치 리눅스 꾸러미를 만들때 아래의 꾸러미 지침들을 지켜야 한다.

꾸러미 명명

  • 꾸러미 이름들은 알파벳과 숫자로 이루어진 글자들만으로 이루어져야 한다; 모든 문자들은 소문자여야 한다.
  • 꾸러미 판들은 프로그래머가 발표한 판과 같아야 한다. 판들은 필요하면 문자들을 포함할 수 있다(예, nmap의 판은 얼마전에 2.54BETA32이었다). 판 꼬리표들은 연자부호(-)를 포함하지 않는다! 문자, 숫자, 점 들만 포함한다.
  • 꾸러미 배포구분들(releases)은 아치 리눅스 꾸러미들에 한정된다. 이것들은 사용자들이 새로운 꾸러미 작성물(build)과 과거의 것들을 구분할 수 있게 한다. 새로운 꾸러미 판이 처음 배포되면, 배포 계수(release count)는 1부터 시작한다. 다음 수정과 최적화가 되면, 꾸러미가 AL 대중에게 재배포되고 배포 계수는 증가할 것이다. 새로운 판이 나오면, 배포 계수는 1로 재지정된다. 꾸러미 배포구분 꼬리표들은 판꼬리표들과 동일한 명명 제한들을 따른다.

디렉토리들

설정 파일들/etc 디렉토리에 둬야 한다. 설정 파일이 하나보다 많다면, /etc 영역을 가능한한 깨끗하게 유지하기 위해서 하위 디렉토리를 사용하는 것이 관례이다. 꾸러미 이름이 {pkgname}이라면 /etc/{pkgname}/를 사용하라(혹은 타당한 다른 선택, 예로, 아파치는 /etc/httpd/를 사용한다).

꾸러미 파일들은 아래 일반적인 디렉토리 지침들을 따라야 한다:
/etc시스템 필수의 설정 파일들
/usr/bin응용 프로그램 이진(binary)들
/usr/sbin시스템 이진(binary)들
/usr/lib라이브러리들
/usr/include헤더 파일들
/usr/lib/{pkg}모듈들, 프러그인들 등등
/usr/man맨페이지들
/usr/share/{pkg}응용 프로그램 자료(data)
/etc/{pkg}{pkg}에 대한 설정 파일들
/opt리눅스 파일시스템 배치에 깔끔하게 맞지 않는 꾸러미들을 여기다 둘 수 있다. 꾸러미 파일들을 위 디렉토리들에 깔끔히 둘 수 있으면, 그렇게 하도록 하라. 맞지 않는 다른 상위 수준 디렉토리들이 존재하면, /opt를 사용해야 한다.
예를 들면, acrobat 꾸러미는 bin 디렉토리와 동일한 수준에 Browser, Reader, 그리고 Resource 디렉토리를 갖다 놓는다. 이는 통상의 리눅스 파일시스템 배치에 맞지 않기 때문에, 우리는 /opt의 하위 디렉토리에 모든 파일들을 둔다.
종잡을 수 없는가? 좋다.

makepkg의 역할

꾸러미 제작을 위해 makepkg를 사용할때, 아래 사항들이 자동으로 수행된다:
  1. 꾸러미 의존물들이 설치되어 있는지 점검한다
  2. 서버들로 부터 원천(source) 파일들을 내려받는다
  3. 원천(source) 파일들을 푼다
  4. 필요한 패치를 수행한다
  5. 소프트웨어를 빌드하고 그것을 가짜 루트(fake root)에 설치한다
  6. /usr/doc, /usr/info, /usr/share/doc, 그리고 /usr/share/info를 꾸러미에서 제거한다
  7. 이진(binary)들에서 심벌들을 벗겨낸다(strip)
  8. 라이버러리들에서 디버깅 심벌들을 벗겨낸다(strip)
  9. 각 꾸러미에 포함되는 꾸러미 메타 파일을 생성시킨다
  10. 가짜 루트(fake root)를 꾸러미 파일로 압축한다
  11. 꾸러미 파일을 지정된 목표 디렉토리(기본은 cwd)에 저장한다

그 밖의 것

꾸러미 빌드가 불가능하지 않는 한, 당신의 PKGBUILD 빌드 스크립트들에 새로운 변수들을 도입하지 말아라. 이것들은 makepkg 자체에서 사용되는 변수들과 충돌할 수 있다. 만약 새로운 변수가 절대적으로 요구되면, 변수명 앞에 밑줄(underscore, underline)을 접두어로 붙여라.

무슨 일이 있어도 /usr/libexec/의 사용을 피하라. 대신에 /usr/lib/{pkgname}를 사용하라.

/etc/makepkg.conf 파일에서 적절히 선택사양을 수정함으로써, 혹은 makepkg로 꾸러미들을 구축하기 전에 PACKAGER 환경변수를 전달(exporting)하는 다른 방법으로, 꾸러미 작성자가 꾸러미 메타 파일에서의 꾸러미 작성자 영역을 사용자 정의(customize)할 수 있다:
# export PACKAGER="John Doe <당신 이메일>"

꾸러미들 제출하기

만약 꾸러미들을 제출하길 원하면, [http]아치 사용자 저장소(Arch User Repository)와 그들 지침들을 한번 보기 바란다. 새로운 꾸러미들은 AUR에 제출되어야 한다.

만약 당신이 꾸러미를 제출하고자 한다면, 아래와 같이 해달라:
  1. 당신 PKGBUILD 파일 꼭대기에 설명(comment) 행을 아래 형식으로 추가해달라:
    # Contributor: 당신 이름 <당신 이메일>
    
  2. 꾸러미 의존물들을 검증하라 (예를 들면, 동적 수행물들에 대해 ldd를 돌리고, 스크립트가 요구하는 수단들을 점검하는 등.). 당신 꾸러미가 온전한지 분석하기 위해서, Jason Chu <Mjason@archlinux.org>에 의해 작성된, namcap 진단 프로그램을 사용하는 것도 좋은 생각이다. namcap은 당신에게, 틀린 허가들(permissions), 빠진 의존물들, 불필요한 의존물들, 그리고 다른 일반적인 실수들을 알려준다. 평소와 같이 당신은 pacman으로 namcap 꾸러미를 설치할 수 있다.
  3. 모든 꾸러미들은, 그 속에 새로 구축된 꾸러미PKGBUILDfilelist 그리고 추가적인 파일들 (패치들, install, ...)이 포함된 한 디렉토리를 담고 있는, 하나의 압축된 tar 파일로 와야 한다. 압축파일 이름은 최소한 꾸러미 이름을 포함하고 있어야 한다.
  4. AUR에 관한 적당한 문서들과 꾸러미화 지침에 대한 최신판을 [http]AUR 홈페이지에서 읽어달라.

자주 묻는 질문들

여기에 나열된 FAQ들은, 띄우기(boot)이나 초기 아치 리눅스 시스템 설치를 막는, 어떠한 문제들 만을 다룬다. 만약 시스템 유틸리티들, X11 구축 등의 더 나아간 사용이나, 당신 하드웨어들을 설정하는 방법과 관련된 질문들을 가지고 있다면, [http]위키로 방향을 돌리기 바란다. 만약 다루어야 될 어떤 문제가 여기서 다뤄지지 않고 있다고 생각되면, 이 문서의 저자에게 알려 주기 바란다. 그의 주소는 이 파일의 맨 꼭대기에서 발견할 수 있다.

꾸러미를 설치하는 동안, 꾸러미 B가 꾸러미 모음에 없어서, pacman이 꾸러미 A의 의존성 문제를 해결하지 못한다

어떤게 아주 망가져서 많은 사람들에 의해 조만간 보고될 것으로 예상되는 경우가 아니라면, 아마 당신이 단순히 대상 가르기(partition)들을 적절히 마운트하는 것을 잊어 버렸을 것이다. 이렇게 되면, pacman이 초기 램디스크에 꾸러미 데이타베이스를 압축 해제하게 되는데, 이는 램 디스크를 완전히 가득 차게 해서 결국 이 오류를 발생시키게 된다.

당신 선택들을 적용하기 위해서는, Filesystem Mountpoints 메뉴에서 제공되는 선택 사양 DONE을 확실히 사용해야지, CANCEL을 사용해서는 않된다. 만약 당신이 Auto-Prepare 기능을 사용한다면, 이 오류는 일어나서는 않된다; 그럼에도 불구하고 일어난다면, 결함으로 보고해 주기 바란다.

어떻게 pacman --sync(의존성 문제를 해결하도록)를 사용해서 설치 CD로 부터 꾸러미들을 설치할 수 있는가?

만약 당신이 내려받기 대신에 CD로 부터 꾸러미들을 설치를 하고자 한다면, 설치 CD를 어떤 곳(예, /mnt/cd)에 마운트해서 /etc/pacman.conf내의 current 행 바로 아래에 이 줄을 추가하라:
Server = file:///mnt/cd
/mnt/cd를 당신이 선택한 마운트포인트로 바꿔라. 그런 다음, 당신이 보통 하듯이 pacman --sync를 사용하라 - 지금은 이것이, 꾸러미들을 찾기 위해, /mnt/cd 디렉토리를 먼저 점검할 것이다.

설치할때 어떻게 여러개의 swap 가르기(partition)들을 만들 수 있는가?

만약 여러개의 스왑 가르기(partition)들을 만들어서 사용하고자 한다면, 당연히 Auto-Prepare 기능을 사용할 수 없을 것이다. 대신에 수동으로 가르기(partition)들을 만들고, 당신이 하고 싶은 만큼 많은 스왑 가르기(partition)들을 생성시켜라. 나머지 설치를 진행하고, 마운트포인트를 지정하는 단계에서 스왑 가르기(partition) 하나에 대해서만 질문 받는 것에 대해 신경 쓰지 마라. 설치를 끝내고 시스템 설정 파일들을 편집할 단계가 되면, 당신은 fstab 파일을 편집해서 당신이 앞에서 만든 모든 스왑 장치에 대한 행들을 포함시킬 수 있을 것이다. 자동 생성된 스왑 행을 단순히 복사해서, 당신 선택사양에 따라 참조된 장치로 고쳐라. initscripts에 의해 swapon -a가 수행되는 띄우기(bootup) 후에, 추가된 스왑들이 작동하게 될 것이다. 수동으로 모든 스왑 가르기(partition)에 대해 mkswap을 수행했는지 확인해라. 아닌 경우, 시스템은 띄우기(boot)할때 투덜거린다.

이상한 이유로 당신이 여러 개의 스왑 가르기(partition)이나 파일을 작동시키는 것을 설치 후까지 기다릴 수 없다면, 하나의 가상 터미널에서 쉘을 열어서, mkswap을 사용하여 앞에서 분할/준비한 각각의 스왑 장치나 파일에 대해, swapon <장치>를 입력해라. 그런 다음, 위에 설명된 것처럼 설치를 계속해라.

당신이 진짜 여러개의 스왑 파일이나 장치를 구성할려고 계획하고 있다면, 프로그램을 교환해야 하는 커널은, 좀더 많은 스왑 공간이 아니라, 실제 좀더 많은 RAM을 절실히 원한다는 사실을 명심해라. 당신 펭귄을 잘 키우기 바란다. 감사한다.

구조(rescue) 시스템으로 어떻게 LILO를 재설정 하나?

첫 단계로, 아치 설치 CD나 디스크로 단순히 띄우기(boot)한다. 당신 가르기(partition)들이 손상되지 않아서 검사할 필요가 없다면, 가르기(partition) 배치에 따라 복구 띄우기(boot) 선택사양 중 하나를 선택하여 시도하거나, 시스템이 적절히 띄우기(boot)되도록 GRUB 띄우기(boot) 관리자 설정들을 스스로 판단해서 만지작 거릴 수 있다. 이로써 바로 당신 시스템으로 띄우기(boot)하게 되는데, 실제 나머지를 모두 건너뀌고 LILO의 재설정 및 실행 부분인 마지막 단계로 갈 수 있다.

만약 기존 root로 띄우기(boot)할 수 없다면, 마치 설치를 시작할려고 하는 것처럼, CD로 부터 띄우기(boot)해라. 쉘로 떨어지면, 당신 하드디스크의 루트 가르기(partition)을 아래 예처럼 /mnt 디렉토리로 마운트하라:
# mount /dev/hda3 /mnt
그런 다음, 루트내에 존재하는 각각의 마운트 포인트들에 다른 가르기(partition)들을 마운트하라. 아래 예처럼:
# mount /dev/hda1 /mnt/boot
이제 , lilo가 발견할 수 있도록, /dev 나무꼴(tree)를 /mnt영역에 마운트할 필요가 있다:
# /mnt/bin/mount --bind /dev /mnt/dev
모든게 마운트되면, chroot /mnt 명령을 사용하여 /mnt 디렉토리를 당신의 새로운 루트로 만들어라. 이렇게 하면 새로운 쉘을 시작해서 /mnt 안으로 떨어지는데, 이때부터 이 디렉토리가 당신의 /로 간주될 것이다.

이제 당신 마음에 들게 /etc/lilo.conf를 편집한 다음, 수정이 필요한 것들이 모두 고쳐지도록 lilo를 실행할 수 있다. 다시 이 루트에서 빠져나와서 원래 파일 나무꼴(tree)로 돌아가길 원하면, 단순히 exit을 쳐 넣어라. 이제 reboot해서 당신이 고친 사항들을 시험해 볼 수 있을 것이다.

내 장치내로 ssh할 수 없다!

/etc/hosts.deny 파일을 편집하라. 기본 내정 설정은 ssh 연결뿐만 아니라, 모든 입력 연결들을 거부할 것이다.

띄우기(boot)하는 동안 어떻게 모듈들을 올려야 하나?

특별한 장치 속박과 관련없이 무조건적으로 모듈을 올리길 원한다면, /etc/rc.confMODULES 배열에 이 모듈명을 추가하라. udev와 hotplug가 채택하는 자동 작동이 제대로 해내지 못하는 드문 경우에, 장치 접근시에 적재하길 원하는 요구에 부응하기 위해서는, 종전처럼 aliasopton 명령을 사용하여 /etc/modprobe.conf에 모듈명을 추가하라. MODULES 배열을 통해 올리길 원하는 모듈에 특정 선택사양(option)들을 부여하려면, 적절한 options행만 /etc/modprobe.conf에 추가하라.

"lost interrupt"으로 인해 커널이 띄우기(boot)을 거부한다

커널이 띄우기(boot)하길 거부한다. 아래에서 멈춘다:
IRQ probe failed for hda
hda lost interrupt
이 오류 혹은 유사한 오류는, 커널 kernel 2.6.x 상에서 어떤 HD 제어장치들(controllers)에서 발생한다. 띄우기(boot) 때 acpi=off 선택사양을 커널에 부여하는 것이 하나의 회피 방법이 된다.

소리를 나게 할려고 하거나 혹은 DVD들을 읽을려고 하면 "접근 거부(access denied)" 오류들을 만나게 된다

당신 사용자에 opticalaudio 그룹을 추가하라.
# gpasswd -a johndoe optical
# gpasswd -a johndoe audio
그룹변경이 효력을 발휘하도록, 로그아웃했다가 저 사용자(예, johndoe)로 로그인하라. 그러면, 장치 허가가 더 이상 문제가 되지 않을 것이다.

DVD 드라이브를 가지고 있다면, 실제 DVD 장치에 /dev/dvd 심링크(symlink)를 만들길 원할 것이다. 보통 udev가 이미 이것을 하지만, 유사한 심링크(symlinks)을 구축하는 예로서 적합할 것이다.

예를 들어, /dev/sdc를 통해 DVD 드라이브에 접근할 수 있다면, 루트로서 아래 사항을 수행할 수 있다:
# cat >>/etc/udev/rules.d/00.rules <<EOF
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"
> EOF
# /etc/start_udev
# mount /dev/pts
# mount /dev/shm



sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2007-05-06 23:08:09
Processing time 0.0032 sec