Gentoo Linuxインストールメモ
インストーラーは存在せず、ブートメディアから各コマンドでローカルディスク上にシステムを作っていくことになる。文書を読みながらやればできる。
ちなみにデフォルトのテキストエディタはdebianと同じくnano。
インストール
を使いブート。
に従う。
日付を調整
# date MMDDhhmmYYYY
date 111314362005など。むりやりローカル時間にする。
ファイルシステム作成とマウント
# mkswap /dev/hda2 # mkfs.ext3 /dev/hda1 # tune2fs -c 0 -i 0 /dev/hda1 # mkfs.ext3 /dev/hda3 # tune2fs -c 0 -i 0 /dev/hda3 # swapon /dev/hda2 # mount -t ext3 /dev/hda3 /mnt/gentoo # mkdir /mnt/gentoo/boot # mount -t ext3 /dev/hda1 /mnt/gentoo/boot
stageの展開
# cd /mnt/gentoo # wget http://mirror.gentoo.gr.jp/releases/x86/2005.1/stages/pentium4/stage2-pentium4-2005.1.tar.bz2 # tar jxpvf stage2-x86-2005.1.tar.bz2 # rm stage*.tar.bz2 # chmod 0755 /mnt/gentoo
stage1が基本セット。stage2はbootstrap.sh済み。さらにstage3はemerge system入り。どれかいれればよい。
chrootでローカルシステムに切り替える
# mount -t proc none /mnt/gentoo/proc # cp /etc/resolv.conf /mnt/gentoo/etc/ # chroot /mnt/gentoo /bin/bash
StableかTestingか
Stableならそのまま、Testingを使うなら/etc/make.confに
ACCEPT_KEYWORDS="~x86"
を追加する。
portageセットアップ
# env-update # source /etc/profile # emerge --sync
ダウンロードが終わったあと
# cd /usr/portage # ./script/bootstrap.sh # emerge -e system
延々とコンパイルが続く
# etc-update
etcファイルを新しいものに書き換えていく
timezone設定
# ln -sf /usr/share/zoneinfo/Japan /etc/localtime # nano /etc/conf.d/clock # date MMDDhhmmYYYY # 強制調整
/etc/conf.d/clockはUTCになっているので
CLOCK="local"
にする。
nanoはCTRL+0 ENTERで保存、CTRL+Xで終了。CTRL+Kでカット、CTRL+Uでペースト。
カーネルインストール
# emerge gentoo-sources # emerge pciutils # emerge genkernel # genkernel all
そのままビルド。ビルド後
# emerge udev # emerge coldplug # rc-update add coldplug default
fstab
# nano /etc/fstab
/dev/hda1 /boot ext3 defaults,noatime 1 2 /dev/hda2 none swap sw 0 0 /dev/hda3 / ext3 noatime 0 1 none /proc proc defaults 0 0 none /dev/shm tmpfs nodev,nosuid,noexec 0 0 /dev/cdroms/cdrom0 /mnt/cdrom auto noauto,user 0 0
net設定
# emerge dhcpcd # nano /etc/conf.d/hostname # nano /etc/conf.d/domainname # rc-update add domainname default # nano /etc/conf.d/net # rc-upate add net.eth0 add default
rc-updateの追加対象は/etc/init.dにある
ドキュメントでは別ページに書いてあるが、dhcpcdを入れるのを忘れないように。
/etc/conf.d/netファイルは以下のようにする
modules=("dhcpcd") config_eth0=("dhcp")
domainnameやhostnameの名前は、/etc/hostsも反映させておく
127.0.0.1 gentoo gentoo.mshome.net localhost
rootパスワード
# passwd
keymap設定
# nano /etc/conf.d/keymaps
KEYMAP="jp106"
にする
システムツールのインストール
# emerge syslog-ng # rc-update add syslog-ng default # emerge vixie-cron # rc-update add vixie-cron default
ブートローダー設定
grubを使う
# emerge grub # nano /boot/grub/grub.conf
default 0 timeout 30 splashimage=(hd0,0)/grub/splash.xpm.gz title=Gentoo Linux root=(hd0,0) kernel=/kernel-genkernel-x86-2.6.13-gentoo-r5 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/hda1 udev initrd=/initramfs-genkernel-x86-2.6.13-gentoo-r5
ファイルはディスクパーティションからの相対位置(initのlinuxrcはinitrd内)。
(hd0)=/dev/hda、(hd0,0)=/dev/hda1になる。
ブートローダーのインストール
# cp /proc/mounts /etc/mtab # grub-install /dev/hda
これでもしうまくいかなければgrubコマンドから対話インストール
# grub ... grub> root (hd0,0) grub> setup (hd0) grub> quit
/bootを別パーティションにして書き込めないときは、以下のように、そのパーティションでboot/grub/grub.confになるようにすればうまくいくかも
# cd /boot # ln -s . boot
うまく書き込めたら再起動。もし再起動できなければisoイメージから起動して(chrootなどをしてから)必要なところから行う。
# logout # chrootを抜ける # reboot
再起動後設定
再起動後、
ユーザー追加
# useradd -m -s /bin/bash username # passwd username
パッケージ追加
# emerge app-admin/sudo # emerge lv # emerge gentoolkit
sshd起動時起動設定
# rc-update add sshd default