2011년 – webterror의 젠투(Gentoo) 설치 기록부

입질쾌감 물때표

내용이 좀 뒤죽박죽인데 개인적으로 설치할때 참고하면서 보는 혼자만의 매뉴얼이다. 정리를 다시할 필요가 있다.
먼저 핸드북 보고 파티션, chroot 까지 모두 마친후, make.conf 파일을 다른 머신에서 복사해서 붙인다. 그후 진행하면서 필요한 패키지들을 목록에 남겨두거나 한큐에 설치를 끝내고 부팅성공을 하여 Login: 를 찍기위해 글로 남겨두었다. 또 한가지.! 웹테러 생각은 굳이 64bit로 설치해야 할 이유가 없다고 본다. 그냥 전부다 KEYWORD는 x86으로 통일해서 32비트로 깔자. 또한 나중을 생각해서라도 32비트가 클론 젠투를 만드는데 매우 유용할 뿐만 아니라 리눅스 드라이버를 설치하는데에도 편리함이 있다는 장점이 있다. 그냥 우린 입다물고 x86 설치하면 되겠다. (효율과 퍼포먼스를 따질거면 윈도우 제목표시줄의 우측 끝의 X표시를 눌러라)

fdisk로 파티션 설정하고(젠투핸드북 보고 할것) 스왑 파티션을 만든 후 파티션을 띄운다.

# mkswap /dev/sda2 && swapon /dev/sda2 // 이건 반드시 빽먹지 말고 할것

파티션 마운트 시키고 stage와 portage파일 다운로드 // 젠투 핸드북 참고

livecd ~ # mount /dev/sda3 /mnt/gentoo
livecd ~ # mkdir /mnt/gentoo/boot
livecd ~ # mount /dev/sda1 /mnt/gentoo/boot
livecd ~ # cd /mnt/gentoo
livecd gentoo # links http://www.gentoo.org/main/en/mirrors.xml
...
livecd gentoo # time tar xjpf stage3*
livecd usr # time tar xjpf portage*

chroot 시키기

livecd usr # cd /
livecd / # mount -t proc proc /mnt/gentoo/proc
livecd / # mount --rbind /dev /mnt/gentoo/dev
livecd / # cp -L /etc/resolv.conf /mnt/gentoo/etc/
livecd / # chroot /mnt/gentoo /bin/bash
livecd / # env-update && source /etc/profile
livecd / # scp root@218.210.133.52:/etc/portage/make.conf /etc/portage/make.conf // scp로 다른 젠투에 있는 make.conf 파일을 복사해서 가져오기
livecd / # nano /etc/portage/make.conf
EMERGE_DEFAULT_OPTS="--autounmask=n --with-bdeps=y --getbinpkg --jobs=4 --load-average=1.5 --buildpkg" // make.conf 파일에 이부분을 반드시 추가할것
PORTAGE_BINHOST="http://binhost" // binary로 설치할거면 /etc/hosts 파일에 binhost에 해당하는 아이피를 써넣어준다.
livecd / # nano /etc/hosts // binhost 추가
livecd / # emerge -pv vim // ebuild가 뜨는지 확인
livecd / # emerge --sync
livecd / # emerge -pvuND world
livecd / # emerge world
livecd / # emerge grub gentoolkit gentoo-sources genkernel vim dhcpcd wireless-tools syslog-ng
livecd / # genkernel --menuconfig all
livecd / # grub
livecd / # passwd
livecd / # vi /boot/grub/grub.conf
기본적인 Grub파일 가져와서 수정하기
livecd / # scp root@218.210.133.52:/boot/grub/grub.conf /boot/grub/grub.conf
xsession 값, Gnome 값이 들어가 있는 파일이다. 가져올것!
livecd / # scp root@218.210.133.52:/etc/env.d/91xsession /etc/env.d/
locale 값 가져오기
livecd / # scp root@218.210.133.52:/etc/env.d/02locale /etc/env.d/
livecd / # scp root@218.210.133.52:/etc/locale.gen /etc/
기본 rc.conf 설정 파일 가져오기
livecd / # scp root@218.210.133.52:/etc/rc.conf /etc/rc.conf
livecd / # vi /etc/fstab
livecd / # locale-gen

자신의 메모리가 3기가 이상이라면 커널 컴파일 전에 아래의 내용을 반드시 체크한다.

x86 High Memory support
Processor type and features  --->
 High Memory Support  --->
  (X) 4GB
  ( ) 64GB
  Choose the 4GB option, unless your system has more than 4GB of RAM.

그밖의 설정파일을 가져오고 싶다면 가져오자. (참고로 아래에 써있는 IP주소는 가짜임)

