LoginSignup
1
2

More than 5 years have passed since last update.

続・ArchLinux インストール覚書

Posted at

ArchLinux インストール覚書、いよいよ着手。本業がブラック化の様相を呈してきて時間が無く、作業がブツ切りになるので、脳内記憶の代わりにメモ記事を量産。そういうワケで自分の為の覚書です。

下記のコマンドとその結果の引用は、すべて画面表示を見ながらの手打ち。誤記が混じる可能性があるので、そこんとこヨロシク。

…で、やってはみたけど、結果は失敗。とりあえずやった事の記録という事で後悔公開しておく。

前準備など

参考文献

インストール用のisoイメージは、昨年ダウンロード(2016.12.01.版)したものをDVDに焼いた。USBメモリじゃないのは、たまたま手元に無かったから。いや買ってきたって昼飯1食分にもならないんだけども。

作業

はじめの一歩

BIOSの設定はテキトーに。

起動時に Ctrl+I を押して、HDDを RAID-1 として設定する。画面の指示に従うだけなので、詳細は省略…

…なのだが。

このマシンのRAIDコントローラはLinuxからは使えないらしい。

  • 状況証拠:

    • LinuxからRAIDコントローラが見えなければハードウェアRAIDは不可。
    • LinuxにはソフトウェアRAIDを構成する標準的な方法が整備されており、スピードではハードウェア構成が勝るものの、機能的には圧倒的にソフトウェアRAIDに軍配が上がる。
    • 元々LinuxユーザはWindowsに比べて圧倒的に少数派であり、その上ソフトウェアRAIDが中心の為、RAIDコントローラメーカがLinux用ドライバを用意する旨味は無い。
    • そういった理由から、Linux対応RAIDコントローラは数万円以上するのが普通。Windows向けと比べると一桁近く違うとの事。→マシン組込コントローラは環境が異なるとは言え、経済的な事情は似たり寄ったりと推測できる。
  • 直接証拠:

# cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
  Vendor: ATA      Model: ST3320620AS      Rev: K
  Type:   Direct-Access                    ANSI  SCSI revision: 05
Host: scsi1 Channel: 00 Id: 00 Lun: 00
  Vendor: ATA      Model: WDC WD3200AAKS-0 Rev: 3A01
  Type:   Direct-Access                    ANSI  SCSI revision: 05
Host: scsi5 Channel: 00 Id: 00 Lun: 00
  Vendor: TSSTcorp Model: DVD+-RW RS-H653F Rev: D300
  Type:   CD-ROM

インストールの準備

ArchWiki - インストールガイド を読んで、この通りに操作。

当たり前だけど、しばらくはインストールメディアを抜かずにそのままにしておく。

キーボード

# loadkeys jp106

コンソールフォント

コンソールフォントはそのまま変更せず。日本語が表示されればそれなりに便利そうだけども、当面は必要無いと判断。

起動モードの確認

# ls /sys/firmware
acpi dmi memmap

ま、古いマシンだからねぇ。わかってた事だけど、UEFIではなくてBIOS起動だった。

パーティション、パーティションのフォーマット

…の前に、ドライブのフォーマットを決める。今回はドライブ丸ごと Btrfs にしたい。

その場合の注意点。ArchWiki - Btrfs#パーティショニングによるとスワップ領域を作成できないらしい。

しかしArchWiki - パーティショニング の[パーティションの大きさはどうすればいいですか?]には下記の記述あり。これを信じる事にする。

大容量のメモリ(1024MB 以上)を積んでいるときは、スワップパーティションは小さく、または作らなくてもかまわないでしょう。

ちなみに Btrfs の読み方だが、SAOファンとしては「ビーターエフエス」と読みたい所。ビーター… うむ、良い響きだ。

という訳で Btrfs によるフォーマット。コマンドの日本語ヘルプはOracle® Linux管理者ソリューション・ガイドfor リリース6 - 5.2 Btrfsファイル・システムの作成

# ls /dev/sd*
/dev/sda  /dev/sdb
# mkfs.btrfs -L btrfs_raid1 -d raid1 /dev/sda /dev/sdb
btrfs-progs v4.8.2
See http://btrfs.wiki.kernel.org for more information.

/dev/sda appears to contain an existing filesystem (zfs_member).
ERROR: use the -f option to force overwrite of /dev/sda
# mkfs.btrfs -f -L btrfs_raid1 -d raid1 /dev/sda /dev/sdb
btrfs-progs v4.8.2
See http://btrfs.wiki.kernel.org for more information.

Label:              btrfs_raid1
UUID:
Node size:          16384
Sector size:        4096
Filesystem size:    596.18GiB
Block group profiles:
  Data:             RAID1             1.00GiB
  Metadata:         RAID1             1.00GiB
  System:           RAID1             8.00MiB
SSD detected:       no
Incompat features:  extref, skinny-metadata
Number of devices:  2
Devices:
   ID        SIZE  PATH
    1   298.09GiB  /dev/sda
    2   298.09GiB  /dev/sdb

元々 FreeNAS に使ってたHDDが混じってたのでちょっとエラーメッセージが出たが、画面表示の通りに -f オプションを付けて問題無し。一つだけ気になるのは Filesystem size。約300GBのHDDが2台なのだが、この表示ではミラーリングしてない容量になっているように見える。不安だが、とりあえず先へ進む。

パーティションのマウント、ブートローダー

この辺から先はArchWiki - インストールガイドを鵜呑みにしながらというワケにはいかない。ちょっと脇道に逸れる模様。

また、一応、ブートローダーはこの段階でインストールしてみた。

