2018年06月24日(Sun) 火山ガスもくもく [同日]
● [netbsd] NetBSD 8.0を2番目のハードディスクにインストールする
このホストでtDiaryの最新版を動かせるようにしたいのだけれど、bundle installでpthread関連のCプログラムがコンパイルできないので、手元でFreeshellと同じNetBSD 8.0 RC1を用意していろいろ試してみることにしました。結局問題は解決できなかったのだけど。
インストール先はDellの古いデスクトップです。BIOSのcopyrightは2010年から、ハードディスクはSATA接続で1本目にはUbuntu入っていてBIOSからgrub2が起動します。ここでは2本目のハードディスクにNetBSDをインストールします。USBメモリはブート時にはSCSIディスクとしてエミュレートされるみたい。グラフィックカードはNvidiaのものです。
インストール
$ sudo dd if=NetBSD-8.0_RC1-amd64-install.img of=/dev/sdb bs=2M
したUSBメモリを接続して、BIOSから選択して起動する。
インストーライメージのブートメニューが表示されたら
4. Drop to boot promptから
> userconf disable nouveau > boot
する。(nouveauをdisableしないとドライバが初期化できない旨表示してOSが停止します。)これで、
NetBSD/amd64 (Amnesiac) (console) login:
まで進むのでパスワードなしでrootでログインして、
$ /install.sh
を起動。ざくざく進めてくと
Status: Command failed Command: /usr/sbin/installboot -o console=pc,speed=9600 /dev/rsd1a /isr/mdec/bootxx_ffsv2 installboot: Old BPB too big, use -f (may invalidate filesystem) installboot: Set bootstrap operation failed
と表示されるので、再起動して4. Drop to boot promptから、-fオプションを追加して表示されたコマンド実行してから、インストーラを実行すると、インストールが進む。
設定
grub
Ubuntu側でgrubのメニューの設定をした
/etc/grub.d/40_customに下記を追加して、sudo update-grub2した。
Status: Command failed menuentry "NetBSD" { insmod chain set root=(hd1,msdos1) drivemap -s hd0, hd1 chainloader +1 }
named
ネームサーバを指定しないでホスト名がひけないのはnamedが動いてないからだった。そんなの居るのか!
/etc/rc.confに下記の行を追加した
named=YES
管理用ユーザー
# useradd -m -G wheel system # passwd system
bash
~system/.shshに下記を追加
PKG_PATH="http://ftp.NetBSD.org/pub/pkgsrc/packages/NetBSD/amd64/8.0/All" export PKG_PATH
パッケージをインストール
$ su # pkg_add -v bash
常用ユーザー
# useradd -m -s /usr/pkg/bin/bash zunda # passwd system
Ruby
http://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc/README-all.htmlにパッケージのリストがある。このホストと同じバージョンを入れるべきか。
faeroes:~> ruby23 --version ruby 2.3.6p384 (2017-12-14 revision 61254) [x86_64-netbsd]
# pkg_add -v ruby23-2.3.6 pkg_add: no pkg found for 'ruby23-2.3.6', sorry. pkg_add: 1 package addition failed
むーん。なかった。
# pkg_add -v ruby23-2.3.7 $ ruby23 --version ruby 2.3.7p456 (2018-03-28 revision 63024) [x86_64-netbsd]
Git
# pkg_add -v git
tDiaryのための環境
bundler
$ gem23 install --user-install bundler
tDiary
$ ssh-keygen
して公開鍵をGitHubに追加した。
$ mkdir -p ~/src/github.com/zunda $ cd ~/src/github.com/zunda $ git clone git@github.com:zunda/tdiary-core.git $ cd tdiary-core/ $ bundle install --path=vendor/bundle
これですんなりbundle installできるのでした。
最近のツッコまれどころ