Gentoo Linuxインストールメモ

Gentoo Linuxはパッケージ管理システムにPortageを採用したLinuxディストリビューションで、カスタマイズ性の高さに定評があります。サーバー用/デスクトップ用、どちらの用途でもおすすめですが、ここでは主にデスクトップ向けにインストール方法を紹介してみようと思います。

インストールCD

インストールする方法はいろいろありますが注1、ネットワークに繋がっている場合はMinimal Installation CDを作成するのが一番簡単な方法かなと思います。

Gentoo Linux Mirrorsの適当なサーバーからISOイメージをダウンロードして、起動CDを作成します。起動可能なUSBメモリーを作成してそこからインストールする場合は、Gentoo minimal CD on USB stick – Gentoo Linux Wikiなどを参考にしてみてください。

x86の場合
/pub/gentoo/releases/x86/current-iso/install-x86-minimal-20121213.iso
amd64の場合
/pub/gentoo/releases/amd64/current-iso/default/20130207/install-amd64-minimal-20130207.iso

※ファイルはいろいろありますので、インストール環境に対応したファイルを探してください。

Minimal CDでブート

インストールCDが作成できたら、PCを再起動してCDからブートします。

起動画面
起動画面

ネットワークの設定はDHCPによって自動で行なわれますが、HDCPを使っていない場合やうまく設定できない場合はnet-setupを使って手動で設定できます。

# net-setup eth0

Gentoo Linuxのインストール

ディスク

Boot/Swap/Rootの3つのパーティションに分割してインストールしてみます。実際には用途に合わせてパーティションを切ってください。

/dev/sda1ext2/boot
/dev/sda2swapSwap
/dev/sda3ReiserFS/
パーティションの分割例
# fdisk /dev/sda
# mkfs.ext2 /dev/sda1
# mkreiserfs /dev/sda3
# mount /dev/sda3 /mnt/gentoo
# mkdir /mnt/gentoo/boot
# mount /dev/sda1 /mnt/gentoo/boot

スワップパーティションは以下のようにします。

# mkswap /dev/sda2
# swapon /dev/sda2

時計

トラブルの元にならないよう、時計は正しく設定しておくことをおすすめします。

# date
Wed Mar 27 10:30:35 UTC 2013

時刻がズレている場合は以下のようにして修正できます。(UTCに注意してください。)

# date 032710302013

stage3 tarボール

ダウンロードするファイルは通常stage3-i686-<最も新しい日付>.tar.bz2でよいかと思います。

# cd /mnt/gentoo
# links http://www.gentoo.org/main/en/mirrors2.xml
# tar jxvfp stage3-*.tar.bz2

CHROOT

必要なファイルを更新してchrootでインストール環境に入ります。

# vi /mnt/gentoo/etc/portage/make.conf
# cp -L /etc/resolv.conf /mnt/gentoo/etc/
# mount -t proc none /mnt/gentoo/proc
# mount --rbind /sys /mnt/gentoo/sys
# mount --rbind /dev /mnt/gentoo/dev
# chroot /mnt/gentoo /bin/bash
# env-update
# source /etc/profile
# export PS1="(chroot) $PS1"

make.confはGentooの特徴的な機能の1つです。デフォルトのままでも問題なく動作しますが、コンパイルオプションを設定することもできます。

/etc/portage/make.conf

CFLAGS="-O2 -march=native -pipe"
CXXFLAGS="${CFLAGS}"
CHOST="x86_64-pc-linux-gnu"
USE="bindist mmx sse sse2 cjk linguas_ja unicode X"
LINGUAS="ja"
MAKEOPTS="-j2"

Portage

Portage treeを最新の状態に更新します。

# emerge --sync

ファイアウォールなどでrsyncがブロックされる場合はemerge-webrsyncも使えます。

Profile

ここではdefault/linux/x86/13.0/desktopに設定しています。

