NetBSD インストールメモ
1年前ぐらいのメモ。結構色々書いてるのに下書きのままだったので公開してみる。
最近 Micro SD に NetBSD の仮想マシンを放り込んで持ち歩くってことをしてて、環境構築で何かとつまづいたのでメモ。
NetBSD のインストール
Full Installation を選択。
最初は Custom Instllation で最小限の構成となるようにしてたんですが、
と、僕の知識じゃ何かと詰んでしまう感じなので、おとなしく身の丈にあった Full Installation を選ぶことにしました。
ネットワークの設定
仮想化には VirtualBox を使ってます。
ネットワークは様々な構成を選択できるんですが、今回はホスト OS とのやり取りはホストオンリーネットワーク、外部とのやり取りは NAT を使うことにしました。
まずはホストオンリー。こいつは固定 IP にします。
/etc/ifconfig.wm0 (wm0 はインターフェース名。環境によって変わるかも) を以下の内容で作成します。
192.168.56.201 netmask 255.255.255.0 media autoselect
続いて NAT。こいつは DHCP にしました。
/etc/rc.conf に以下の内容を追記します。
dhclient=YES dhclient_flags="wm1"
その他 rc.conf の設定
/etc/rc.conf に以下を追加。
ホストネームの設定、SSH サーバーの有効化、BIOS 時刻を現地時間として使用するように設定してます。
hostname=netbsd sshd=YES rtclocaltime=YES
pkgsrc のインストール
NetBSD の標準パッケージ管理ツール。
FTP からダウンロードして、/usr 以下に展開します。
# ftp ftp://ftp.NetBSD.org/pub/pkgsrc/current/pkgsrc.tar.gz # tar -xzf pkgsrc.tar.gz -C /usr
インストールするパッケージのディレクトリ (/usr/pkgsrc/{カテゴリ}/{パッケージ} みたいな感じ) に移動して、make install するってのが基本的な使い方のようです。
インストールしたパッケージは /usr/pkg 以下に設置されます。
各種パッケージのインストール
bash
ログインシェルは bash がいいのでインストール。
zsh はいつか試す。いつか。
# cd /usr/pkgsrc/shells/bash # make install && make clean clean-depends
sudo
セキュリティっていうより、単純に使用感に慣れちゃってるのでインストール。
# cd /usr/pkgsrc/security/sudo # make install && make clean clean-depends
wheel グループのユーザーに対して、sudo の実行を許可するよう設定します。
visudo で sudoers ファイルの以下の行をコメントアウトします。
%wheel ALL=(ALL) ALL
emacs
GUI は不要なので emacs じゃなくて emacs-nox11 っていうパッケージにしました。
# cd /usr/pkgsrc/editors/emacs-nox11 # make install && make clean clean-depends
git
デフォルトだと GUI のツールもインストールされるらしい。
不要であれば、事前に /etc/mk.conf (なければ作成) に以下の行を追加しとく。
PKG_OPTIONS.scmgit=-scmgit-gui
あとは普通にインストール。
# cd /usr/pkgsrc/devel/scmgit # make install && make clean clean-depends
mozilla-rootcerts
git で https のリポジトリをクローンするときとかにエラーになっちゃうので、ルート証明書をインストールしとく。
# cd /usr/pkgsrc/security/mozilla-rootcerts # make install && make clean clean-depends
インストールしたルート証明書を OpenSSL のディレクトリに展開。
# cd /etc/openssl/certs # mozilla-rootcerts extract # mozilla-rootcerts rehash
sun-jdk6
Java のプログラムを書くことは滅多にないけど、Closure Compiler とかは使うので。
事前に Oracle のサイトから以下のファイルをダウンロードし、/usr/pkgsrc/distfiles に設置しておきます。
加えて、/etc/mk.conf に以下を追記します。
ACCEPTABLE_LICENSES+= sun-jdk6-license ACCEPTABLE_LICENSES+= sun-jre6-license
あとは普通にインストール。
# cd /usr/pkgsrc/lang/sun-jdk6 # make install && make clean clean-depends
ユーザーの追加と設定
ごくプライベートな環境とはいえ、root しかいないってのは精神衛生上よくないので。
# groupadd tkmsaoi # useradd -g tkmsaoi -G wheel -s /usr/pkg/bin/bash -m tkmsaoi # passwd tkmsaoi
dotfiles
$ git clone https://github.com/tkmsaoi/dotfiles.git $ cd dotfiles $ ./install.sh
rbenv
ずっと rvm を使ってたんですが、試してみました。
rvm も優れたツールですが、rbenv で必要十分ですね。
その他
普通に使ってる分には気にならないんですが、環境構築の時はさすがに Micro SD の書き込み速度が気になります。
環境構築を終えるまではローカルディスクでやったほうがいいかもしれません。
構築したことに満足して、実はそんなに使ってない。あるある。
1年後。その Micro SD の所在は不明です。