Gentooのインストール : Retry Gentoo 2
  • Date:Monday 05 September 2016 (AM 07:25:34)
  • Updated:Monday 05 September 2016 (AM 07:28:49)
  • Tags:Gentoo
  • Category:Programming

幾つかLinuxをインストールした経験がないとGentooのインストールは非常に難しいので、前提として多少の知識がある方がインストールをすると思います。

ので、コマンドと変更したファイルの内容をずらずらと書いていきます。

色気が...ない...

インストールメディアは前回作成したUSBメモリを使います。

前回 => 下準備 & インストールUSB作成(Macで) : Retry Gentoo 1

※ Gentooのインストールは基本的にコマンド入力で行われるのでひたすらコマンド列挙です

※ プロンプトの表記はインストールしたのときの実際の表示です

0. ネットワーク確認

livecd ~ # ifconfig
livecd ~ # ping -c 3 www.gentoo.org

pingが返ってくれば問題なし。

1. ディスクの準備

livecd ~ # parted -a optimal /dev/sda
(parted) print
(parted) rm 1
(parted) rm 2
(parted) rm 3
(parted) rm 4
(parted) unit mib
(parted) mkpart primary 1 3
(parted) name 1 grub
(parted) set 1 bios_grub on
(parted) mkpart primary 3 131
(parted) name 2 boot
(parted) mkpart primary 131 1155
(parted) name 3 swap
(parted) mkpart primary 1155 -1
(parted) name 4 rootfs
(parted) print
Model: Virtio Block Device (virtblk)
Disk /dev/sda: 20480MiB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number   Start      End       Size     File system  Name   Flags
 1       1.00MiB    3.00MiB   2.00MiB               grub   bios_grub
 2       3.00MiB    131MiB    128MiB                boot
 3       131MiB     1155MiB   1024MiB               swap
 4       1155MiB    114472MiB 113317MiB             rootfs

(parted) quit
livecd ~ # mkfs.ext2 /dev/sda2
livecd ~ # mkfs.ext4 /dev/sda4
livecd ~ # mkswap /dev/sda3
livecd ~ # swapon /dev/sda3
livecd ~ # mount /dev/sda4 /mnt/gentoo
livecd ~ # mkdir /mnt/gentoo/boot
livecd ~ # mount /dev/sda2 /mnt/gentoo/boot

コマンドの結果はpartedのprintだけ記載しました。

2. Kernelの設定/ビルド

livecd ~ # cd /mnt/gentoo
livecd gentoo # links https://www.gentoo.org/downloads/mirrors/

linksコマンドでテキストブラウザが開きます。ここでstage3のtar.bz2をダウンロードします。目的のファイルを見つけたらdボタンでダウンロード、qでブラウザを終了します。

stage3-i686-20160830.tar.bz2を近いミラーからダウンロードしました。

livecd gentoo # tar xvjpf stage3-i686-20160830.tar.bz2 --xattrs
livecd gentoo # nano -w /mnt/gentoo/etc/portage/make.conf

/mnt/gentoo/etc/portage/make.confにはMAKEOPT="-j5"を追加しました。

livecd gentoo # cp -L /etc/resolv.conf /mnt/gentoo/etc/
livecd gentoo # mount -t proc proc /mnt/gentoo/proc
livecd gentoo # mount --rbind /sys /mnt/gentoo/sys
livecd gentoo # mount --rbind /dev /mnt/gentoo/dev
livecd gentoo # chroot /mnt/gentoo /bin/bash
livecd / # source /etc/profile
livecd / # export PS1="(chroot) $PS1"
(chroot) livecd / # emerge-webrsync
(chroot) livecd / # emerge --sync
(chroot) livecd / # eselect news read
(chroot) livecd / # eselect profile list
(chroot) livecd / # eselect profile set 3
(chroot) livecd / # emerge --ask --update --deep --newuse @world
(chroot) livecd / # nano -w /etc/portage/make.conf

USEフラグの設定は以下のようにしました。

USE="-a52 -bluetooth -cdda -cdr -dvd -dvdr -fortran wifi networkmanager"

"emerge --info | grep ^USE"コマンドでUSEフラグを確認後、"/usr/portage/profiles/use.desc"ファイルでUSEの説明を見ながら調整しました。

(chroot) livecd / # echo "Asia/Tokyo" > /etc/timezone
(chroot) livecd / # emerge --config sys-libs/timezone-data
(chroot) livecd / # nano -w /etc/locale.gen
en_US UTF-8 UTF-8
ja_JP UTF-8 UTF-8

の2つをコメントアウトしました。

(chroot) livecd / # locale-gen
(chroot) livecd / # eselect locale list
(chroot) livecd / # eselect locale set 3
(chroot) livecd / # env-update && source /etc/profile && export PS1="(chroot) $PS1"

en_US UTF-8 UTF-8に設定しました。

(chroot) livecd / # emerge --ask sys-kernel/gentoo-sources
(chroot) livecd / # cd /usr/src/linux
(chroot) livecd linux # make menuconfig

マニュアルコンフィギュレーションでやってみました。

64bitのチェックを外して、CPUにIntel ATOMを選択。ファイルシステムでext2を追加しました。

(chroot) livecd linux # make && make modules_install
(chroot) livecd linux # make install
(chroot) livecd linux # emerge --ask sys-kernel/linux-firmware
(chroot) livecd linux # nano -w /etc/fstab
BOOT => sda2
ROOT => sda4 (ext3をext4に)
SWAP => sda3

ネットワークを設定します。

(chroot) livecd linux # nano -w /etc/conf.d/hostname
(chroot) livecd linux # emerge --ask --noreplace net-misc/netifrc
(chroot) livecd linux # nano -w /etc/conf.d/net
(chroot) livecd linux # cd /etc/init.d
(chroot) livecd init.d # ln -s net.lo net.enp4s0
(chroot) livecd init.d # rc-update add net.enp4s0 default
(chroot) livecd init.d # nano -w /etc/hosts
(chroot) livecd init.d # emerge --ask net-misc/dhcpcd

NIC名などはハードによって異なると思いますので、則した名前で設定します。

(chroot) livecd init.d # passwd
(chroot) livecd init.d # emerge --ask app-admin/sysklogd
(chroot) livecd init.d # rc-update add sysklogd default

4. grubのインストール、そして再起動

(chroot) livecd init.d # emerge --ask sys-boot/grub:2
(chroot) livecd init.d # grub-install /dev/sda
(chroot) livecd init.d # grub-mkconfig -o /boot/grub/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.4.6-gentoo
done

Found linux imageとなっていればokです。

(chroot) livecd init.d # exit
livecd gentoo # cd
livecd ~ # umount -l /mnt/gentoo/dev{/shm,/pts,}
livecd ~ # umount /mnt/gentoo{/boot,/sys,/proc,}
livecd ~ # reboot

最後に

インストールできました!

しかし、起動時にエラーがッ...!!?

...

enp4s0が認識されていないようです、ifconfig -aしてもloしか出てこないのでネットワーク周りのドライバがないのでは...感があります。

マニュアルコンフィギュレーションに挑戦してみたのですが失敗していたようです。

もう一度カーネルコンパイルしなおせばいけるかもしれないので次回はKernelの修正と復旧をしてみようと思います。

しかしその他のエラーは見受けられなかったのでネットワークの問題が解決すればいけそうな気がするのを励みに頑張ります。

Show comments

Adsense

Share

  • このエントリーをはてなブックマークに追加

About

趣味でプログラミングをしています。仕事では致し方なくC言語のようなC++を書いています。

Recently

Tags

Pages