はじめに
学校でGentooを布教しようとするとかならずといっていいほど
「でも、難しいんでしょ?」と聞かれますがそんなことは無いよって話しです。
インストールメディアの準備
こ↑こ↓からアーキテクチャに合せたMinimal Installation CDのISOイメージをダウンロードしてきます。
Minimal CDではUEFIブートできないようなのでUEFIブートできるUSBメモリを作成します(Rufusというソフトを利用しました)。
パーテーション
「間違えてWindowsのパーテーションを消しちゃいそう」などという意見があったので先にWindowsからGentoo用のパーテーションを作っておきます。
Windowsで「ディスクの管理」を起動します。
Cドライブを縮小するなどして/とswapにするために二つのパーテーションを用意します。このとき、作成したパーテーションはフォーマットせずドライブレターを割り当て無いようにします。
起動
準備がととのったら起動しましょう。
boot:というプロンプトが出たらgentooで起動できます。
起動中、唐突にキー配列をきかれるので指示に従ってください。英語キーボードならそのままで大丈夫です。
ネットワーク設定
有線接続
LANケーブルが刺さっていれば自動的に繋っていると思います。
無線接続
最近はEthernetポートが無いPCも増えていますね、その場合はwifiを利用しましょう。
# ifconfig
でデバイスが認識されているか確認しましょう。
認識されていればwl~みたいな名前になっていはずです。
次に# wlist wl~ scan | grep ESSID
でアクセスポイントを探します。
アクセスポイントが見付かったら
# wpa_passphrase "essid" "パスフレーズ" > hoge.conf
で設定ファイル作って
# wpa_supplicant -i wl~ -D wext -c hoge.conf
で接続できます。
接続の確認
接続できたら
# ping www.gentoo.org
で接続の確認をします。
ファイルシステムの作成
下準備で用意したGentoo用のパーテーションをフォーマットします。
# mkfs.ext4 /dev/sdax
(sdaxの部分は各自置き換えてください)
次にswapを作成します。
# mkswap /dev/sday
# swapon /dev/sday
(sdayの部分は各自置き換えてください)
パーテーションのマウント
先程のパーテーションをマウントします。
# mount /dev/sdax /mnt/gentoo
次にEFIのパーテーションをマウントします
# mkdir -p /mnt/gentoo/boot/efi
# mount /dev/sda1 /mnt/gentoo/boot/efi
インストール
stage3のダウンロード、展開
/mnt/gentooに移動し、wget等を利用してstage3のアーカイブをダウンロードしてきます。
# tar -xvjpf stage3-amd64.tar.bz2
で展開します。
chroot
# cp -L /etc/resolv.conf /mnt/gentoo/etc/
でDNS情報をコピーしておきます。
# mount -t proc proc /mnt/gentoo/proc
# mount --rbind /dev /mnt/gentoo/dev
# mount --rbind /sys /mnt/gentoo/sys
で/proc,/dev,/sysをマウントします。
# chroot /mnt/gentoo /bin/bash
# source /etc/profile
これで新しい環境の中に入ることができました。
portageの導入
# emerge-webrsync
導入したらportageツリーを更新します。
# emerge --sync
# eselect profile list
でprofileのリストが見れるので
# eselect profile set 番号
で設定します。
make.confの編集
make.confに以下を追加します
MAKEOPTS="-j4"
LINGUAS="en ja"
GRUB_PLATFORMS="efi-64"
MAKEOPTSはCPUにあわせて最適な値を設定してください。GRUBの設定は後で重要になるので注意してください。
また、必要に応じてUSEフラグを設定してください。
fstab
fstabを書き換えます。
/dev/sda1 /boot/efi vfat noauto,noatime 1 2
/dev/sdax / ext4 noatime 0 1
/dev/sday none swap sw 0 0
カーネルコンパイル
今回はgenkernelを利用して自動でビルドします。
# emerge gentoo-sources genkernel
# genkernel all
/boot以下にカーネルが作成されています。
パッケージのインストール
必要なパッケージをインストールしておきましょう。
# emerge emacs
また、ネットワーク周りのもの(dhcpcd,wireless-tools,wpa_supplicant)は今の内にインストールしておかないと後でネットに繋げなくて確実に詰みます。
rootパスワードの設定,ユーザーの追加
# passwd
でrootのパスワードを設定します。
一般ユーザーを追加します。
# useradd -m -G users -s /bin/bash ユーザー名
# passwd ユーザー名
ローカライズ
タイムゾーンを設定します
# ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
ロケールを設定します
en_US.UTF-8
ja_JP.UTF-8
# locale-gen
英語キーボード以外のキーボードを利用している人は/etc/conf.d/keymapsを自分のキーボードにあわせて書き換えましょう。
ブートローダーの設定
make.confにGRUB_PLATFORMS="efi-64"を書き加えていない人は先に書いておきましょう。
# emerge grub efibootmgr
# grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=gentoo_grub /dev/sda
# grub-mkconfig -o /boot/grub/grub.cfg
再起動
# exit
でchrootから抜けます。
# umount -l /mnt/gentoo/dev{/shm,/pts,}
# umount -l /mnt/gentoo{/boot/efi,/proc,}
で、マウントを解除し、# reboot
で再起動します