1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

GentooLinuxを公式HandBook片手にインストするだけの手順書

Last updated at Posted at 2025-07-09

概要

初投稿なので醜いところが多々あると思いますが、温かい目で見てください...
Gentoo公式ハンドブックにのっとり、これで起動まで行ける!!という手順をsshしてればコピーでできちゃう??ってやつです。
ところどころわかったいないので、間違ってるかもしれませんが、いちおう起動はできるはずです...

まずは起動

LiveCDでminimal起動してやること
SShを使えるようにする

shell
rc-service sshd start
passwd #rootのパっスワード
ip a

Windowsでssh接続

ssh root@<ip aのアドレス>

ディスクパーティション

筆者のシステムはUEFIなのでEFIパーティションetcを作る
※Nvmeディスクじゃないなら大体sdbかな?

shell
fdisk /dev/nvme0n1

わからなかったらこれでパーティションを見て確認してね

shell
lsblk

パーティション

1Gあればいいらしい(もっと少なくてもいいような...)

shell
#ディスク内がどうなっているか  
Command (m for help): p
#すでにパーティションがあったらpにgを打って削除
Command (m for help):n
Partition number (1-128, default 1): 1
First sector (2048-1953525134, default 2048):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-1953525134, default 1953523711): +1G

Created a new partition 1 of type 'Linux filesystem' and of size 1 GiB.
Partition #1 contains a vfat signature.
#これが出ないことも...
Do you want to remove the signature? [Y]es/[N]o: y

The signature will be removed by a write command.

#スワップ
Command (m for help): n
Partition number (2-128, default 2): 2
First sector (2099200-1953525134, default 2099200):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2099200-1953525134, default 1953523711): +4G

#ルート
#全部エンター
Command (m for help): n
Partition number (3-128, default 3): 3
First sector (10487808-1953525134, default 10487808):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (10487808-1953525134, default 1953523711):

#ファイルシステム??
#Biosだとここ違うよー
Command (m for help): t
Partition number (1-3, default 3): 1
Partition type or alias (type L to list all): 1

Changed type of partition 'Linux filesystem' to 'EFI System'.

Command (m for help): t
Partition number (1-3, default 3): 2
Partition type or alias (type L to list all): 19

Changed type of partition 'Linux filesystem' to 'Linux swap'.

Command (m for help): t
Partition number (1-3, default 3): 3
Partition type or alias (type L to list all): 23

Changed type of partition 'Linux filesystem' to 'Linux root (x86-64)'.
#書き込み
Command (m for help): w

ファイルシステムのフォーマット

shell
#bootパーティションのフォーマット
mkfs.vfat -F 32 /dev/nvme0n1p1;
#ルートパーティションのフォーマット
mkfs.xfs /dev/nvme0n1p3;
#スワップ領域
mkswap /dev/nvme0n1p2;
swapon /dev/nvme0n1p2;

#マウントポイントの作成
mkdir --parents /mnt/gentoo;
mount /dev/nvme0n1p3 /mnt/gentoo;
#efiだからいるらしい
mkdir --parents /mnt/gentoo/efi;
#マウントポイントに移動
cd /mnt/gentoo;
#時計合わせる
chronyd -q;

Stageファイルのダウンロード

https://www.gentoo.org/downloads/mirrors
linksでこれからでも追えるよ↑
https://ftp.jaist.ac.jp/pub/Linux/Gentoo/releases/amd64/autobuilds/
ここのやつでOpenRCかSystemdどっちか好きなほうをDL
筆者はOpenRCにします

shell
wget https://ftp.jaist.ac.jp/pub/Linux/Gentoo/releases/amd64/autobuilds/current-stage3-amd64-desktop-openrc/stage3-amd64-desktop-openrc-20250706T150904Z.tar.xz;
#解凍
tar xpvf stage3-*.tar.xz --xattrs-include='*.*' --numeric-owner -C /mnt/gentoo;

そしたらコンパイルオプションを設定

shell
nano /mnt/gentoo/etc/portage/make.conf

筆者はR7 7700X とRTX3060を使っているので...
あとコンパイルは早くしたいので...

make.conf
COMMON_FLAGS="-march=znver4 -O2 -pipe"
CFLAGS="${COMMON_FLAGS}"
CXXFLAGS="${COMMON_FLAGS}"
FCFLAGS="${COMMON_FLAGS}"
FFLAGS="${COMMON_FLAGS}"
MAKEOPTS="-j17"
VIDEO_CARDS="nvidia"
EMERGE_DEFAULT_OPTS="--jobs=16 --load-average=16"

LC_MESSAGES=C.utf8

Chroot してカーネルコンパイルまで

shell
#DNSコピーらしい
cp --dereference /etc/resolv.conf /mnt/gentoo/etc/

システムファイルのマウントかな??

shell
#いろいろマウント
mount --types proc /proc /mnt/gentoo/proc;
mount --rbind /sys /mnt/gentoo/sys;
mount --make-rslave /mnt/gentoo/sys;
mount --rbind /dev /mnt/gentoo/dev;
mount --make-rslave /mnt/gentoo/dev;

#chrootする
chroot /mnt/gentoo /bin/bash;
source /etc/profile;
export PS1="(chroot) ${PS1}";

#Bootマウント
#EFIの人は
mount /dev/nvme0n1p1 /efi;
#Biosの人は
mount /dev/nvme0n1p1 /boot

地獄のパッケージ更新

shell
emerge-webrsync;
#ミラーの最適化をするためのやつ
emerge --ask --verbose --oneshot app-portage/mirrorselect;
#最適化
mirrorselect -i -o >> /etc/portage/make.conf;

