目的
Gentoo Linuxのハンドブックをもとにgentoo linuxを開発しました
ハンドブックでは分かりづらいため、他の方が作る際に少しでも助けになればいいとおもい記事にしました。
・Gentoo Linux構築の手順 パート1
・Gentoo Linux構築の手順 パート2
・Gentoo Linux構築の手順 パート3
・Gentoo Linux構築の手順 パート4
・Gentoo Linuxを構築する上での用語集
GPTとMBRのどちらにすべきか
fdisk -t dos /dev/sda
parted で現在のパーティションレイアウトを表示する
parted -a optimal /dev/sda
GPTラベルを適用する
下記コマンドをたたくとディスクすべてのデータが失われます。
僕はここで勘違いし、データだけが失わるとおもいましたが、WindowsというOS自体使えなくなりました。
WindowsというOSについては復元可能ですが、OS自体抹消されることをわかった上で下記コマンドをたたく必要があります。
parted -a optimal /dev/sda
パーティションを作成する
(parted -a optimal /dev/sdaをたたいたあとでなければ、下記についてはたたけません)
unit mib
GRUB2ブートローダが使用する2MBのパーティションを作成します
mkpart primary 1 3
name 1 grub
set 1 bios_grub on
print
同じやり方でブートパーティション(128MB)、スワップパーティション(8192MB=8GB)、残りのディスクすべてを占めるルートパーティションを作成します
mkpart primary 3 131
name 2 boot
mkpart primary 131 8323
name 3 swap
mkpart primary 8323 -1
name 4 rootfs
ハンドブックではスワップパーティションは512MBであるが、通常、スワップ領域と言うのは、メモリサイズ以上のサイズが必要です。
私のPCは4GBあるから余裕を持って、8GBにしています
set 2 boot on
print
printでパーテション構成に問題ないこと確認できたら下記コマンドでpartedを終了します。
quit
パーティションにファイルシステムを適用する
mkfs.vfat /dev/sda1
mkfs.vfat /dev/sda2
mkfs.ext4 /dev/sda3
mkfs.ext4 /dev/sda4
sda1をvfatにするのは
ハンドブックでは、一例としてsda1を「BIOS ブートパーティション」として使用する形が提示されていますが、
そのファイルシステムを何にするか、については明記されていないため
そこで、最も汎用的なvfat(FAT32)にしました
sda3がext4であるのはメインで使用する sda4 に合わせるためです
他のフォーマットを使用しても大丈夫らしいです
スワップパーティションを有効にする
mkswapはスワップパーティションを初期化するために使われるコマンドです:
mkswap /dev/sda3
スワップパーティションを有効化するには、swaponを使います
swapon /dev/sda3
上述のコマンドで、スワップを作成して有効化しましょう
ルートパーティションのマウント
mount /dev/sda4 /mnt/gentoo
ハンドブックではsda3をマウントしておりましたが、sda3をマウントしようとするとswapのためマウントできないと言った
エラーメッセージが英語で表示されるためここではsda4をマウントします。
stage tarballをインストールする
現在の日付と時刻が正しいか確認
date
stage tarball をダウンロードする
cd /mnt/gentoo
links https://www.gentoo.org/downloads/
下の方に行くと(下キー25回くらい)stage3というリンクがあるのでEnterで入る
バージョンの指示は無いので、
画面に表示されているstage3-amd64-20210224T214503Z.tar.xzを選択
stage tarball を展開する
tar xpvf stage3-*.tar.xz --xattrs-include=‘*.*’ --numeric-owner
tar.xzの部分についてはstage tarballをダウンロードした拡張子によって変更してください
コンパイルオプションを設定する
はじめに
nano -w gentoo/mnt/etc/portage/make.conf
CFLAGS と CXXFLAGS とMAKEOPTS
COMMON_FLAGS=“-march=native -O2 -pipe”
CFLAGS=“${COMMON_FLAGS}”
CXXFLAGS=“${COMMON_FLAGS}”
MAKEOPTS=“-j2"
※MAKEOPTS=“-j2”の2の値は自分のPCのCPU数(コア数)に応じて変えてください