# scp root@218.210.133.52:/etc/lighttpd/lighttpd.conf /etc/lighttpd/lighttpd.conf
# scp root@192.168.15.100:/etc/portage/package.* /etc/portage/
# scp root@218.210.133.52:/etc/php/cgi-php5.3/php.ini /etc/php/cgi-php5.3/php.ini
# emerge ufed gnome ibus libhangul ibus-anthy ibus-pinyin xorg-server vsftpd dbus lighttpd samba xinetd firefox adobe-flash eix filezilla
# emerge -pv virtualbox tomboy livecd-tools ibus libhangul ibus-anthy ibus-pinyin

짜증나는 어쩌구 저쩌고 하는 OpenRC의 메세지를 보고 싶지 않다면 rc.conf 파일을 수정해 주자

# rc_hotplug is a list of services that we allow to be hotplugged.
# By default we do not allow hotplugging.
# A hotplugged service is one started by a dynamic dev manager when a matching
# hardware device is found.
# This service is intrinsically included in the boot runlevel.
# To disable services, prefix with a !
# Example - rc_hotplug="net.wlan !net.*"
# This allows net.wlan and any service not matching net.* to be plugged.
# Example - rc_hotplug="*"
# This allows all services to be hotplugged
rc_hotplug="*"

# rc_logger launches a logging daemon to log the entire rc process to
# /var/log/rc.log
# NOTE: Linux systems require the devfs service to be started before
# logging can take place and as such cannot log the sysinit runlevel.
rc_logger="YES"

rc_logger=”YES” 가 설정되어 있으면 /var/log/rc.log에 데몬에 관련된 내용이 로그로 남겨지게 된다.

바이너리 서버를 만들어서 바이너리로 패키지를 설치하려면 약간의 셋팅이 필요
(1) 서버측 설정 – binary 패키지로 설치하기 위해 make.conf 파일을 수정한다. 서버측에 http로 바이너리 패키지를 전송하기 위해 다음을 수행한다.

# vi /etc/apache2/vhosts.d/00_default_vhost.conf
<VirtualHost *:80>
        ServerName binhost
        DocumentRoot "/usr/portage/packages"
        <Directory /usr/portage/packages>
                AllowOverride All
                Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
                Allow from All
        </Directory>
</VirtualHost>
# vi /etc/hosts
127.0.0.1       binhost

(2) 클라이언트 측 설정

# vi /etc/hosts
192.168.1.35       binhost

EMERGE_DEFAULT_OPTS="--autounmask=n --with-bdeps=y --jobs=4 --load-average=1.5 --buildpkg --getbinpkg"
PORTAGE_BINHOST="http://192.168.15.100:8080/~binhost/"

/etc/fstab 파일 설정
이건 반드시 설정하고 넘어가자, 갑자기 root 파티션을 못잡는다는 메세지가 뜨면 좀 짜증이 나기 때문이다.

/etc/conf.d/net 파일을 수정
– dhcp를 사용할 것이라면 dhcp 패키지를 emerge 한다.
– net 파일에 config_eth0=”dhcp” 라고 추가한다.

NetworkManager 사용하기
/etc/rc.conf 파일에 다음과 같이 수정한다.
rc_hotplug=”!net.*”

nm-applet이 설치되어 있지 않다면 설치해둔다.

# emerge -pv nm-applet
# vi /etc/group
plugdev:x:999:webterror
wheel:x:10:root,webterror
usb:x:85:webterror

데몬 띄우기

# ln -s /etc/init.d/net.lo /etc/init.d/net.eth0
# rc-update add net.eth0 default
# rc-update add gpm default
# rc-update add lighttpd default
# rc-update add sshd default
# rc-update add consolekit default
consolekit 데몬이 떠 있어야 Gnome에서 애플릿이 제대로 뜬다.
# rc-update add NetworkManager default
NetworkManager 데몬을 띄어야 Gnome nm-applet을 볼수 있다.
# rc-update add dbus default
# rc-update add samba default
# rc-update add vsftpd default
# rc-update add xinetd default
# rc-update add mysql default
# rc-update add acpid default

hostname 수정

# vi /etc/conf.d/hostname
/etc/resolv.conf 파일 수정, nameserver 추가

그 밖의 패키지 설치

# emerge genkernel gentoo-sources vim dhcpcd wireless-tools syslog-ng grub gentoolkit gentoo-sources genkernel vim world ufed consolekit imaging gnome ibus libhangul ibus-anthy ibus-pinyin xorg-server vsftpd dbus xinetd lighttpd samba xinetd firefox adobe-flash imaging eix filezilla arphicfonts baekmuk-fonts dejavu encodings font-util kochi-substitute liberation-fonts urw-fonts media-fonts/font-jis-misc media-fonts/font-sony-misc media-fonts/kochi-substitute media-fonts/baekmuk-fonts media-fonts/font-daewoo-misc media-fonts/arphicfonts media-fonts/font-isas-misc media-fonts/wqy-bitmapfont media-fonts/intlfonts terminus-font
# emerge grub gentoolkit gentoo-sources genkernel vim world ufed consolekit imaging gnome ibus libhangul ibus-anthy ibus-pinyin xorg-server vsftpd dbus xinetd lighttpd samba xinetd firefox adobe-flash imaging eix filezilla
# emerge gst-plugins-xvid gst-plugins-xvideo xvid gnome-mplayer app-misc/mc django app-misc/livecd-tools
# emerge tomboy subversion hdparm dmg2img imagemagick bind

