아치리눅스설치안내서
아치 리눅스 0.8 (Voodoo) 설치 안내서 ¶2007년 2월 22일
판 1.02
Dennis Herbrich <
![]() ![]() ![]() 개요 ¶이 문서는 아치 리눅스 배포판 0.8 판(Voodoo)의 일반 사용자 용 문서이다. 이 문서는 필요한 파일 얻기, 배포판 설치 그리고 기본적인 띄우기(boot)가능 시스템 구축을 다룬다. 추가적으로, 시스템 구성과, pacman 꾸러미 관리자와 ABS와 같은 아치 고유의 도구들에 대해 간단히 언급한다.
내용 목록 ¶
아치 리눅스란 무엇인가? ¶아치 리눅스는, 원래 Per Lidén에 의해 개발된 훌륭한 배포판인
![]() 아치는 빠르고, 가볍고, 유연한 동시에 단순하다. 이 말들은 터무니 없는 선전문구가 아니라, 모두 사실이다. 아치는 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 이 있으며,
![]() 출처와 의견반영 ¶이 문서는 Judd Vinet <
![]() ![]() ![]() ![]() 설치전 ¶아치 리눅스는 i686 처리장치에 최적화되어 있어서, 어떠한 저사양 즉 호환되지 않는 x86 CPU(i386,i486,i586) 세대들에서는 동작하지 않을 것이다. 펜티업 II 혹은 AMD K6-2 처리장치나 그 이상이 요구된다.
x86-64 아키텍처도 공식적으로 지원된다.
아치 리눅스를 설치하기 전에, 여러분은 사용하고자 하는 설치 방법을 결정해야 한다. 아치 리눅스는 CD 롬 설치를 위한 세가지 다른 띄우기(boot)가능 ISO 이미지를 제공한다. 선호되는 설치 방법은 다루기 쉬운 CD-ROM 기반 설치로서, 공급되는 꾸러미들(packages)만 다른 세가지 설치 매체를 제공한다. 이 이미지들 중 어떤 것을 사용하던 간에, FTP를 통해 꾸러미들을 얻을 수 있도록 설치 프로그램에게 지시할 수 있다. 그리고, 모든 이미지들은 최후의 수단인 복구 CD로 사용할 수 있다.
이제 띄우기(boot)가능 아치 설치 CD 이미지를 구하라. 열거된
![]() ![]() 한걸음 더 나아가 오래된 ISO로 설치하는데 우려할 필요가 없는데, 일단 기본 시스템을 구축해 놓으면 최신 브랜치로 시스템을 갱신(upgrade)하는 것은 식은 죽 먹기이기 때문이다. 최소한 당신이 광대역 연결을 사용한다면!
0.8 Iso들이 이제는 설치된 아치 시스템처럼 동작한다. 여기 가장 두드러진 항목들이 있다:
필요한 것 ¶아치 리눅스 얻기 ¶당신은
![]()
설치 매체 준비 ¶CD 설치
CD-ROM 사용 ¶당신이 이미 띄우기(boot) 절차에 익숙하다면, 이 모든 허튼 소리도 생략하고 실제 아치 리눅스 설치 개요를 말하는
![]() 아치 리눅스 설치 CD를 드라이브에 넣고 당신의 컴퓨터를 재띄우기(boot)하라. CD-ROM 띄우기(boot)으로 BIOS를 지정했는지 확인하라. 어떻게 해야 될지 모른다면 자세한 부분은 마더보드 설명서나 시스템 제조사에 조회하라. 일단 CD로 띄우기(boot)을 하면, 이 단계에서 당신의 선택 지정에 해당되는 자판 입력을 무한정 기다리고 있는, boot prompt를 보게 될 것이다. 대부분의 사용자들은, 그냥 Enter를 누르면 된다.
띄우기(boot)절차가 끝나면, 화면 상단 절반에 채워진 소수의 명령어들이 있는 루트 쉘(root shell)로 떨어질 것이다. 이제 당신은 ![]() 일반 설치 절차 ¶이 시점에서 당신 시스템은 띄우기(boot)이 되어야 한다. 그리고, 설치 원본 뿐만 아니라, 당신이 설치하기 원하는 하드 드라이브도 접근 가능 해야 한다.
설치 단계들:
경험있는 사용자라면, 가능한 쉘 도구들을 사용해서, 설치 프로그램을 시작하기 전에, 설치에 필요한 하드 드라이브나 장치들을 준비할 수 있다. 더 이상 설명서 보기가 당장 필요하지 않다면 이 단락을 건너 뛰어도 된다. 아치 리눅스 설치 매체에는, 경험있는 사용자들을 위한 /arch/quickinst 스크립트가 있다. 이 스크립트는 사용자가 지정한 목표 디렉토리에 "기반(base)" 꾸러미(package) 모음을 설치한다. RAID와 LVM처럼 재미난 것들로 별난 설치를 하고자 한다면, 혹은 설치 프로그램을 전혀 사용하고 싶지 않다면, 당신은 아마 quickinst 스크립트를 사용하고자 할 것이다. 모든 멋진 친구들이 그렇게 한다.
US 아닌 키맵 올리기 ¶US가 아닌 키맵을 원한다면, 새로운 키맵을 올리기 위해 km 도구를 사용할 수 있다. 프롬프트에 단지 km을 쳐 넣고, 올바른 키맵과 콘솔 폰트로 나아가기 위해 화살표 키를 사용하라.
셋업 실행 ¶이제 /arch/setup을 실행해서 설치 프로그램을 구동할 수 있다. 얼마의 정보 메시지 후에 설치 방법을 선택하게 된다. 만약 빠른 인터넷 연결을 사용하고 있다면, 어쩌면 구식이 되어버린 CD 내용물 대신에, 당신은 최신 꾸러미(package)를 확보할 수 있는 FTP 설치를 선호할 것이다. 만약 인증이 필요한 복잡한 프락시 설정을 가지고 있다면, 아마 곤란에 빠질 수도 있음에 주의하라. 만약 당신이 CD-ROM이나 이 단계에서 마운트할 수 있는 다른 매체들을 사용할 수 없다면, 이 방법이 아치 리눅스를 설치 가능한 유일한 방법이다.
CD-ROM이나 다른 원본 설치를 선택했을 때, 당신은 상당히 오래되었을 지 모르는 CD에 포함된 꾸러미(package)들이나, 수동으로 파일시스템 (DVD, USB 막대와 같은) 어딘가에 마운트할 수 있는 매체에 저장된 꾸러미들만을 설치할 수 있다. 물론 이것의 장점은 인터넷 연결이 필요없는 것이어서, 전화 연결 사용자들 혹은 최소한 100 MB의 꾸러미(package)도 내려받고 싶지 않은 또 다른 사람들을 위해 추천되는 선택이다. 두가지 안 중 하나를 선택한 후에, 완료해야 할 순서대로 필수 단계들이 목록화되어 있는 설치 메뉴를 제공 받게 된다.
네트웍 설정 (FTP 설치에서만) ¶Configure Network은 당신의 네트웍 장치의 설치 및 설정을 하게 해준다.
일반적으로 이용 가능한 모든 통신망 장치 목록이 당신에게 주어진다. 하지만 이더넷 장치가 사용 가능하지 않다면, 즉 사용하길 원하는게 없다면, ALT-F2(예를 들어)를 사용하여 다른 터미널로 먼저 바꾸고, 필요한 모듈들을 수동으로 올려야 할 것이다. 다른 방도로, 지시사항으로 단지 OK를 치고, 그 다음 화면에서 Probe 명령을 선택해서 통신망 모듈을 올릴 수 있다. 만약 설치 프로그램이 알맞은 통신망 모듈을 찾지 못한다면, 플로피를 사용할 경우 이더넷 모듈을 사용할 수 있도록 이전에 loaddisk 명령을 제대로 실행했는지 확인하라. CD-ROM으로 띄우기(boot)을 했을 때는, 이것이 필요없다. 만약 당신의 통신망 카드가 여전히 발견되지 않는다면, 당신 카드가 제대로 물리적으로 설치되었느지 그리고 적어도 리눅스 커널이 지원하는지 확인하라. 때때로, 통신망 카드의 제조회사로 부터 이진(binary) 독점 드라이버를 구해서, 어떻게든지 해서 이것을 설치 시스템으로 복사하고, 수동으로 올려야 할 필요가 있을 것이다. 통상 이것으로 용기를 잃을 건 없고, 다른 모델의 통신망 카드를 사용할 것을 조언하다.
적절한 모듈이 올라 올때 그리고 원하는 통신망 카드가 목록에 있을 때, 당신이 설정하고자 하는 이더넷 장치를 Select하면 DHCP로 통신망을 설정하는 선택사양이 주어진다. 당신이 DHCP 서버에 연결되어 있다면, YES를 쳐서 설치 프로그램이 나머지를 수행하게 하라. 만약 NO를 선택하면, 통신망 정보를 수동으로 입력하길 요청받을 것인데, 지적받았던 대로 이것에 대해 아마 당신이 적어 놓았을 것이다. 둘 중 어떤 방법이든, 당신 통신망은 성공적으로 설정되어야한다. 만약 당신이 의심 많은 유형이라면, 다른 콘솔에서 ping과 같은 표준 도구를 사용하여 접속 가능성을 점검할 수 있을 것이다.
자동 작동이 완벽하진 않기 때문에, 설치 프로그램이 통신망을 구축하는데 성공하지 못할 수도 있다. 이런 드문 경우에, 고민하지 말고, 콘솔 중의 하나에서 수동으로 통신망 장치를 셋업하도록 하라. 설치 프로그램이 원하는 것은, 설치 중에 뒤에 선택할 ftp 서버로의 명쾌한 연결이다.
하드 드라이브 준비 ¶Prepare Hard Drive는, 설치할 목표 드라이브를 준비하는데 두가지 안을 제시하는, 하위메뉴로 당신을 이끌 것이다.
첫번째 선택은 Auto-Prepare이며, 이는 /boot, swap, 과 root 가르기(partition)으로 당신의 하드 드라이브를 자동 분할할 것이다. 그런 다음 셋 모두에 대해 파일시스템을 생성시킨다. 또한 이 가르기(partition)들은 적절한 곳에 자동으로 마운트될 것이다. 정확히 말하면, 이 선택 지정은 아래 내용을 생성시킨다:
장치 분할에 대한 당신의 선택을 검증하는 한 방법은, 또다른 터미널을 열고 (ALT-F2, Enter) 다음을 입력해서 # cfdisk -P s <장치 이름>선택한 장치의 현재의 분할 표를 보여주게 한다. 이는 하드 디스크를 확인하는데 충분하다. 만약 아무 장치 이름도 보여주지 않는다면 ("완전 삭제될 게 아무 것도 없다! ..."), 그리고 YES를 친 후에 설치 프로그램이 "적절치 않은 장치(Device not valid)"라는 오류를 보여준다면, SCSI, RAID 등 필요한 모든 모듈들을 올렸는지 확인하라. 아직, 다른 터미널로 바꾼 다음 명령어들을 입력해서 모듈들을 올리고, 다시 첫번째 터미널 (ALT-F1)상의 설치자 과정으로 돌아올 수 있다.
만약 수동으로 분할하기를 선호한다면, 당신의 내역에 따라 목표 매체를 준비하기 위해 아래에 약술되어 있는 것처럼 Partition Hard Drives 와 Set Filesystem Mountpoints의, 다른 두 선택사양(option)을 사용하라. 그리고 나서, 준비가 성공한 후에 Return to Main Menu하라.
하드 드라이브 분할 ¶이미 Auto-Prepare를 선택했다면, Partition Hard Drives를 건너 뛰어야 한다.
그렇지 않다면 분할하길 원하는 디스크를 선택해야 한다. 그리고 나면, 당신은 Write와 Quit하기 전까지 자유롭게 분할 정보를 수정할 수 있는 cfdisk 프로그램으로 들어가게 된다.
파일시스템 마운트포인트 지정 ¶하드 드라이브를 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라고 해도 문제는 없을 것이다.
분리된 /boot이나 /home처럼 다른 가르기(partition)들을 마운트하고자 한다면, 지금 그렇게 할 수 있을 것이다. 단순히
꾸러미(package) 선택 ¶Select Packages는 CD나 FTP 미러로 부터 설치할 꾸러미(package)들을 선택하게 한다.
만약 CD-ROM 설치를 선택했다면, CD를 마운트할지 혹은 당신이 이미 설치 매체를 /src에 마운트했는지를 설치 프로그램에게 알려야 한다. 당신이 원하는 것에 따라서 선택(option)을 골라라; 보통 CD를 선택하고자 할텐데, 검색된 장치 목록에서 CDROM 드라이브를 선택할 수 있을 것이다.
만약 FTP설치를 선택했다면, 목록 중에서 당신과 가까운 미러를 선택하든지, 당신 자신에 적격인 도메인 이름(혹은 IP 주소)을 지정하기 위한 Custom을 선택하도록 요청받을 것이다. Custom 선택으로 입력하는 도메인 이름(혹은 IP 주소)은 설치 원본 꾸러미들이 있는 FTP 서버로서, 당신 LAN에 준비된 서버이든지, 어떠한 이유에 의해 목록화되지 않은 미러이다. 그리고 이 경우, 뒤이어 꾸러미들과 특히 current.db.tar.gz 파일을 포함하는 서버 디렉토리의 완전한 경로(full path)를 지정하도록 요청 받을 것이다. 설치 프로그램은 입력사항에 대한 타당성을 점검해서, 연결 가능하고 꾸러미 목록 내려받기가 가능한 주소와 경로가 입력될 때까지, 당신이 수정하도록 해준다. 무슨 원본매체을 선택했든간에, 꾸러미(package) 목록을 가지고 온 후에는, 꾸러미(package) 범주(category) 선택 화면을 보여준다.
이제 일단 달려들면, 꾸러미(package)를 설치하고자 하는 전체 꾸러미(package) 집단(group)들을 지정하고, 개별적인 패키지들을 선택(해제)해서 당신이 대충 선택한 것을 세부 조정할 기회를 가지게 된다. BASE 범주(category)에 있는 모든 꾸러미(package)들은 어떤 환경에서든 선택되어야 하며, 당신이 필요로 하는 꾸러미(package)를 포함하는 다른 집단(group)들도 선택해야 한다. 앞으로 나타날 개별 꾸러미(package) 선택 화면은, 여기서 당신이 선택하는 범주(category)에 있는 꾸러미(package)들 만을 보여준다. 그래서 BASE만을 선택한다면, BASE 범주(category)에 있는 것들 이외의 꾸러미(package)들은 추가할 수 없을 것이다.
기본으로 모든 꾸러미 선택하기(Select all packages by default?) 질문은 잘못 이해하기 쉽다; 기본적으로, 당신이 방금 선택한 범주(category)에 존재하는 모든 꾸러미(package)들을 원하는지에 대해 질문받는 것이다. 만약 YES를 선택하면, 선택된 범주(category)내에 포함된 꾸러미(package)들의 모든 목록이 표시되는 동시에 선택될 것인데, 당신이 해야될 일은 원하지 않는 것을 선택해제하는 것이다. 만약 NO를 선택하면, 똑같은 꾸러미(package) 목록이 표시되지만, Base 범주(category)의 꾸러미(package)들만 선택되는데, 당신이 설치하고자하는 다른 꾸러미(package)은 명백하게 선택해야 한다.
dhcpcd (base) 당신 장치가 DHCP 클라이언트라면 추가하라. isdn4k-utils (network) 전화연결에 ISDN을 사용한다면 추가하라. ppp (base) 전화연결에 아날로그 모뎀을 사용한다면 추가하라. wvdial (network) 아날로그 모뎀 전화연결 구축에 쉬운 프런트엔드를 원한다면 추가하라. rp-pppoe (base) 유사전화연결을 위해 DSL을 사용한다면 추가하라.
일단 필요한 꾸러미(package) 선택이 끝나면, 선택화면을 빠져나와 다음 단계인 Install Packages로 넘어가라. 꾸러미(package) 설치 ¶이제 Install Packages는 pacman과 선택한 다른 꾸러미(package)들을, 분석된 의존물들과 함께, 당신의 하드디스크에 설치할 것이다. 당신이 선택한 것 보다 더 많은 꾸러미들이 설치된다고 놀라지 마라! 이 꾸러미들은, 당신이 선택한 것에 대한 의존물들이다. 그리고, 설치 프로그램은 당신이 알고 있다고 가정하고서, 이 추가 꾸러미들을 설치하는 것에 대해, 명시적인 허락을 구하지 않을 것이다.
오류 메시지나 오류수정 출력은 보통 다섯번째 터미널(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)들로 동작하도록 할 수도 있지만, 여기서 제시된 설정파일 목록을 쭉 반복해서, 주의깊게 설정치를 검토하길 강력하게 추천한다. 여러 파일들에 대한 자세한 기술에 대해서는
![]() 커널 설치 ¶Install Kernel은 당신의 하드 드라이브에 어떤 커널 이미지를 설치할 지 질문한다.
띄우기 싣개(bootloader) 설치 ¶Install Bootloader는, 당신의 개인적인 선호에 따라서, GRUB(추천)이나 LILO 중 하나의 띄우기 싣개(bootloader)를 당신의 하드 드라이브에 설치할 것이다.
띄우기 싣개(bootloader)를 설치하기 전에, 셋업 스크립트는 정확한 설정 지정들을 확인하기 위해서, 당신이 적절한 설정파일을 검사하길 원할 것이다. 당신의 루트(와 /boot, 당신이 가지고 있다면) 가르기(partition)이 무엇인지 확실히 알아야 한다.
만약 리로 설치가 선택되면, 띄우기 싣개(bootloader)는 설정파일내의 설정에 따라 자동으로 설치될 것이다. 반면에 그럽은 띄우기 싣개(bootloader)를 설치할 가르기(partition)의 선택을 요구한다. 여기서 당신은 리로 boot 옵션으로 입력해야 하는 것을 선택해야 하는데, 통상적으로 이것은, 첫번째 하드 디스크의 매스터 띄우기(boot) 레코드(master boot record)로 언급되는 /dev/hda로 명명되는 항목이다. 뭔가 잘못 되고 있다면, VC5(5번째 가상 콘솔)에서 자세한 오류 메시지를 발견할 수 있다.
설치 나가기 ¶시스템 설정 ¶이것들은 아치 리눅스의 핵심 설정 파일들이다. 도움을 줄 GUI 도구들이 없기 때문에, 당신은 텍스트 편집기로 이 파일들을 수동 편집하는데 익숙해야 한다. 가장 기본적인 설정 파일들만 여기 목록화 했다. 특별한 서비스를 설정하는데 도움을 얻고 싶다면, 적절한 맨페이지를 읽거나 필요한 온라인 문서를 참고하도록 하라. 많은 경우,
![]() ![]() 아치 리눅스는 시스템을 관리하는데, 추상화 계층(abstraction layer)을 사용하지 않는다. 결과적으로, 소프트웨어 창시자가 발표한 명령어들에 늘 충실할 수 있다. 즉, 당신이 선택한 검색엔진에서 무엇을 발견하던 간에, 그것은 당신 시스템을 꼬이게 하지 않으면서 효력을 발휘할 것이다. 왜나하면 , 당신 시스템은 관여하지 않기 때문이다.
/etc/rc.conf ¶이는 아치 리눅스에서 주된 설정 파일이다. 이는 키보드, 시간대역, 호스트명, 통신망, 실행할 디몬들과 띄우기(bootup)시 올릴 모듈들, 특성(profile), 그리고 그 밖에 것들을, 당신이 지정할 수 있도록 한다. 당신은 이 파일에 있는 모든 지정(setting)들을 통독하고, 이것들을 확실히 이해해서, 적절하게 수정해야 한다.:
/etc/hosts ¶이 파일은, 컴퓨터들의 호스명과 ip 조합들을 당신 통신망에 부여한다. 호스트명이 DNS에 알려져 있지 않다면, DNS 응답에 우선하여 적절하게 결정(resolving)하도록, 당신은 그것을 여기다 추가 할 수 있다. 통상적으로 당신은 여기서 어떠한 것도 바꿀 필요가 없지만, 당신은 이 파일에 컴퓨터의 호스트명과 호스트명 + 도메인을 추가해서, 당신 통신망 접속 IP를 결정할 수도 있다. 이렇게 하지 않으면, 어떤 서비스들은, 예를 들어 postfix는, 먹통이 된다. 당신이 뭘할지 모르겠다면, man hosts를 읽어 보기 전까지, 이 파일을 냅둬라.
/etc/fstab ¶당신의 파일시스템 지정과 마운트포인트들이 여기서 설정된다. 설치 프로그램이 당신을 위해 필수적인 항목을 만들 것이지만, 특히 암호화(encrypted) root 장치, LVM 혹은 RAID를 사용할 때는, 당신이 이것을 점검해서 올바른지 확인해야 한다.
/etc/mkinitcpio.conf ¶이 파일은 당신 시스템을 위한 initial ramdisk(통상적으로 initrd라고도 언급되는)을, 당신이 세부 조정할 수 있게 한다. initrd는 띄우기(bootup)동안 커널이 읽어 들이는 압축된(gzipped) 이미지이다. initrd의 목적은, 루트 파일 시스템을 접근할 수 있는 지점까지, 시스템을 시동하는 것이다. 이는 IDE, SCSI, 혹은 SATA 드라이브들(혹은 USB/FW 드라이브를 띄우기(boot)한다면 USB/FW)과 같은 것들을 "인식하기" 위해서, 요구되는 모듈들을 올려야 함을 의미한다. 일단 initrd가 적정 모듈들을 올리면, 수동이든 udev를 통해서든 간에, 이것은 아치 시스템에 제어를 넘겨서 띄우기(bootup)이 계속되게 한다. 이러한 이유로, initrd는 단지, 루트 파일시스템을 접근하는데 필요한 모듈들을 포함할 필요만 있다. 이것은, 당신이 사용하고자 하는 모든 모듈을 가지고 있을 필요가 없다. 일상적인 모듈 대부분은, 초기 과정(init process) 동안, hwdetect나 hwd에 의해 나중에 올려진다.
기본적으로 mkinitcpio.conf는, 이른바 HOOKS란 것을 통하여, IDE, SCSI, 혹은 SATA 시스템을 위한, 알려진 모든 모듈들을 제공하도록 설정되어 있다. 이는 기본 내정 initrd는 거의 모두에게 동작해야 함을 뜻한다. 이것의 부정적인 면은, 당신이 필요로 하지 않는, 많은 모듈들이 올려지는 것이다. 이것은 띄우기(bootup) 후에 당신 모듈 목록을 검사(lsmod 명령어로)해서 쉽게 알 수 있다. 이러한 것은 실제 아무것도 망가뜨리지 않지만, 어떤 이들은 이것을 성가시게 여긴다. 이 목록에서 실제 필요한 것들만의 목록을 추려내기 위해서, 당신은 mkinitcpio.conf를 편집해서 필요없는 하위시스템들(예, IDE, SCSI, RAID, USB 등)을 제거할 수 있다.
필요로 하는 정확한 모듈들을 MODULES 배열에 열거하고 더 많은 hooks를 제거함으로써, 더욱 더 맞춤화(customize)할 수 있다. 그런데, 이곳은, 기재사항들을 지우면 미쳐 버릴 수 있는, 다루기 힘든 장소이므로, 파일내의 설명들에 주의하도록 하라!
/etc/modprobe.conf ¶이는 시스템 장치를 위해 어떤 모듈들을 올려야 할 지와, 지정할 선택사양들(options)이 뭔지를 커널에게 알려준다. 예를 들어, 통신망을 시작할때(즉, eth0 구성을 시도할 때) 커널이 당신의 Realtek 8139 이더넷 모듈을 올리게 할려면, 아래 행을 사용해라:
alias eth0 8139toopost-install과 같은 좀 더 색다른 선택 지정을 사용하지 않는 한, 이 파일의 문법은 오래된 modules.conf 체계와 거의 같다. 그러면, 당신은, man modprobe.conf을 읽는데 약간의 시간을 투자해야 한다. 대부분의 사람들은 이 파일을 편집할 필요가 없을 것이다.
/etc/resolv.conf ¶사용기 원하는 네임서버(들)을 수동으로 구성하기 위해서 이 파일을 사용하라. 이것은 기본적으로 아래와 같을 것이다:
search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2domain.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) 해야 한다.
/boot/grub/menu.lst ¶GRUB은 아치 리눅스에서 기본적인 띄우기 싣개(bootloader)이다. 그럽을 사용하길 원하면, 띄우기(boot) 설정을 조정하기 위해서 이 파일을 점검하고 수정해야 한다. 만약 그렇지 않으면
![]()
일단 장치 명명 개념을 파악하고 나면, 당신의 띄우기(boot) 구역에 대한 근사한 제목을 선택하고, 띄우기(bootup)시에 /로 마운트하기 위한 root 옵션에 매개 변수로서 정확한 가르기(partition) 장치를 부여하고, 띄우기(boot) 매개변수들과 함께 커널이 위치한 가르기(partition)과 경로를 포함하는 kernel 행을 만드는 것이, 할 필요가 있는 모든 것이다. 표준 아치 2.6.x 커널을 사용한다면, 당신의 boot 디렉토리에 있는 kernel26.img 파일을 가리키는 initrd 행이 당신에게 필요할 것이다. initrd 행에서 놓여지는 경로는, kernel 행에서 주어지는 vmlinuz26 경로와 동일해야 한다. pata 문제를 특별히 고려하여 root와 kernel 행들에서의 가르기(partition) 정보가 정확한지 여부만 점검한다면, 기본 내장 설정이 더할 나위 없을 것이다!
다른 종류의 OS 대한 띄우기(boot)영역을 올리기 위한 띄우기(boot) 선택사양을 만들기 위해서, 다음 예는 도움을 줄 수 있을 것이다. 단지 다른 구역 뒤에 이 덩어리를 추가하고 나서, 당신이 띄우기(boot)하고자 하는 OS의 띄우기(boot)영역을 포함하는 가르기(partition)을 지시하도록 가르기(partition) 장치를 수정하므로써, 어떠한 마이크로소프트 기반 운영체계도 아마 시동하는데 성공할 수 있을 것이다.
# (1) Other OS title My Other OS rootnoverify (hd0,1) makeactive chainloader +1다른 OS들에 대한 고급 설정을 위해서는 ![]() 띄우기 싣개(bootloader) 설정이 올바른지 점검한 후에, 로더를 설치할 가르기(partition) 입력을 요구 받을 것이다. 아직 다른 띄우기 싣개(bootloader)를 사용하고 있지 않다면, 보통 숫자 접미어 없이 해당 장치이름을 나타내는, 설치 디스크의 MBR에 GRUB을 설치해야 한다.
/etc/lilo.conf ¶이는 리로 띄우기 싣개(bootloader)의 설정파일이다. 만약 시스템 띄우기(boot)를 위해 리로 사용을 원한다면, 이것을 점검하고 올바르게 고쳐라. 이것에 대해 도움을 얻고자 한다면
![]() 당신이 점검해야 될 것은, 이미지 구역내에 있는 root= 행들과 파일 첫머리에 있는 boot= 행이다. root 행들은 띄우기(bootup)시에 루트 파일시스템으로 마운트할 장치를 명시한다. 만약 여기다 뭘 넣어야 될 지 모른다면, 다른 터미널에서 현재 마운트된 장치들의 모든 목록을 볼 수 있도록 mount를 쳐 넣어서, on /mnt type ...에 마운트된 장치명을 보여주는 행을 찾아라. 바로 그 행의 처음에 있는 장치 경로가 lilo.conf의 root행들에 들어가야 한다. 필요하면 바꾸고, pata 문제를 명심해라!
boot 행은 대부분의 경우 기본 내정 상태로 둬도 무방하다. 만약 당신이 다수의 OS들로 이뤄진 무시무시한 띄우기(boot) 관리를 구축할 생각이 아니라면, 여기서 언급된 장치는 root 행들의 앞부분과 같은데, 끝 숫자가 없다. 예를 들어 /dev/hda3 루트인 경우, 하드디스크의 매스트 띄우기(boot) 레코드(Master Boot Record)에 리로를 설치하기 원할 것인데, 디스크 전체를 가리키는 /dev/hda를 boot에 지정하면 된다. 설치하는 동안, boot 장치는, 띄우기(boot)섹터를 기록할려고 하는, 장치의 현재 이름이어야 한다; pata 변환 때문에, 이것은 첫 띄우기(boot) 후의 장치 이름과 다를 수 있다! 예를 들어 mount 명령을 사용하여, 설치 단계 동안 기록되는 장치가 무엇인지, 주의깊게 점검해라.
안전을 기하기 위해, prompt행 바로 아래에 lba32 선택사양을 둬야 한다. 이는 어떤 구조적인 문제가 일어나는 것을 막는다. 어떤 경우에는, 당신의 바이오스에 따라서, 리로가 띄우기(bootup)을 작동시키지 않고 오류 부호를 무한정 뱉어낼 것이다. 대부분의 경우 lba32 선택사양을 제거 했던지, 아니면 CD-ROM 드라이브가 프라미머리 매스터(primary master)이고 하드 드라이브를 세컨더리 스레이브(secondary slave)에 설치한 것처럼, 하드웨어 설치가 약간 특별한 경우이다. 이는 바이오스를 매우 혼란시켜서 띄우기(bootup)을 막을 수 있다. 이를 예방하기 위해서는 IDE 버스상에 설치 드라이브를 프라이머리 매스터(primary master)로 해라. 만약 IDE와 SCSI 체계가 섞여 있고 문제가 계속된다면, 아마 작업배치(working mapping)을 제공할 disk와 bios 선택사양들에 대한 몇가지 실험 작업이 필요할 것이다; 당신 시스템에서 디스크 드라이브들은 바이오스에 의해 0x80로 시작하여 연속적으로 번호가 매겨져 있다. 운이 좋다면 SCSI 컨트롤러가 어느 드라이브가 어느 BIOS ID를 가지고 있는 지 알려주겠지만, 대부분의 경우는 아니다. 드라이브들이 어떻게 효과적으로 번호가 매겨져 있느냐는 당신의 바이오스에 따라 달라서, 최악의 경우 동작하기 전까지는 단지 추측만 가능할 것이다. 대표적인 disk행은 아래와 같다:
boot=/dev/hda disk=/dev/hda bios=0x80disk 선택사양은 리눅스에서 알려진 디스크 장치에 BIOS ID를 배치한다. 다른 것들이 잘못되어 있을 수 있기 때문에 제대로 동작할 것이라는 보장은 여전히 없음에 유의하라. 그래서, 당신의 모든 시도가 실패한다고 해서 절망하지 말고, 전체적으로 이상하지 않은 방식으로 차라리 당신 하드웨어 재배치를 시도해라. 이 영역에서 너무 많은 것이 잘못되어서, 여기서 설명된 특별한 처리가 필요할 수 있다. 대부분의 경우에는 어쨌든 lba32 선택사양이면 충분하다. 구식 하드 드라이브들은 명령대로 행하기까지, 통상 좀 더 특별한 주의가 필요할 것이다.
구조 디스크(rescue disk)로 ![]() /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-ng와 udev)을 제외하고는 아무 디몬도 작동하지 않도록 한다. 단일 사용자 방식은, 원격 사용자가 자료 손실 이나 손상을 유발하는 어떠한 것도 확실히 못하게 하면서, 어떤 시스템을 변경할 필요가 있으때 유용하다.
데스크탑 사용자들에게는, 보통 이 방식이 쓸모없다. 또한 당신은 이 스크립트를 편집할 필요도 없을 것이다.
/etc/rc.multi ¶다중 사용자 시동 스크립트. 이는, 당신이 (/etc/rc.conf에 지정된) DAEMONS 배열에서 설정한 모든 디몬들을 시작 시킨다. 그 다음에 /etc/rc.local를 호출한다. 당신은 이 파일을 편집해야 할 절박한 필요성를 느끼지 못할 것이다.
/etc/rc.local ¶국부(local) 다중 사용자 시작 스크립트. 여기는, 띄우기(bootup) 과정 마지막에 시스템이 실행하길 원하는 최종적인 명령들을, 넣어두기 좋은 장소이다. 이는, 당신이 원하면 수정해야할 하나의 유일한 스크립트이다. 이 스크립트에 뭘 추가할 것인지에 대해, 당신은 완전한 자유를 가진다.
/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를 구축하라.
아날로그 모뎀 ¶헤이즈(Hayes) 호환성의, 외장형의, 아날로그 모뎀을 사용하기 위해서는, 최소한 ppp 꾸러미 설치가 필요하다. 당신이 필요한 것들을 맞추기 위해서, 그리고 man pppd에 따라서, /etc/ppp/options 파일을 수정하라. 초기 연결이 수립된 후에, ISP에 사용자명과 암호를 제시하기 위해, 당신은 chat 스크립트를 정의할 필요가 있을 것이다. 당신이 충분히 경험이 있든지 혹은 고집이 세든지 하기만 하면, 연결 실행에 충분한 실례들이 pppd와 chat의 맨페이지에 있다. udev에서는, 당신 직렬 포트들은 보통 /dev/tts/0와 /dev/tts/1이다.
평이한 pppd와 명예로운 전투를 치르는 대신에, wvdial이나 혹은 구축 절차를 상당히 쉽게하는 유사한 도구 설치를 선택할 수 있을 것이다.
ISDN ¶ISDN 구축은 세 단계로 진행된다:
모든 그 지정들에 대한 세부항목들과 그것들을 지정하는 방법은 커널내 문서에, 특히 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 행만 추가하고, hisax은 rc.conf내의 MODULES 배열에 추가할 수 있다. 사실 당신 선택이지만, 이 예는, 실제 필요하기 전에는 모듈이 올라가지 않는다는, 이점을 가진다. 해야될 것으로, 당신은 작동하고 지원되는 장치를 가지고 있어야 한다. 그 다음 실제 사용할 기본 유틸리티들이 필요하다!
isdn4k-utils 꾸러미를 설치하고, isdnctrl 맨페이지를 읽어라. 이게 시작이다. 맨페이지에서, 어떤 도움이 되는 셋업 실례들 뿐만 아니라, isdnctrl에 의해 해석될 수 있는 설정파일 작성법에 대한 설명들을 더 발견할 것이다.
isdnctrl 유틸리티로 당신의 ISDN 카드를 설정한 후에, PHONE_OUT 매개변수를 사용해서 명기한 장치에 전화연결을 할 수 있을 것이지만, 사용자명과 암호 인증에 실패할 것이다. 이게 동작하도록 하기 위해서, 보통의 아날로그 PPP 연결을 설정하는 것처럼, 당신 ISP가 인증에 사용하는 통신방식에 따라서, 당신 사용자명과 암호를 /etc/ppp/pap-secrets이나 /etc/ppp/chap-secrets에 추가하라. 명확하지 않다면, 양쪽 파일 모두에 당신 정보를 넣어라. 모든걸 제대로 구축했다면, 이제 root로서 isdnctrl dial ippp0를 사용하여 전화연결을 완수할 수 있을 것이다. 어떤 문제들을 가지고 있다면, 로그 파일들을 점검해야한다는 걸 기억해라!
DSL (PPPoE) ¶
DSL 온라인 연결을 사용할 수 있기 전에, 당신은 컴퓨터에 DSL-Modem에 연결할 물리적인 통신망 카드를 설치해야 할 것이다. 새로 설치한 통신망 카드를 modprobe.conf나 MODULES 배열에 추가한 후에, 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 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 --owns /path/to/file # pacman -Qo /path/to/file 이 query는, 매개변수로 전체경로를 참고해서, 특정 파일을 포함하는 꾸러미의 이름과 판을 보여준다. 경로없이 파일 이름만 사용하면 결과가 나오지 않을 것이다.
저장소 접근 ¶꾸러미 저장소는, 지역 디렉토리나 원격 FTP/HTTP 서버에 존재할 수 있는, 꾸러미들과 꾸러미 메타-정보(meta-info) 파일의 모음이다. 아치 시스템의 기본 저장소는 current 저장소이다. 이 저장소는, 최신 판의 소프트웨어들이 대부분 포함되도록, 개발자들에 의해 최신식으로 유지되고 있다. 상당히 최첨단으로 유지된다.
많은 사용자들은 또한, 아치의 핵심 꾸러미 집단에 속하지 않는 더 많은 꾸러미들이 들어 있는, extra 꾸러미 저장소가 활성화 되도록 선택할 수 있다. /etc/pacman.conf내의 적정 행의 설명 처리를 해제(uncomment)함으로써, 이것을 작동시킬 수 있다. 이 저장소는 기본적으로 활성화 된다.
당신은 또한 자신의 꾸러미 저장소들을 만들고, 유지하고, 사용할 수 있다. 설명을 얻기 위해
![]() CD-ROM으로 설치하고 나서 인터넷 연결 문제를 만나게 된다면, CD로부터 추가적인 꾸러미들을 설치할 필요가 있을 것이다. FAQs를 참고하여, 특히 이 문서 아래쪽
![]() 이진(binary) 대 원천(source) ¶pacman은 꾸러미 세상의 이진(binary)쪽을 담당하고, ABS는 원천(source)쪽을 담당한다: 이는 원천(source) 코드로부터 당신 자신의 맞춤 꾸러미들을 제작하는데 도움을 주며, 또한 당신 자신에 맞춤화된 아치 리눅스 꾸러미들을 재제작할 수 있게 한다. 그 처리 절차는 통상적으로 아래와 같다:
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로부터 작동시키거나 못하게 할 수 있다. abs는 current와 extra 저장소들을 기본으로 추적할 것이다. 딴 건 아니다.
당신은 또 /etc/abs/supfile.extra 파일을 발견할 수 있을 것이다. 이것은, 주 ABS 저장소에 포함되지 않은, 모든 비공식 설치 스크립트들에 접근할 수 있게 한다. 만약 이 저장소를 사용하고 싶지 않으면 이 파일을 지울 수도 있지만, 통상적으로는 abs.conf를 대신 편집해서 필요하지 않은 저장소들을 비활성화 시키는 것이 보다 현명하다.
꾸러미들 만드는 방법 ¶만드는 절차는
![]() 꾸러미 명명 ¶
디렉토리들 ¶설정 파일들은 /etc 디렉토리에 둬야 한다. 설정 파일이 하나보다 많다면, /etc 영역을 가능한한 깨끗하게 유지하기 위해서 하위 디렉토리를 사용하는 것이 관례이다. 꾸러미 이름이 {pkgname}이라면 /etc/{pkgname}/를 사용하라(혹은 타당한 다른 선택, 예로, 아파치는 /etc/httpd/를 사용한다).
꾸러미 파일들은 아래 일반적인 디렉토리 지침들을 따라야 한다:
makepkg의 역할 ¶꾸러미 제작을 위해 makepkg를 사용할때, 아래 사항들이 자동으로 수행된다:
그 밖의 것 ¶꾸러미 빌드가 불가능하지 않는 한, 당신의 PKGBUILD 빌드 스크립트들에 새로운 변수들을 도입하지 말아라. 이것들은 makepkg 자체에서 사용되는 변수들과 충돌할 수 있다. 만약 새로운 변수가 절대적으로 요구되면, 변수명 앞에 밑줄(underscore, underline)을 접두어로 붙여라.
무슨 일이 있어도 /usr/libexec/의 사용을 피하라. 대신에 /usr/lib/{pkgname}를 사용하라.
/etc/makepkg.conf 파일에서 적절히 선택사양을 수정함으로써, 혹은 makepkg로 꾸러미들을 구축하기 전에 PACKAGER 환경변수를 전달(exporting)하는 다른 방법으로, 꾸러미 작성자가 꾸러미 메타 파일에서의 꾸러미 작성자 영역을 사용자 정의(customize)할 수 있다:
# export PACKAGER="John Doe <당신 이메일>" 꾸러미들 제출하기 ¶만약 꾸러미들을 제출하길 원하면,
![]() 만약 당신이 꾸러미를 제출하고자 한다면, 아래와 같이 해달라:
자주 묻는 질문들 ¶
꾸러미를 설치하는 동안, 꾸러미 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해서 당신이 고친 사항들을 시험해 볼 수 있을 것이다.
띄우기(boot)하는 동안 어떻게 모듈들을 올려야 하나? ¶특별한 장치 속박과 관련없이 무조건적으로 모듈을 올리길 원한다면, /etc/rc.conf의 MODULES 배열에 이 모듈명을 추가하라. udev와 hotplug가 채택하는 자동 작동이 제대로 해내지 못하는 드문 경우에, 장치 접근시에 적재하길 원하는 요구에 부응하기 위해서는, 종전처럼 alias와 opton 명령을 사용하여 /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)" 오류들을 만나게 된다 ¶당신 사용자에 optical과 audio 그룹을 추가하라.
# 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 |
True happiness will be found only in true love. |