"Trans:GentooLinuxX86QuickInstallGuide"의 두 판 사이의 차이
Darkcircle (토론 | 기여) |
Darkcircle (토론 | 기여) |
||
311번째 줄: | 311번째 줄: | ||
{{Example|코드 예제 2.31: 다른 PC에서 새 박스로 접속하기|<nowiki>(known_hosts 파일을 비우시기 바랍니다. 왜냐면</nowiki><br/> | {{Example|코드 예제 2.31: 다른 PC에서 새 박스로 접속하기|<nowiki>(known_hosts 파일을 비우시기 바랍니다. 왜냐면</nowiki><br/> | ||
− | <nowiki> 여러분의 새로운 박스는 새로 생성된 | + | <nowiki> 여러분의 새로운 박스는 새로 생성된 호스트 정의키를</nowiki><br/> |
<nowiki> 보유하고 있기 때문입니다)</nowiki><br/> | <nowiki> 보유하고 있기 때문입니다)</nowiki><br/> | ||
<nowiki>$ nano -w ~/.ssh/known_hosts</nowiki><br/> | <nowiki>$ nano -w ~/.ssh/known_hosts</nowiki><br/> |
2012년 7월 13일 (금) 06:34 판
목차
개요
이 안내서에는 젠투 스테이지 3 설치를 완료하는데 사용해야 할 명령들이 있습니다. 스테이지 3과 포티지 스냅샷을 내려받기 위해 인터넷에 연결할 필요가 있습니다.
중요: 처음 사용자라면 설치 과정에 대해 더 많은 내용을 제공해주는 핸드북 을 읽으시는 것이 좋습니다
타이밍 출력은 프로그램 실행 과정을 마치기 까지 많은 초 단위 시간을 소요하는 모든 명령에 따릅니다. 다음 명령에 대한 시간은 512MB의 RAM과 SATA 컨트롤러에 장착된 2개의 디스크를 지닌 AMD 2000 1.66GHz 시스템에서 측정되었습니다.
코드 예제 1-1. 테스트 박스 사양 |
(다음의 사양과 타이밍 정보는 여러분의 설치를 완료하는데 필요한 대략적 시간을 추산하는데 도움을 줄 것입니다.) |
빠른 설치 안내
설치 매체
미러 중 한 곳에서 CD를 내려받습니다. <font color="#007700"releases/x86/current-iso/ 에서 minimal CD ISO를 찾을 수 있습니다. minimal 설치 CD는 인터넷 기반 설치에 대해서만 유용합니다. 이 안내서에선 minimal CD를 사용할 것입니다.
CD를 굽고 이것으로 부팅합니다.
CD 부팅하기
어떤 부트 옵션이 존재하는지 찾아보기 위해 부트 화면에서 [F2]를 누릅니다. gentoo로 시작하거나 gentoo-nofb로 시작할 수 있습니다. LiveCD로 부팅하셨다면, 시작시 X 그래픽 환경을 막기 위해 nox 옵션을 추가하는 것 을 잊지 마시기 바랍니다. 다양한 옵션들이 여러 기능을 활성화 하거나 비활성화 합니다. 부팅이 잘 진행되었다면, 모든 하드웨어들이 감지되고 모든 하드웨어의 모듈이 로드 될 것입니다. 적절한 부팅에 실패하거나 부팅 과정에 문제에 걸렸다면, 다른 방법의 설정으로 시험할 필요가 있습니다. 가장 안전한 방법은 아마도 nodetect 옵션을 사용하여 필요한 모듈을 직접 불러오는 방법일 것입니다.
코드 예제 2-1. minimal CD로 부팅하기 |
Gentoo Linux Installation LiveCD http://www.gentoo.org Enter to Boot; F1 for kernels F2 for options. |
선택사항: 모듈 불러오기
nodetect 옵션을 사용하셨다면, 필요한 모듈을 불러와야 합니다. 네트워크를 활성화 하고 디스크에 접근할 필요가 있습니다. lspci 명령은 하드웨어를 확인하는데 도움을 줄 것입니다.
코드 예제 2-2. 필요한 모듈 불러오기 |
livecd root # lspci (필요한 모듈을 확인하기 위해 lspci를 사용합니다) |
네트워크 설정
아직 네트워크가 동작하지 않는다면 네트워크를 설정하기 위해 net-setup을 사용할 수 있습니다. 설정에 앞서 modprobe를 사용하여 네트워크 카드에 대한 지원을 불러올 필요가 있을지도 모릅니다. ADSL을 사용한다면, pppoe-setup과 pppoe-start를 사용합니다. PPTP 지원을 위해, 먼저 /etc/ppp/chap-secrets 와 /etc/ppp/options.pptp를 편집하고, 그 다음 pptp <server ip>를 사용합니다.
무선 접근을 위해, 무선연결 인자를 설정하기 위해 iwconfig 를 사용하고,그 다음 net-setup을 다시 사용하거나, {{{#0000ff ifconfig}}} 그리고, dhcpcd, route를 직접 실행합니다.
프록시망 뒤에 있다면, export http_proxy 그리고 ftp_proxy, RSYNC_PROXY 를 이용하여 시스템 초기화하는 것을 잊지 마시기 바랍니다.
코드 예제 2.3: 안내 방식으로 네트워크 설정하기 |
livecd root # net-setup eth0 |
대신, 네트워크를 직접 시작할 수 있습니다. 다음 예제는 IP 주소 192.168.1.10 을 여러분의 PC에 할당하고 라우터 및 네임서버의 주소로 192.168.1.1를 정의합니다.
코드 예제 2.4: 직접 방식으로 네트워크 설정하기 |
livecd root # ifconfig eth0 192.168.1.10/24 livecd root # route add default gw 192.168.1.1 |
설치 CD는 sshd 서버를 시작하고, 다른 사용자들을 추가하며, irssi (명령줄 기반 대화 클라이언트)를 실행하고, links를 사용하여 웹을 탐색할 수 있도록 합니다.
선택사항: ssh를 통해 여러분의 새로운 박스에 연결하기
가장 흥미로운 기능은 역시 sshd 입니다. 이것을 시작하고 다른 머신에서 연결할 수 있으며 이 안내서에 있는 명령들을 자르고 붙여넣을 수 있습니다.
코드 예제 2-5: sshd 시작하기 |
livecd root # time /etc/init.d/sshd start * Generating hostkey ... |
이제, 다른 PC에서 연결할 수 있도록 LiveCD에서 루트 암호를 설정합니다. 보통 일반적인 환경에서 ssh를 통해 root접속을 허용하는 것은 추천하지 않는 것임을 알아두시기 바랍니다. 로컬 네트워크를 신뢰할 수 없다면, 길고 복잡한 암호를 사용하여 첫 재부팅 다음에 사라질 암호를 한번만 사용하는 것이 좋습니다.
코드 예제 2.6: 루트 암호 설정하기 |
livecd root # passwd New UNIX password: 암호를 입력합니다 |
이제, 다른 PC에서 터미널을 시작하고 여러분의 새로운 박스에 연결하며, 이 안내서의 나머지 부분을 다른 창에서 따라가고, 명령을 자르고 붙여넣을 수 있습니다.
코드 예제 2.7: 다른 PC에서 새로운 박스에 연결하기 |
(새로운 박스의 IP주소를 사용합니다) $ ssh root@192.168.1.10 |
디스크 준비하기
파티션 배치를 만들기 위해 fdisk나 cfdisk를 사용합니다. 최소한 스왑 파티션 (유형 82번)과 하나의 리눅스 파티션 (유형 83번)이 필요합니다. 다음 시나리오에서는 핸드북에서 사용할 /boot와 스왑, 메인 파티션을 만듭니다. 여러분 의 디스크를 sda로 대체합니다. 대부분의 시스템에서는 부팅 가능한 플래그를 무시하지만, 어떤 경우에는 필요합니다. 이 플래그를 fdisk의 a 명령으로 부트 파티션에 설정합니다.
코드 예제 2.8: 파티션 만들기 |
livecd ~ # fdisk /dev/sda (이 안내서의 나머지에서는 다음 파티션 형태를 사용합니다) |
리눅스 파티션에 파일 시스템을 만들기 위해서 mke2fs 그리고, mke2fs -j, mkreiserfs, mkfs.xfs mkfs.jfs 를 사용합니다. mkswap과 swapon을 사용하여 스왑 파티션을 초기화 합니다.
코드 예제 2.9: 파일 시스템을 만들고 스왑 활성화 하기 |
(ext2는 /boot 파티션에 필요한 전부입니다) livecd ~ # mke2fs /dev/sda1 |
새로 만들어진 파일 시스템을 /mnt/gentoo에 마운트 합니다. 다른 마운트 포인트가 필요하다면 ( /mnt/gentoo/boot와 같은) 디렉터리를 만들고 그들도 똑같이 마운트 합니다.
코드 예제 2.10: 파일 시스템 마운트하기 |
livecd ~ # mount /dev/sda3 /mnt/gentoo livecd ~ # mkdir /mnt/gentoo/boot |
스테이지 설정하기
먼저 date MMDDhhmmYYYY를 사용하여 날짜와 시간이 정확하게 설정되었는지 확인합니다. UTC 시간대를 사용합니다.
코드 예제 2.11: 날짜와 UTC 시간 설정하기 |
(시간 확인) livecd gentoo # date |
다음에는 미러중 한 곳에서 스테이지를 내려받습니다.
코드 예제 2.12: 스테이지 3 아카이브 내려받기 |
livecd gentoo # links http://www.gentoo.org/main/en/mirrors.xml (미러를 선택하고, releases/x86/current-stage3/ 디렉토리로 이동한후, |
/mnt/gentoo 로 이동하고 tar xjpf <stage3 tarball> 를 사용하여 스테이지를 풀어줍니다.
코드 예제 2.13: 스테이지 3 아카이브 풀어주기 |
livecd gentoo # time tar xjpf stage3* real 1m14.157s |
최신 포티지 스냅샷을 설치합니다. 스테이지 3 아카이브에 대해 진행합니다: 리스트에서 가까운 미러를 선택하고, 최신 스냅샷을 내려받아 풀어줍니다.
코드 예제 2.14: 최신 포티지 스냅샷 내려받기 |
livecd gentoo # cd /mnt/gentoo/usr livecd usr # links http://www.gentoo.org/main/en/mirrors.xml |
코드 예제 2.15: 포티지 스냅샷 풀어주기 |
livecd usr # time tar xjf portage-lat* real 0m40.523s |
루트 위치 변경하기
/proc과 /dev 파일 시스템을 마운트하고, /etc/resolv.conf 파일을 복사한 다음에 젠투 환경으로 루트 위치를 변경(chroot)합니다.
코드 예제 2.16: 루트 위치 변경하기 |
livecd usr # cd / livecd / # mount -t proc proc /mnt/gentoo/proc |
시간대 설정하기
/usr/share/zoneinfo에 나열된 올바른 항목을 사용하여 시간대 정보를 설정합니다.
코드 예제 2.17: 시간대 설정하기 |
livecd / # ls /usr/share/zoneinfo (예시로 브뤼셀 시간대를 사용합니다.) |
호스트 이름과 도메인 이름 설정하기
/etc/conf.d/hostname 과 /etc/hosts에 호스트 이름을 설정합니다. 다음 예제에서, mybox를 호스트 이름으로 사용하고 at.myplace 를 도메인 이름으로 사용합니다. nano를 사용하여 설정 파일을 편집하거나 다음 명령을 사용할 수 있습니다.
코드 예제 2.18: 호스트와 도메인 이름 설정하기 |
livecd / # cd /etc livecd etc # echo "127.0.0.1 mybox.at.myplace mybox localhost" > hosts |
커널 설정
커널 소스를 설치하고 (보통 gentoo-sources를 사용합니다) 설정하고 컴파일 한 다음, arch/i386/boot/bzImage파일을 /boot로 복사합니다.
코드 예제 2.19: 커널 소스 설치, 컴파일하고 커널 설치하기 |
livecd etc # time emerge gentoo-sources real 2m51.435s |
시스템 설정하기
etc/fstab을 편집하고, BOOT 그리고 ROOT, SWAP을 실제 파티션 이름으로 바꿔줍니다. 여러분이 설치한 파일 시스템과 일치하는지 확인하는 것을 잊지 마시기 바랍니다.
코드 예제 2.20: fstab 예제 |
livecd linux # cd /etc livecd etc # nano -w fstab |
/etc/conf.d/net 에서 네트워크를 설정합니다. net.eth0 초기화 스크립트를 기본 실행 레벨에 추가합니다. 여러 개의 NIC를 사용한다면, net.eth0 초기화 스크립트에 심볼릭 링크를 걸어주고 같은 방법으로 기본 실행레벨에 추가해줍니다. 호스트 이름 설정하는것 또한 잊지 마시기 바랍니다. /etc/conf.d/net 또는 /etc/conf.d/hostname 을 nano로 편집하거나 다음 명령을 사용합니다.
코드 예제 2.21: 네트워크 설정 |
livecd etc # cd init.d livecd init.d # ln -s net.lo net.eth0 |
참고: PCMCIA 카드 지원이 필요하다면, pcmciautils 를 이머지 하시기 바랍니다.
passwd를 사용하여 루트 암호를 설정합니다.
코드 예제 2.22: 루트 암호 설정하기 |
livecd conf.d # passwd New UNIX password: 암호를 입력합니다 |
앞서 사용한 시간대 정의를 위해 /etc/timezone을 편집합니다.
코드 예제 2.23: /etc/timezone 편집하기 |
Europe/Brussels |
/etc/rc.conf와 /etc/conf.d/keymaps에 있는 시스템 설정을 확인하고, 필요하다면 이 파일들을 편집합니다.
코드 예제 2.24: 선택사항: 일부 설정파일 편집하기 |
livecd conf.d # nano -w /etc/rc.conf |
시스템 도구 설치하기
syslog-ng와 같은 시스템 로거를 설치하고, vixie-cron과 같은 크론 데몬을 설치한 후, 이들을 기본 실행레벨에 추가합니다.
참고: 크론 데몬은 MTA에 의존합니다. mail-mta/ssmtp가 의존 관계에 의해 끌려올 것입니다. 더 발달된 MTA를 사용하고 싶다면, 바로 설치하고 싶을지도 싶을지도 모릅니다. 정 급하다면, ssmtp를 설치한 상태에서 두고, 원하는 MTA를 설치한 다음에 ssmtp를 제거합니다.
코드 예제 2.25: 시스템 로거와 크론 데몬 설치하기 |
livecd conf.d # time emerge syslog-ng vixie-cron real 1m54.099s |
필요하다면 파일 시스템 도구 (xfsprogs, reiserfsprogs, 또는 jfsutils)와 네트워크 도구(dhcpcd 혹은 ppp)를 설치합니다.
부트로더 설정하기
grub을 이머지 하고 설정합니다. initramfs를 사용하는 경우 필요한 부트 인자를 새로 고치는 것을 잊지 마시기 바랍니다.
코드 예제 2.27: grub 이머지하고, 설정 파일 편집하기 |
livecd conf.d # time emerge grub real 1m4.634s |
코드 예제 2.28: grub.conf 예제 |
default 0 timeout 10 |
코드 예제 2.29: grub 설치하기 |
livecd conf.d # grub Probing devices to guess BIOS drives. This may take a long time. |
재부팅
루트 위치가 바뀐 환경에서 빠져 나오고, 모든 파일 시스템의 마운트를 해제한 다음 재부팅합니다.
코드 예제 2.30: 재부팅하기 |
livecd conf.d # exit livecd / # umount -l /mnt/gentoo/dev{/shm,/pts,} |
설치 마무리하기
참고: 우리 테스트 박스상에서 minimal CD의 부트 프롬프트를 띄우고 재부팅 한 다음의 로그인 프롬프트가 뜨는데 걸린 총 시간은 00:42:31 입니다. 네, 한시간도 채 걸리지 않았습니다! 참고로 이 시간은 스테이지 3, 포티지 스냅샷 그리고 여러 패키지를 내려받은 시간과 커널을 설정하는데 걸린 모든 시간이 포함됩니다.
root로 로그인하고, 매일 사용할 사용자들을 위해 useradd로 사용자를 하나 이상 추가합니다.
코드 예제 2.31: 다른 PC에서 새 박스로 접속하기 |
(known_hosts 파일을 비우시기 바랍니다. 왜냐면 여러분의 새로운 박스는 새로 생성된 호스트 정의키를 |
코드 예제 2.32: 새 사용자 추가하기 |
mybox ~ # useradd -g users -G lp,wheel,audio,cdrom,portage,cron -m john mybox ~ # passwd john |