Trans:GentooX86Handbook1-8
목차
시스템 설정하기
파일시스템 정보
fstab이 무엇인가요?
리눅스에서는 시스템에서 사용하는 모든 파티션은 /etc/fstab에 나열해야 합니다. 이 파일에는 어떤 특별한 옵션(사용자가 마운트 할 수 있는지에 대한 여부와는 상관 없이 자동 혹은 수동으로 등)과 함께 어떻게 마운트 해야 하는지 각각의 (파일 시스템 구조를 볼 수 있는) 파티션에 대한 마운트 지점 정보가 있습니다.
/etc/fstab 만들기
/etc/fstab은 특별한 문법을 사용합니다. 모든 줄에는 공백(스페이스, 탭 또는 조합 공백)으로 구분하는 6개의 필드가 있습니다. 각각의 필드는 다음의 의미를 지니고 있습니다.
- 첫번째 내용은 파티션(장치 파일의 경로)을 언급힙니다
- 두번째 내용은 파티션을 마운트할 마운트 지점을 보여줍니다
- 세번째 내용은 파티션에서 사용하는 파일시스템을 보여줍니다
- 네번째 내용은 mount 프로그램이 파티션을 마운트할 때 필요해서 사용하는 마운트 옵션을 보여줍니다
- 다섯번째 내용은 파티션의 내용을 덤프할 지 아닐지를 결정하는데 dump가 사용합니다. 보통 이 값을 0(영)으로 둘 수 있습니다.
- 여섯번째 내용은 시스템을 제대로 종료하지 않았을 경우 파일시스템을 검사해야 할지를 결정할 때 fsck가 사용합니다. 루트 파일 시스템은 1로 설정하고 나머지 파일 시스템은 2로 설정합니다(또는 파일시스템 검사가 필요하지 않을 경우 0으로 설정합니다)
중요: 젠투가 제공하는 기본 /etc/fstab 파일은 올바른 fstab 파일이 아닙니다. 여러분 자신의 /etc/fstab 파일을 만들어야 합니다
코드 예제 1.1: /etc/fstab 열기 |
# nano -w /etc/fstab |
이제 /boot 파티션에 대한 옵션을 어떻게 적는지 보도록 하겠습니다. 이건 그냥 예제일 뿐인데, /boot 를 만들 줄 모르거나 만들 수 없으면 복사하지 마십시오.
저희가 제공한 기본 x86 파티션 분할 예제에서는, /boot는 보통 ext2 파일시스템의 /dev/sda1 파티션입니다. 부팅하는 동안에 검사할 필요가 있기에 다음과 같이 적습니다.
코드 예제 1.2: /etc/fstab의 /boot 줄 예제 |
/dev/sda1 /boot ext2 defaults 1 2 |
어떤 사용자는 보안성을 향상시키기 위해 /boot 파티션을 자동으로 마운트하는 것을 원하지 않기도 합니다. 이 분들은 defaults를 noauto로 바꿉니다. 이는 여러분이 이 파티션을 사용하려면 매번 직접 마운트 할 필요가 있다는 것을 의미합니다.
여러분의 파티션 모양새와 맞는 규칙을 추가하고 CD-ROM 드라이브 규칙을 붙입니다. 물론 다른 파티션이나 드라이브가 있으면 이에 대해서도 추가합니다.
이제 /etc/fstab을 만드는데 아래에 있는 예제를 사용하겠습니다
코드 예제 1.3: 완전한 /etc/fstab 예제 |
/dev/sda1 /boot ext2 defaults,noatime 1 2 /dev/sda2 none swap sw 0 0 /dev/sda3 / ext3 noatime 0 1 /dev/cdrom /mnt/cdrom auto noauto,user 0 0 |
auto는 mount가 파일시스템을 추측(다양한 파일시스템으로 만들 수 있는 이동식 미디어에 추천합니다)하게 하고 user는 비 루트 사용자가 CD를 마운트할 수 있게 합니다.
성능을 좀 더 올리기 위해 대부분의 사용자는 마운트 옵션에 접근 시간을 등록하지 않아 (보통 필요하지 않습니다) 시스템을 좀더 빠르게 하는 noatime을 추가하고 싶을 것입니다.
/etc/fstab을 다시 확인하고, 저장하고 빠져나간 후 계속 진행합니다.
네트워크 정보
호스트 이름, 도메인 이름, 등
사용자가 선택해야 하는 것 중 하나가 PC의 이름입니다. 이는 좀 쉬울 수가 있지만 대부분의 사용자들은 리눅스 PC에서 적당한 이름을 찾는데 애를 먹습니다. 이걸 빨리 해결하려면 나중에 바꿀 수 있게 여러분이 선택한 이름을 알 필요가 있습니다. 이 모든 것들을 고려하여, 여러분은 시스템이름을 tux로 하고 도메인 이름은 homenetwork라고 부를 수 있습니다.
코드 예제 2.1: 호스트 이름 설정 |
# nano -w /etc/conf.d/hostname |
두번째로 도메인 이름이 필요하다면, /etc/conf.d/net에 설정합니다. ISP나 네트워크 관리자가 언급하는거나, DNS서버는 있는데 DHCP서버가 없을 경우 도메인이 필요합니다. DHCP로 네트워크를 설정했다면 DNS나 도메인 이름에 대해 걱정할 필요가 없습니다.
코드 예제 2.2: 도메인 이름 설정 |
# nano -w /etc/conf.d/net |
참고: 도메인 이름을 설정하지 않으면, /etc/issue를 편집하면 나타나는 "This is hostname.(none)" 로그인 화면의 메시지를 보게 됩니다. 파일에서 .\O 문자열을 지우세요
NIS 도메인을 가지고 있다면(뭔지 모르겠다면 가지고 있는게 아닙니다) 다음을 더 설정하는 것이 필요합니다
코드 예제 2.3: NIS 도메인 이름 설정 |
# nano -w /etc/conf.d/net |
참고: DNS와 NIS설정에 대해 더 알려면 bzless를 통해 읽을 수 있는 /usr/share/doc/openrc-*/net.example.bz2의 제공내용을 읽어보시기 바랍니다. 또한 DNS/NIS 설정을 관리하는데 도움을 받으려면 원하시는 경우 openresolv를 이머지 하실수 있습니다.
네트워크 설정하기
"어이, 다 됐는데..."같은 느낌을 받기전에 젠투 설치 시작 즈음에 여러분이 설정한 네트워크는 그냥 설치를 위한 것이었음을 기억하셔야 합니다. 바로 이제 젠투 시스템에서 계속 사용할 네트워크를 설정하실 차례입니다.
참고: 본딩, 브리징, 802.1Q VLAN 또는 무선 네트워크 같은 고급 주제를 포함한 네트워크에 대한 더 많은 내용은 [젠투 네트워크 설정] 장에서 다룹니다.
모든 네트워크 정보는 /etc/conf.d/net에서 가져옵니다. 여러분이 네트워크를 직접 어떻게 설정하는지 모르시겠더라도 아직은 직관적이지 않지만 간단한 문법을 사용합니다. 그러나 두려워 하지 마세요. 다 설명할테니까. 많은 여러가지 설정에 대해 주석이 완전히 달린 예제는 /usr/share/doc/openrc-*/net.example.bz2에 있습니다.
DHCP는 기본으로 사용합니다. DHCP를 동작하게 하려면, DHCP 클라이언트를 설치할 필요가 있습니다. 다음의 [필요한 시스템 도구 설치하기] 부분에서 설명할 것입니다. DHCP 클라이언트를 설치하는걸 잊지 마시기 바랍니다.
특정 DHCP 옵션이 필요하거나 DHCP를 아얘 사용하지 않아 네트워크 연결 설정이 필요한 경우, /etc/conf.d/net 을 여러분 취향의 편집기로 엽니다. (이 예제에서는 nano를 사용합니다.)
코드 예제 2.4: /etc/conf.d/net 편집을 위해 열기 |
# nano -w /etc/conf.d/net |
다음 줄을 보게 될 것입니다.
코드 예제 2.5: 기본 /etc/conf.d/net |
# This blank configuration will automatically use DHCP for any net.* # scripts in /etc/init.d. To create a more complete configuration, |
여러분의 IP 주소, 넷마스크, 게이트웨이를 입력하려면 config_eth0와 routes_eth0 둘 다 설정해야 합니다.
코드 예제 2.6: eth0 IP 정보 직접 설정하기 |
config_eth0="192.168.0.2 netmask 255.255.255.0 brd 192.168.0.255" routes_eth0="default via 192.168.0.1" |
DHCP를 사용하려면 config_eth0을 설정합니다
코드 예제 2.7: eth0에 IP주소 자동으로 가져오기 |
config_eth0="dhcp" |
쓸 수 있는 모든 옵션을 보려면 /usr/share/doc/openrc-*/net.example.bz2를 보시기 바랍니다. 특정 DHCP 옵션을 설정할 필요가 있다면 DHCP 클라이언트 맨페이지도 보시기 바랍니다.
여러 개의 네트워크 인터페이스가 있다면 config_eth1, config_eth2 등에 대해서도 위 과정을 반복하도록 합니다.
이제 설정을 저장하고, 계속 진행하기 위해 빠져나갑니다.
시동시 자동으로 네트워크 시작하기
시동시 네트워크 인터페이스를 활성화하려면 기본 런레벨에 추가해야 합니다.
코드 예제 2.8: 기본 런레벨에 net.eth0 추가하기 |
# cd /etc/init.d # ln -s net.lo net.eth0 |
여러 개의 네트워크 인터페이스가 있다면, net.eth0를 만들었던 것처럼, 적당한 net.eth1, net.eth2 등을 만들어야 합니다.
네트워크 정보 적어놓기
이제 여러분의 네트워크에 대해 리눅스에게 알려줄 필요가 있습니다. /etc/hosts에 지정되어 있으며, 이름 서버에서 해석할 수 없는 호스트의 IP 주소를 해석하는데 도움을 줍니다. 시스템을 설정할 필요가 있습니다. 내부 DNS 시스템을 설정하고 싶지 않다면 여러분의 네트워크에 다른 시스템을 지정하고 싶으실 것입니다.
코드 예제 2.9: /etc/hosts 열기 |
# nano -w /etc/hosts |
코드 예제 2.10: 네트워크 정보 채워넣기 |
(현재 시스템을 설정합니다) 127.0.0.1 tux.homenetwork tux localhost |
저장하고 계속 진행하기 위해 편집기를 빠져 나갑니다.
PCMCIA가 붙어있지 않다면 [시스템 정보]로 계속 진행할 수 있습니다. PCMCIA 사용자는 PCMCIA에 대한 다음 주제를 읽어야합니다.