폰트설치

# emerge arphicfonts baekmuk-fonts dejavu encodings font-util kochi-substitute liberation-fonts urw-fonts media-fonts/font-jis-misc media-fonts/font-sony-misc media-fonts/kochi-substitute media-fonts/baekmuk-fonts media-fonts/font-daewoo-misc media-fonts/arphicfonts media-fonts/font-isas-misc media-fonts/wqy-bitmapfont media-fonts/intlfonts terminus-font
# fc-cache -fv

eix 팁 : http://en.gentoo-wiki.com/wiki/Eix

# eix-update // 패키지 트리를 업데이트 시킨다.
# eix-sync // 캐쉬를 만들어준다.

kernel compile

Device Driver --->
Graphics support --->
Direct Rendering Manager --->
Intel 830M, 845G, 852GM, 855GM, 865G (i915 driver)
[*] Enable modesetting on intel by default

# genkernel --menuconfig all

root 패스워드 바꾸기 // 제일 중요한것 !!!! 빼먹지 말것 !!!! 요걸 안하고 재부팅하면 자신에게 욕하는 본인의 모습을 볼수 있음

# passwd

Locale 설정

# vi /etc/env.d/02locale
LANG="en_US.UTF-8"
# vi /etc/locale.gen
---------------------------------------------------------------------
en_US.UTF-8 UTF-8
zh_CN.UTF-8 UTF-8

ja_JP.EUC-JP EUC-JP
ja_JP.UTF-8 UTF-8

ko_KR.EUC-KR EUC-KR
ko_KR.UTF-8 UTF-8

zh_TW.UTF-8 UTF-8
zh_TW.EUC-TW EUC-TW
---------------------------------------------------------------------
eselect로 시스템 LANG 세팅하기
# eselect locale list
# eselect locale set 번호
위의 대로 설정을 해주면 다음의 파일을 자동으로 생성해 준다.
localhost ~ # cat /etc/env.d/02locale 
# Configuration file for eselect
# This file has been automatically generated.
LANG="en_US.utf8"

X세션 설정

# vi /etc/env.d/91xsession
XSESSION="gnome"

Grub 설정 참고

# grub
>> root (hd0,0)
>> setup (hd0)
# vi /boot/grub/grub.conf
/--- 내용 붙일 것 ---/
콘솔 해상도 지정할시 설정할수 있는 값 목록
color | 640x480 800x600 1024x768 1280x1024
---------------------------------------------------------------------
256 | 0x301=769 0x303=771 0x305=773 0x307=775
32k | 0x310=784 0x313=787 0x316=790 0x319=793
64k | 0x311=785 0x314=788 0x317=791 0x31A=794
16m | 0x312=786 0x315=789 0x318=792 0x31B=795

시간 설정하기

# vi /etc/conf.d/hwclock
clock="local"
# vi /etc/timezone
# ls /usr/share/zoneinfo/Asia/
Asia/Taipei

MySQL 서버 설치했을 경우 – 빼먹지 말것

# mysql_install_db
# rc-update add mysql default
</strong>

<strong>VirtualBox  설치할시</strong>
make.conf 파일에 다음과 같이 써넣으면 라이센스 적용이 된다. 또는 /etc/portage/package.license 파일에 직접 지정해도 좋다.
<pre class="brush: bash; gutter:true;">ACCEPT_LICENSE="PUEL"

만약 개별 패키지에 라이센스를 적용하고 싶다면 아래처럼 해주면 될것이다.

echo "app-emulation/virtualbox-additions" PUEL >> /etc/portage/package.license

어떤 user를 어느 group에 포함시키려면?

# gpasswd -a youruser vboxusers

>> vboxusers에 그룹을 추가시켜야만 그놈 메뉴에서 VirtualBox를 볼수 있다.

또한 /etc/group파일의 Group에 유저를 추가해서 USB등의 마운트 등이 원활하게 돌아갈수 있도록 해준다. usb,plugdev,vboxuser 등등..
추가를 해야만 ntfs 파티션을 유저가 마운트한 후, rw(쓰기) 모드가 작동된다.

젠투 라이브시디에 있는 net-setup 프로그램을 쓰고 싶다면 아래의 패키지를 설치하자

# emerge -pv app-misc/livecd-tools

NTFS 파티션 한글 보기
# emerge sys-fs/fuse ntfs3g
위의 두가지의 패키지를 설치하면 NTFS 파티션의 한글을 볼수 있다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다