image.png
とりあえずはやそうなのを選択

sheell
#リポジトリの同期かな??
emerge --sync;
#ニュースを読む
eselect news read;
#Profileの選択 今回はDesktop-plasmaで
eselect profile list | less;
#使いたい環境を選ぶ
eselect profile set 27;

emerge系

shell
#emergeのCPUの命令最適化
emerge --ask --oneshot app-portage/cpuid2cpuflags;
echo "*/* $(cpuid2cpuflags)" > /etc/portage/package.use/00cpu-flags;

#Nvidiaのカードを使うようにする
echo "*/* VIDEO_CARDS: nvidia" >> /etc/portage/package.use/00video_cards;
#AcceptLicenceの有効か
echo 'ACCEPT_LICENSE="-* @FREE @BINARY-REDISTRIBUTABLE"' >> /etc/portage/make.conf
#package.licenseを作成
mkdir /etc/portage/package.license;
echo "app-arch/unrar unRAR 
sys-kernel/linux-firmware linux-fw-redistributable" >> etc/portage/package.license/kernel;
##IntelCPUならこれもさっきのに追記
echo "sys-firmware/intel-microcode intel-ucode" >> /etc/portage/package.license/kernel;

##くそ長パッケージ更新 apt upgradeみたいなやつ
emerge -avuDN @world;
#使っていないパッケージの削除
emerge --ask --depclean;

ローケールの設定

shell
#ローカルタイム能勢地位
ln -sf ../usr/share/zoneinfo/Asia/Tokyo /etc/localtime;
#ローケールのせってい  取り合えず英語と日本語解除
nano /etc/locale.gen;
en_US.UTF-8 UTF-8
ja_JP.UTF-8 UTF-8

ローケールの作成

shell
#ロ-カルの作成
locale-gen;
#一覧表示
eselect locale list;
#日本語ローケールの有効か
eselect locale set 5;
#ソースの更新
env-update && source /etc/profile && export PS1="(chroot) ${PS1}";

※このときsshしてないと文字化けするので英語がいいかも

カーネルのコンパイル

shell
#ファームウェアのインストール
emerge --ask sys-kernel/linux-firmware;
#10世代以降IntelCPUだとこれもいるらしい(音関係のドライバかな)
emerge --ask sys-firmware/sof-firmware;
#ほんとはカーネルのinitramのため??
echo "sys-kernel/installkernel grub dracut" >> /etc/portage/package.use/installkernell;
emerge --ask sys-kernel/installkernel;

#とりあえず動くものを先に作ってあとから最適かってことで...
emerge --ask sys-kernel/gentoo-kernel;

emerge -av sys-kernel/gentoo-sources
emerge -av genkernel;
#kernelソースの設定
eselect kernel list;
eselect kernel set 1;
cd /usr/src/linux;
genkernel all;

genkernelはハンドブックだと非推奨になっていますが、最初はこれで無難なのを生成したほうがいいと思います(n敗)
そこからmake menuconfigで設定を詰めたりしていったほうが絶対いい

fstab設定

shell
#これでディスクIDを見ることができる
blkid;
#これで設定
nano /etc/fstab;
fstab

#LABEL=boot             /boot           ext4            defaults        1 2
#UUID=58e72203-57d1-4497-81ad-97655bd56494              /               xfs             defaults                0 1
#LABEL=swap             none            swap            sw              0 0
#/dev/cdrom             /mnt/cdrom      auto            noauto,ro       0 0
/dev/nvme0n1p1   /efi        vfat    umask=0077,tz=UTC     0 2
/dev/nvme0n1p2   none         swap    sw                   0 0
/dev/nvme0n1p3   /            xfs    defaults,noatime              0 1

こんな感じに設定

起動後のせってい

shell
#ルートユーザのパっスの設定
passwd;
#chronyをインストール
emerge --ask net-misc/chrony;
emerge -a sudo;
#ssh,chronydを起動後に自動起動するように登録
rc-update add sshd default;
rc-update add chronyd default;

キー配置

keymaps
#キーマップ
nano /etc/conf.d/keymaps;
#以下の値にする(英字配列の人はそのままでもいいような..)
keymap="jp106"

ユーザーの設定

shell
useradd -m -G wheel,video,audio -s /bin/bash cis;
passwd cis;
#wheelのsudo権限の有効か
visudo ;
- #%wheel ALL=(ALL:ALL) ALL
+ %wheel ALL=(ALL:ALL) ALL

GRUBのインストール

shell
# grubのインストール
emerge --ask --verbose sys-boot/grub;
#UEFIではこれ
grub-install --efi-directory=/efi;
#BIOSはこれ
grub-install /dev/sdal;
#これが出たらオッケー
Installing for x86_64-efi platform.
Installation finished. No error reported.
#Grubの設定ファイル生成
grub-mkconfig -o /boot/grub/grub.cfg


Generating grub configuration file ...
Linux イメージを見つけました: /boot/vmlinuz-6.12.31-gentoo
Found initrd image: /boot/amd-uc.img /boot/initramfs-6.12.31-gentoo.img
Warning: os-prober will not be executed to detect other bootable partitions.
Systems on them will not be added to the GRUB boot configuration.
Check GRUB_DISABLE_OS_PROBER documentation entry.
Adding boot menu entry for UEFI Firmware Settings ...
完了
#こんな感じで見つけてそうならおっけー

ここまでで起動はするはず...再起動!!

まとめ

今回初めての投稿でした。説明があまりなく、自分もまだlinux初心者なのでわかっていないとこがあったりで、みにくかったですが、最後までありがとうございました。

次、KDEと日本語環境を整えるかな...

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?