LoginSignup
0
2

More than 5 years have passed since last update.

btrfs + uefi で archlinux をインストール

Last updated at Posted at 2016-12-27

archlinux は 自分が経験したlinux中で 一番はやいと思います。
小さな犬は 決して足は早くない(グレーハウンドの走るスピードは、時速60~70キロ)。
つまり軽量化と 高速化は別の概念で、 軽はF1では勝てません。

btrfs 単独 あるいは uefi 単独で archlinux をインストールすることは容易です。
この2つの組み合わせはネットをみても容易には見つからなかったので書きました

2TB以上のパーティションから起動し、16EiBのファイルサイズに 対応すべく
btrfs + uefi で archlinux のインストールを試みました。

できます。

まずテストとして USB ハードディスクにインストールし
全く同様の手段で sata ハードディスクにインストールできます。
btrfsによって snapper の archlinux版 pac-snap が使えますので、 pacman -Sy 某
の取り消しも簡単です。
でも 最近はpac-snap 使うとディスクをたくさん消費するのでpac-snap 入れてないです

では USB ハードディスクへのインストールを始めます。

まず確認ですが sata ハードディスクにある ntfs , vfat などの microsoft file system はのけとかないといけないとおもいます。
これがあると UEFIが USB ハードディスクでなく sata ハードディスクの方にいっちゃいます。
おそらく UEFIの仕様のためではないかと 自分は想像します。

他のぱそこんから archlinux にはいります。
つまり
ssh -l root 192.168.80.116

root@archiso ~ # fdisk -l /dev/sda <-----------ここです ntfs , vfat はないことの確認
Device Boot Start End Sectors Size Id Type
/dev/sda2 * 1050624 614402047 613351424 292.5G 83 Linux
/dev/sda3 614404094 874369023 259964930 124G 5 Extended
/dev/sda4 874371072 976773119 102402048 48.8G a6 OpenBSD
/dev/sda5 614404096 622792703 8388608 4G 82 Linux swap / Solaris
/dev/sda6 622794752 874369023 251574272 120G 83 Linux

root@archiso ~ # gdisk -l /dev/sdb
Number Start (sector) End (sector) Size Code Name
1 2048 1050623 512.0 MiB EF00 EFI System
2 1050624 5244927 2.0 GiB 8200 Linux swap
3 5244928 312581774 146.5 GiB 8300 Linux filesystem
といふうに USBハードディスクを調整します。

そして
root@archiso ~ # mkfs.fat -F32 /dev/sdb1
mkfs.fat 4.0 (2016-05-06)

mkswap /dev/sdb2

swapon /dev/sdb2

mkfs.btrfs -f -L arch /dev/sdb3

mount /dev/sdb3 /mnt

cd /mnt

btrfs subvolume create /mnt/ROOT

cd /

umount /mnt

mount -o defaults,compress=lzo,subvol=ROOT /dev/sdb3 /mnt

mkdir -p /mnt/boot

mount /dev/sdb1 /mnt/boot

nano /etc/pacman.d/mirrorlist

Server = http://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch
をミラーリストの一番上に書き加えます

pacstrap /mnt base base-devel btrfs-progs

genfstab -p /mnt >> /mnt/etc/fstab

and rewrite /mnt/etc/fstab <-------- sdb1,2,3 をつかうと状況によっては変なのにつながるといけないのでUUIDに変えます

/etc/fstab: static file system information

UUID=df5ce463-a907-40f8-9021-bb3f565c48d6 LABEL=arch

UUID=df5ce463-a907-40f8-9021-bb3f565c48d6 / btrfs rw,relatime,compress=lzo,space_cache,subvolid=257,subvol=/ROOT,subvol=ROOT 0 0

UUID=479C-992A LABEL=arch

UUID=479C-992A /boot vfat

rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro 0 2

UUID=a35045d7-d17b-401f-a14b-9ffb1ff37816 LABEL=arch

UUID=a35045d7-d17b-401f-a14b-9ffb1ff37816 none swap defaults 0 0

arch-chroot /mnt

echo 'arch-pc' > /etc/hostname

ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

nano /etc/locale.gen の

一番上に次を書き加える
en_US.UTF-8 UTF-8
ja_JP.UTF-8 UTF-8

そして

locale-gen

Generating locales...
en_US.UTF-8... done
ja_JP.UTF-8... done
Generation complete.
と発生させます

passwd

useradd -m -G wheel -s /bin/bash taro

passwd taro

pacman -S net-tools dnsutils openssh dialog wpa_supplicant

systemctl enable dhcpcd.service
systemctl enable sshd.service

< ここからが キモですので 省略せず書いてます >

pacman -S dosfstools efibootmgr grub

grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=arch_grub --recheck

Installing for x86_64-efi platform.
Installation finished. No error reported.

mkdir /boot/EFI/boot

cp /boot/EFI/arch_grub/grubx64.efi /boot/EFI/boot/bootx64.efi

[root@archiso /]# grub-mkconfig > kg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-linux
Found initrd image(s) in /boot: initramfs-linux.img
Found fallback initrd image(s) in /boot: initramfs-linux-fallback.img
done

[root@archiso /]# cp kg /boot/grub/grub.cfg
私の癖です。普通は -o ですよね。

[root@archiso /]# exit
exit
arch-chroot /mnt 8.03s user 1.75s system 1% cpu 8:52.70 total

root@archiso / # umount -R /mnt

root@archiso / # halt -p

これでできたます。
あとは http://hatahata50.blogspot.jp/2016/12/uefi-btrfs-usb.html 
をご覧ください。

sata ハードディスクにインストールした後の風景は
https://www.youtube.com/watch?v=3jYST5ziVos
です。

archlinuxはとにかく前へ前へ 最新へが基本姿勢ですので
安定サーバーとしては ちょっとかもしれませんが
個人的仕様ではとっても素敵なシステムです。

uname -ar(2016/12/27現在)

Linux arch-pc 4.8.13-1-ARCH #1 SMP PREEMPT Fri Dec 9 07:24:34 CET 2016 x86_64 GNU/Linux

pacman -Ss apache

extra/apache 2.4.25-1

なお このページの最新版は
http://hatahata50.blogspot.jp/2016/12/uefi-btrfs-arch.html
にあります。

0
2
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
0
2