# eselect profile list
Available profile symlink targets:
  [1] default/linux/amd64/13.0
  [2] default/linux/amd64/13.0/selinux
  [3] default/linux/amd64/13.0/desktop
  [4] default/linux/amd64/13.0/desktop/gnome
  [5] default/linux/amd64/13.0/desktop/kde
  [6] default/linux/amd64/13.0/developer
  [7] default/linux/amd64/13.0/no-multilib
  [8] default/linux/amd64/13.0/x32
  [9] hardened/linux/amd64
  [10] hardened/linux/amd64/selinux
  [11] hardened/linux/amd64/no-multilib
  [12] hardened/linux/amd64/no-multilib/selinux
  [13] hardened/linux/uclibc/amd64
# eselect profile set 3

Timezone

# cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
# echo "Asia/Tokyo" > /etc/timezone

カーネル

カーネルの構築をします。

# emerge gentoo-sources
# cd /usr/src/linux
# make menuconfig
# make && make modules_install
# cp arch/i386/boot/bzImage /boot/

設定は環境に応じて適宜変えてください。

カーネルの設定例

Processor type and features --->
  Processor family (Core 2/newer Xeon) -->
Device Drivers --->
  Generic Driver Options --->
    [*] Maintain a devtmpfs filesystem to mount at /dev
    [ ] Automount devtmpfs at /dev, after the kernel mounted the rootfs
  [*] Network device support -->
File systems --->
  <*> Second extended fs support
  <*> Reiserfs support

fstab

ディスクの設定に合わせて書き変えてください。

# nano -w /etc/fstab

/etc/fstab

/dev/sda1 /boot ext2 noauto,noatime 1 2
/dev/sda2 none swap sw 0 0
/dev/sda3 / reiserfs noatime 0 1

ネットワーク

# nano -w /etc/conf.d/net
# cd /etc/init.d
# ln -s net.lo net.eth0
# rc-update add net.eth0 default

設定内容は/etc/conf.d/netに記述します。

DHCPを使う場合

config_eth0="dhcp"

手動で設定する場合(設定例)

config_eth0="192.168.1.2 netmask 255.255.255.0 brd 192.168.1.255"
routes_eth0="default via 192.168.1.1 metric 1"

ユーザーとパスワード

rootパスワードの変更とユーザーの作成をします。

# passwd
# useradd -m -G users,wheel -s /bin/bash john
# passwd john

locale

ja_JP.UTF-8など使いたいlocaleに設定します。

# nano -w /etc/locale.gen
# locale-gen

必要に応じて/etc/env.d/02localeの内容を修正してください。

LANG="ja_JP.UTF-8"

Bootloader

ここではliloを説明します。最近ではgrubを使う場合も多いかと思います。

# emerge lilo
# cp /etc/lilo.conf.example /etc/lilo.conf
# nano -w /etc/lilo.conf
# lilo

/etc/lilo.conf

lba32
boot = /dev/sda
menu-scheme=Wb
prompt
timeout=150
delay = 50
vga = normal

image = /boot/bzImage
root = /dev/sda3
label = Gentoo
read-only
append="acpi=on"

システムツール

SyslogやCronなどのシステムツールをインストールします。ここでインストールしなくても、後から必要になった段階でインストールすることもできます。

Syslog

# emerge syslog-ng
# rc-update add syslog-ng default

Cron

# emerge vixie-cron
# rc-update add vixie-cron default

File System Tools

# emerge reiserfsprogs

再起動

Gentoo Linuxのインストールは以上で完了です。
以下のコマンドで再起動できます。

# exit
# cd
# reboot

問題なくインストールできていれば次のような画面になると思います。

ログイン画面
ログイン画面

アプリケーション

必要なソフトウェアはそれぞれ異なると思いますが、いくつか紹介してみようと思います。Gentoo Linuxの場合、Portageでパッケージの依存関係を処理してくれますので、アプリケーションのインストールも簡単です。

X.Org

# emerge xorg-drivers xorg-server

