NetBSD/amd64 6.1.4 のインストール


メモ

滅多にやらないことをしようとすると、毎度毎度検索したりなんやりして手間がかかるので、手順をメモっておこう。

※超手抜き手順なので、本当にすっからかんのマシンが一台だけある場合には通用しない。

まずはバックアップ。

といっても、/ パーティションのことではなくて、データ置き場として使っている場所が 2TB しか(?)なく、 とうとう 90% を超えてしまったので、未使用の 3TB のものに差し替える。

ファイルサーバーを止めて、フロントパネルを開けて、マウンターに 3TB の HDD を取り付けて起動して、 GPT で 4KB アラインメントとりつつ全領域を FFSv2 にして、ばばばっとコピーを数時間かけてとって、 ファイルサーバーを再度停止して 2TB と 3TB の HDD の場所をスワップして再起動して、作業は完了。

で、余った元の 2TB の HDD に / を構築しようとしている。

インストール先の準備

すでに HDD の中身は完コピしているので、以下の手順で初期化。(swap 領域として 4GB 確保する感じ)

使うコマンドは、 dkctl(8)gpt(8)installboot(8) の3つ

# gpt destroy wdX
# gpt create wdX
# gpt add -b 128 -s <よきに計算> wdX
# gpt add -b <よきに計算> -s 4194304 -t swap wdX
# gpt biosboot -i 1 wdX

※「よきに計算」とは、4KB アラインメントいちおう意識した感じで。

gpt add すると dkctl でこんな感じのことをしてください、みたいなのが表示されるので、それをする。

# dkctl wdX addwedge root 128 <よきに計算> ffs
# dkctl wdX addwedge swap <よきに計算> 4194304 swap

dkctl で、wdX の後ろはただの名前なのでそれらしいのを指定する。

うまく行けば dkX ができたよん、というメッセージが表示される。

この dkX が、 fstab(5) に書く際に使用されるやつです。

今は、動いているマシンに足したディスクでやってるので、ほんちゃん環境とはズレるけど、まぁ、そこは気にしない。

# newfs -O 2 /dev/rdkX
# mkdir -p /mnt/backup
# mount -o async /dev/dkX /mnt/backup

で、ばばばっとファイルシステムの初期化をして、適当な場所に mount(8) する。

async を指定しているののは、今から作るのはたとえ突然の電源断を食らって壊れてもいくらでもやり直せるし、 たぶん今でも速いだろうから。

インストールするデータの準備

配布ファイル一式をどっかから持ってくる必要があるのだけど、面倒なので ISO イメージをどこかからひっぱってきて作業する。 vnd(4) サイコー。

# wget <どこかのサイト>/<ISO イメージ>
# vnconfig vnd0 <ISO イメージ>
# mkdir -p /mnt/cdrom
# mount -t cd9660 /dev/vnd0a /mnt/cdrom

インストール

インストール作業も実際にはたいしてやることもないのだけど、こんな感じで。

# cd /mnt/cdrom/amd64/binary/sets
# tar -C /mnt/backup -pxvzf base.tgz
# tar -C /mnt/backup -pxvzf comp.tgz
... (etc.tgz とか kern-GENERIC.tgz とか)
# cd /mnt/cdrom
# cp ./usr/mdec/boot /mnt/backup/
# umount /mnt/backup
# ./usr/sbin/installboot /dev/rdkX ./usr/mdec/bootxx_ffsv2

で、だいたいの作業はこれで終了しているので、シャットダウンして、ディスクを入れ替えて起動する。

うまく行けば、もっかいマウントして、そこに以前の環境から設定ファイルをひっぱるなり、必要なパッケージを入れるなり、やっていく。

/dev 作らないの?という人もいるかもだが、そんなものはいまどき tmpfs で勝手にしてくれるので気にしない。

所要時間:1時間くらい(?)


戻る