#topicpath
----
#contents

* 準備 [#b6eae2a1]

** 必要なもの [#oa0a4d7c]

Gentoo LiveDVD 2007.0 を利用しました。

http://www.gentoo.org/main/en/where.xml
から BitTorrent のファイルを取ってきて、
Azureus などを使ってダウンロードできます。

Gentoo はネットワーク経由でファイルを取ってきながらインストールするのが楽なので、
Gentoo 2007.0 Minimal CD/InstallCD で十分だと思います。

** 参考にするサイト [#hadb58dc]

[[Gentoo Handbook:http://www.gentoo.org/doc/en/handbook/index.xml]]を見なくてはインストールは困難です。

* インストール [#nf4ff7aa]

** 起動〜ディスクの準備 [#u5c7baa9]

- livedvd 2007.0 で boot
- fdisk でパーティションを切る
- mkfs.ext3 と mkswap する
- mount と swapon する

** ネットワークの設定 [#o21e5513]

- net-setup コマンドを使ってインタフェースの設定をする 

** 基本システムの展開 [#le7e54f3]

- i686 の stage3 を取ってくる (livedvd のものでもいい)
- stage3 を /mnt/gentoo で展開する

** portage のインストールと設定 [#w493a70c]

- portage を取ってきて /mnt/gentoo/usr で展開する

- /mnt/gentoo/etc/make.conf をいじる
-- CFLAGS="-O2 -march=nocona -pipe"
-- MAKEOPTS="-j3"
-- GENTOO_MIRRORS="http://ftp.iij.ad.jp/pub/linux/gentoo/"

CFLAGS は Gentoo Linux Wiki の
[[Safe Cflags:http://gentoo-wiki.com/Safe_Cflags]]
が参考になります。

ここでは 64bit 環境で推奨されている -march=nocona としましたが、32bit 環境では
正しく 32bit のコードが生成されるとのことです。
もちろん -march=prescott でもいいでしょう。

** HDD 上の環境を作る [#g4a056ea]

- /etc/resolv.conf を書く (生成されている /etc/resolv.conf から持ってくる)

- /proc と /dev を mount する
 # mount -t proc none /mnt/gentoo/proc
 # mount -o bind /dev /mnt/gentoo/dev

- chroot する
 # chroot /mnt/gentoo /bin/bash
 # env-update
 >> Regenerating /etc/ld.so.cache...
 # source /etc/profile
 # export PS1="(chroot) $PS1"

** インストールする先の環境 (chroot 環境) でのインストール作業 [#me993ec7]

*** インストール対象の設定 [#x3b39f4d]

- portage の更新
-- emerge --sync

- profile の選択 (x86/2007.0/ から x86/2007.0/desktop/ に)

 # cd /etc
 # ln -snf /usr/portage/profiles/default-linux/x86/2007.0/desktop /etc/make.profile  

(追記) eselect でやるのが楽です。

#pre{{
# eselect profile list
Available profile symlink targets:
  [1]   hardened/amd64
  [2]   hardened/amd64/multilib
  [3]   selinux/2007.0/amd64
  [4]   selinux/2007.0/amd64/hardened
  [5]   default/linux/amd64/2008.0
  [6]   default/linux/amd64/2008.0/desktop
  [7]   default/linux/amd64/2008.0/developer
  [8]   default/linux/amd64/2008.0/no-multilib
  [9]   default/linux/amd64/2008.0/server
  [10]  hardened/linux/amd64
# eselect profile set 6
}}

- USE フラグの設定 (ここでは profile のままにしておく)

*** 日本語環境の設定 [#se5f5878]

- locale の設定 (/etc/locale.gen を編集 して locale-gen を実行)
-- ja_JP.EUC-JP EUC-JP
-- ja_JP EUC-JP

- timezone の設定
-- /etc/conf.d/clock
 CLOCK="local"
 TIMEZONE="Japan"
 CLOCKOPTS="--directisa"

- 時刻の設定
 # date -s "2008-01-31 21:21:00"

** kernel のインストール [#uebc4d18]

- kernel ソースのインストール
 # USE="-doc symlink" emerge gentoo-sources

- genkernel のインストール
 # emerge genkernel

- kernel の make
 # genkernel --menuconfig all
   Processor family を Core 2/newer Xeon に変更
   その他環境に合わせて変更

** /etc/ の設定 [#z976cca6]

- /etc/fstab
- /etc/resolv.conf (domain の行を追加)
- /etc/conf.d/hostname
- /etc/conf.d/keymaps
- /etc/conf.d/net
-- config_eth0=("192.168.x.x netmask 255.255.255.0")
-- routes_eth0=("default via 192.168.x.y")
-- dns_domain_eth0=("mydomain.example.com")

- ネットワークを有効化
 # rc-update add net.eth0 default

** 最低限のシステム管理 [#w451527e]

- root のパスワード
 # passwd

- syslog-ng のインストール
 # emerge syslog-ng
 # rc-update add syslog-ng default

- vixie-cron のインストール
 # emerge vixie-cron
 # rc-update add vixie-cron default

** 起動のための設定と再起動 [#oaa3de1f]

- grub のインストール
 # emerge grub

- /boot/grub/grub.conf の設定

- grub-install
 # grep -v rootfs /proc/mounts > /etc/mtab
 # grub-install /dev/hda

- 再起動
 # exit
 # cd
 # umount /mnt/gentoo/boot /mnt/gentoo/dev /mnt/gentoo/proc /mnt/gentoo
 # reboot

* 再起動の後 [#x50a8f6a]

普通に起動してきて、root でログインできます。

いまのままではほとんどまっさらなので、
一通りの環境を作る必要があります。

profile に設定されているものをそのまま利用してもいいのですが、
GNOME と KDE の両方が入ってしまうなど面倒なところもあるため、
/etc/make.conf の USE フラグを自分なりに設定して環境を作ります。

** /etc/make.conf の設定 [#ga3ed857]

このようにしてみました。USE= の行は実際には一行です。
"-" を付けると無効になります。

 # These settings were set by the catalyst build script that automatically
 # built this stage.
 # Please consult /etc/make.conf.example for a more detailed example.
 #CFLAGS="-O2 -march=i686 -pipe"
 CFLAGS="-O2 -march=nocona -pipe"
 CXXFLAGS="${CFLAGS}"
 # This should not be changed unless you know exactly what you are doing.  You
 # should probably be using a different stage, instead.
 CHOST="i686-pc-linux-gnu"
 
 # 2008/01/31
 MAKEOPTS="-j3"
 GENTOO_MIRRORS="http://ftp.iij.ad.jp/pub/linux/gentoo/"
 ACCEPT_KEYWORDS=""
 USE="X aac a52 alsa -arts avahi avi berkdb bitmap-fonts 
 cairo cdr cjk cli crypt -cups dbus dlloader dri dvd dvdr 
 eds elibc_glibc emacs emboss encode esd -fam firefox 
 -fortran gdbm gif gnome gpm gstreamer gtk hal 
 input_devices_evdev input_devices_keyboard 
 input_devices_mouse -ipv6 -isdnlog java jpeg -kde 
 kernel_linux ldap libg++ mad mailwrapper mikmod mp3 mpeg 
 mmx ncurses nls nptl nptlonly nsplugin ogg opengl oss 
 pam pcre pdflib perl png ppds -pppd python -qt3 -qt4 
 quicktime readline real reflection sdl session spell spl 
 ssl -swat cpd sse sse2 truetype truetype-fonts 
 type1-fonts udev unicode userland_GNU vorbis win32codecs 
 x86 xml xorg xv zlib"
 FEATURES="ccache digest"
 CCACHE_SIZE="2G"

** emerge で環境構築 [#i5f082d1]

まず何がインストールされるのかを確認します。

 # emerge -pvuDN world

特にエラーもなく一覧が表示されたら、
"-p" オプションを外して実際にインストールします。

 # emerge -vuDN world

222個のパッケージがインストールされました。

依存関係もチェックしておきます。

 # emerge gentoolkit
 # revdep-rebuild

これで一通りの環境がインストールされました。

* パッケージの更新 [#i4a8b25d]

 # emerge --sync

を適宜実行することで、更新された ebuilds (パッケージを作る元となるもの) が反映されます。

[[Gentoo-Portage - Newest Ebuilds:http://www.gentoo-portage.com/Newest]]
を見て、欲しいものがあったときに実行するのがいいかと思います。

実際にインストールされているパッケージを更新するには、
最初のインストールと同様に emerge します。

 # emerge -pvuDN world
 ... (内容を確認)
 # emerge -vuDN world
 # revdep-rebuild

* X の設定 [#i5d61103]

(TODO)

----
- ご無沙汰です、お元気でしょうか?/etc/conf.d/domainnameはずっと前になくなったようです。あと、emergeの省略オプションを使用するなら"--newuse"="-N"です -- m.m &new{2008-02-01 (金) 03:05:47};
- ありがとうございます。domainname は NIS の設定ファイルということで古いのはわかってはいるのですが、他にドメイン名を設定するものがなくてどうすればいいのかなと調査しているところです。まだ他にも困っていることがあるので、一通り解決したらまた見直します。 -- すぎむら &new{2008-02-01 (金) 11:33:38};
- /etc/conf.d/net.example を見ると nis_domain_eth0 なる設定がありますよ -- m.m &new{2008-02-01 (金) 16:44:03};
- なるほど。。FreeBSD のときもサンプルを見るのは重要だったのに、Gentoo で見ないのはダメでしたね。やりたいのは dns_domain_eth0 のほうになるようです。 -- すぎむら &new{2008-02-01 (金) 17:06:19};

#comment

トップ   差分 履歴 リロード   一覧 検索 最終更新   ヘルプ   最終更新のRSS