Window Manager

軽いという噂を聞くLXDEです。

# emerge lxde-meta

$HOME/.xinitrcは以下のように設定します。

exec startlxde

startxでLXDEの画面が表示されるようになります。

LXDE
LXDE

ログインでLXDMを使う場合は以下のようにします。

# emerge lxdm
# nano -w /etc/conf.d/xdm
# rc-update add xdm default

/etc/conf.d/xdm

DISPLAYMANAGER="lxdm"

日本語入力

ibus-anthyを使って日本語入力の環境を作ってみます。

# emerge ibus-anthy kasumi

Preferences » IBus PreferencesからJapanese - Anthyを追加すると日本語入力ができるようになります。

Input Method - IBus Preferences
Input Method – IBus Preferences

日本語入力の有効・無効はEnable/Disableで設定できます。

General - IBus Preferences
General – IBus Preferences

ブラウザ

FirefoxやChromiumを使ってもいいですが、Midoriという軽量ブラウザをインストールしてみます。

# emerge midori
Midori
Midori

grubを使う場合についての補足(コメントへの返信)

ここではブートローダーにliloを使っていますが、grubを使う場合は次のようにしてセットアップできると思います。

BIOSを使っているPCの場合

# emerge --ask sys-boot/grub:2
# grub-install /dev/sda
# grub-mkconfig -o /boot/grub/grub.cfg

UEFIを使っているPCの場合

# echo 'GRUB_PLATFORMS="efi-64"' >> /etc/portage/make.conf
# emerge --ask sys-boot/grub:2
# grub-install --target=x86_64-efi --efi-directory=/boot
# grub-mkconfig -o /boot/grub/grub.cfg

それから、ご存知かもしれませんが、grubの設定がうまくいかない場合はGentoo Linuxのインストールを最初からやり直さないでも

  • CD/USBでブート
  • 必要なパーティションをマウント
  • chroot

だけ行って、grubの設定をやり直すことができます。うまくいかない場合はいろいろと試してみてください。

他の手段として、liloを使える環境の場合は、grubの代わりにliloを試してみるのも1つの手かなと思います。

参考書籍

はじめてのGentoo Linux
はじめてGentoo Linuxを使う人にも分かり易い解説書です。内容はWebブラウザやオフィソフトの利用方法からWebサーバー、DNSサーバーまで一通り網羅されています。

Linuxコマンドポケットリファレンス
よく使わわれるコマンドを収録したポケットリファレンスです。Gentoo Linuxに限った書籍ではありませんが、使い易いリファレンスかなと思います。

Gentoo Linux
Gentoo Linuxの公式サイト。ドキュメントもしっかりと整備されているので、Gentoo Linuxの利用者はまずここから探すことをおすすめします。

Gentoo Linux Mirrors
Minimal Installation CDのisoイメージやstage3のtarボールはこちらのミラーサイトからダウンロードできます。

Gentoo Linux Use Variable Descriptions
Useフラグの一覧表。/usr/portage/profiles/use.descと同じ内容だと思います。

Gentoo Linux Users Group Japan
ドキュメントの日本語訳などが公開されているサイトです。ただし、内容が若干古くなっている部分があるので公式サイトと比較しながら参考にした方がよいと思います。


注1 Gentoo Linuxは他の多くのディストリビューションと違い好きなLinuxでブートしてインストールを行うことができます。Gentoo LinuxのBoot CDの代わりにKnoppixを使うとX上でブラウザ画面を見ながらインストールを進められたりと便利です。

“Gentoo Linuxインストールメモ” への2件の返信

  1. この半月ほど、gentoo のインストールにかかりっきりなのですが、ようやく、コンパイルも終えて再起動までいくようになりました。が、残念にも、grub> ですぐ止まってしまいます。どこが間違っているのでしょうか。また、ここからの正常起動はできるものでしょうか。

コメントを残す

メールアドレスが公開されることはありません。