参考文献:

# mount /dev/sda /mnt
# grub-install --recheck --target=i386-pc --root-directory=/mnt /dev/sda
Installing for i386-pc platform.
Installation finished. No error reported.

ここからはまたArchWiki - インストールガイドの手順に戻る。

インターネットへの接続

# ping archlinuxjp.org
64 bytes from tk2-235-27344.vs.sakura.ne.jp (160.16.119.98): icmp_seq=1 ttl=53 time=11.3 ms
〈以下略〉

システムクロックの更新

# timedatectl set-ntp true
# timedatectl status
      Local time: Sun 2017-01-15 12:31:24 UTC
  Universal time: Sun 2017-01-15 12:31:24 UTC
        RTC time: Sun 2017-01-15 12:31:24
       Time zone: UTC (UTC, +0000)
 Network time on: yes
NTP synchronized: yes
 RTC in local TZ: no

本当はntpサーバは自分で設定したい。日本なら ntp.nict.jp が鉄板だと思ってる。特殊事情が無ければこの一択。

が、その辺の調整は後回しにしよう。

インストール

ミラーの選択

日本なら Japan をファイル先頭に持ってくる。

# cd /etc/pacman.d
# mv mirrorlist mirrorlist.org
# cp mirrorlist.org mirrorlist
# vi mirrorlist
〈編集コマンド省略〉
# diff -U0 mirrorlist.org mirrorlist
--- mirrorlist.org     2016-12-01 16:52:03.000000000 +0000
+++ mirrorlist 2017-01-15 12:37:45.778738064 +0000
@@ -6,0 +7,2 @@
+## Score: 2.0, Japan
+Server = http://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch
@@ -213,2 +214,0 @@
-## Score: 2.0, Japan
-Server = http://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch

ベースシステムのインストール

# cd
# pwd
/root
# pacstrap /mnt base btrfs-progs
〈表示省略〉

システムの設定

fstab、chroot、タイムゾーン、ロケール

# genfstab -U /mnt >> /mnt/etc/fstab
# cat /mnt/etc/fstab
#
# /etc/fstab: static file system information
#
# <file system> <dir>   <type>  <options>      <dump>  <pass>
# /dev/sda LABEL=btrfs_raid1
UUID=〈省略〉                                   /                btrfs   rw,relatime,space_cache,subvolid=5,subvol=/    0 0

# arch-chroot /mnt
# rm /etc/localtime
# ln -s /usr/share/zoneinfo/Japan /etc/localtime
# hwclock --systohc --utc
# mv /etc/locale.gen /etc/locale.gen.org
# cp /etc/locale.gen.org /etc/locale.gen
# vi /etc/locale.gen
〈編集内容省略〉
# diff -U0 /etc/locale.gen.org /etc/locale.gen
--- /etc/locale.gen.org 2016-08-06 20:17:48.000000000 +0900
+++ /etc/locale.gen     2017-01-16 00:09:36.865540733 +0900
@@ -291,2 +291,2 @@
-#ja_JP.EUC-JP EUC-JP
-#ja_JP.UTF-8 UTF-8
+ja_JP.EUC-JP EUC-JP
+ja_JP.UTF-8 UTF-8
# rm /etc/locale.gen.org
# echo KEYMAP=jp106 >/etc/vconsole.conf
# echo 〈例えば taro〉 >/etc/hostname
# mv /etc/hosts /etc/hosts.org
# cp /etc/hosts.org /etc/hosts
# vi /etc/hosts
〈編集内容省略〉
# diff -U0 /etc/hosts.org /etc/hosts
--- /etc/hosts.org      2016-12-06 08:43:55.000000000 +0900
+++ /etc/hosts  2017-01-16 00:23:09:598776706 +0900
@@ -7,0 +8 @@
+〈家庭内で割り当てるIPアドレス〉  〈例えば taro.example.com〉 〈例えば taro〉

Initramfs

参考文献:

# mv /etc/mkinitcpio.conf /etc/mkinitcpio.conf.org
# cp /etc/mkinitcpio.conf.org /etc/mkinitcpio.conf
# vi /etc/mkinitcpio.conf
〈編集内容省略〉
# diff -U0 /etc/mkinitcpio.conf.org /etc/mkinitcpio.conf
--- /etc/mkinitcpio.conf.org    2016-11-28 05:08:44.000000000 +0900
+++ /etc/mkinitcpio.conf        2017-01-16 00:45:24.614998751 +0900
@@ -52 +52 @@
-HOOKS="base udev autodetect modconf block filesystems keyboard fsck"
+HOOKS="base udev autodetect modconf block filesystems keyboard fsck btrfs"
# rm /etc/mkinitcpio.conf.org
# mkinitcpio -p linux
〈表示省略〉
但し、途中で警告が出た:
==> WARNING: Possibly missing firmware for module: wd719x
==> WARNING: Possibly missing firmware for module: aic94xx
良くわからないが、ひとまず無視

Root パスワード

# passwd
〈root用パスワード〉

再起動

# exit
exit
arch-chroot /mnt  9.43s user 2.16s system 0% cpu 48:24.70 total
# umount -R /mnt

ここでインストール用メディアを取り出す。

# reboot

結果は失敗。

                          GNU GRUB  version 2.02~beta3

   Minimal BASH-like line editing is supported. For the first word, TAB
   lists possible command completions. Anywhere else TAB lists possible
   device or file completions.


grub>

さて困った。でもいい線は行ってる気がする。grubのインストールを見直せば何とかなりそう。と、信じたい。

1
2
4

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
2