Hatena::ブログ(Diary)

FreeBSD/footnote

2018-05-07

zfs rootでsingle user mode

zfs root環境ででsingle user modeを利用する場合、

# zfs mount -a
# zfs set readonly=off rpool

のあと作業する。

# shutdown -r now

リブートする。

2016-11-20

SSH public key login problem

何が起こったか全くわからないが、自分向けのメモ。

これまで、

~/.ssh/config

Host github
  HostName github.com
  IdentityFile ~/.ssh/id_rsa_github
  User git

~/Documents/freebsdPostInstall/.git/config

...
[remote "origin"]
        url = git@github.com:username/freebsdPostInstall.git
...

のように記入していて問題なく利用できていた。はず。にも関わらず、最近これではpushできなくなった。

% cd ~/Documents/freebsdPostInstall/
% git push origin master
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

~/.ssh/configのHost行が間違っており、この場合は、

% ssh -T git@github

としてloginできる。しかし、.git/configではgit@github.comでloginしようとしてだめと言われる。

なので、

~/.ssh/config

Host github.com
...

と変えてpushできるようになった。

~/Documents/freebsdPostInstall/.git/config

...
[remote "origin"]
        url = git@github:username/freebsdPostInstall.git
...

と変えてもloginできる。

しかし、なぜ以前はloginできてpushできていたのだろう。何も変えていないのに。単純に考えるとsshの振る舞いが変わったように思うが、この間バージョンアップはしてないはずなんだけど。もしかして忘れてるだけか。

2016-03-06

Intel I219V driver for FreeBSD

家のサーバーのリプレース作業。

購入したマザーボードASUS H170M-PLUSのオンボードネットワークIntel I219Vで、FreeBSDのGENERICカーネルでは認識しない。Intelはこのチップのためのdriverを公開している。 (em-7.6.1.tar.gz)

基本的にはこのtar ballを展開してmakeすればよい。make loadでコンパイルして一時的にドライバーを組み込む。make installでインストールするので、/boot/loader.confに

if_em_load="YES"

と書いておけばブート時に自動的に読み込む。

ただし、GENERICカーネルにはemドライバーが存在するので、そのままmake loadするとロードに失敗する。したがって、GENERICWOEMというコンフィグファイルでemとigbを外したカーネルを作り、インストールして、その上でmake installした。igbは特に意味ないが、外しておいた。

もしかしたら、GENERICカーネルに無理やりmake installすれば置き換わるのかもしれないが(それがモジュール化ということの意味であるような気もする)、気持ち悪いのでとりあえずGENERICWOEMを作りなおした。

2016-02-03

Wi-Fi設定

最近、あまりにも無線LANが遅くなっていたので設定を見なおした。

BUFFALO無線LANアクセスポイントを使用しているが、11n/g/bの無線チャンネルを自動にしていると1チャンネルに設定される。このチャンネルは周辺の多数の機器が設定してるようで、干渉が発生しているようだ。とりあえず7チャンネルに固定すると、少し通信環境が改善した。

そもそも、このアクセスポイントは5GHzに対応しているのに、家の機器は2.4GHzにしか接続していない。設定を見直すと、11n/aと11n/g/bの両方が同じSSID(仮にHOMEとしよう)を設定しているのが問題だった。とりあえず、11n/aのSSIDをHOME-5Gとして設定しなおした。

多くの機器をHOME-5Gに接続すると、通信環境は劇的に改善した。ただ、11n/aの無線チャンネルを自動にしておくと56チャンネルとなり、NexusタブレットがHOME-5Gに接続できない。そこで48チャンネルに設定することで、NexusもHOME-5Gに接続できるようになった。

2015-09-23

zfs setup memo

zfsのルートファイルシステムインストールし、/homeを5台のHDDにraidz2のファイルシステムを作成する手順のメモ。

参考: bsdinstall でも自由なパーティションレイアウトで Root on ZFS

bsdinstallのpartitioningにてShellを選択して。

# gpart create -s gpt ada0
# gpart add -a 4k -s 512k -t freebsd-boot -l boot0 ada0
# gpart add -a 4k -s 60g -t freebsd-zfs -l sys0 ada0
# gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 ada0
# gpart set -a active ada0

# gnop create -S 4096 ada0p2
# zpool create -o altroot=/mnt -m none -f rpool ada0p2.nop
# zfs set atime=off rpool
# zfs set checksum=fletcher4 rpool
# zfs create -V 8g -o checksum=off rpool/swap0

# zfs create -o mountpoint=none rpool/ROOT
# zfs create -o mountpoint=/ rpool/ROOT/default
# zfs create -o mountpoint=/tmp -o setuid=off rpool/tmp
# zfs create -o mountpoint=/usr rpool/usr
# zfs create -o compression=lz4 -o setuid=off rpool/usr/ports
# zfs create -o compression=lz4 -o exec=off -o setuid=off rpool/usr/src
# zfs create -o mountpoint=/var rpool/var
# zfs create -o compression=lz4 -o exec=off -o setuid=off rpool/var/crash
# zfs create -o compression=lz4 -o exec=off -o setuid=off rpool/var/log
# zfs create -o compression=lz4 -o atime=on rpool/var/mail
# zfs create -o compression=lz4 -o setuid=off rpool/var/tmp

# zpool export rpool
# gnop destroy ada0p2.nop
# zpool import -o altroot=/mnt rpool
# mkdir -p /mnt/boot/zfs
# zpool set cachefile=/mnt/boot/zfs/rpool.cache rpool
# zpool set bootfs=rpool/ROOT/default rpool

# exit

bsdinstallの終了時にManual ConfigurationをYesで選択して。

# echo 'zfs_load="YES"' >> /boot/loader.conf
# echo 'zfs_enable="YES"' >> /etc/rc.conf
# echo '/dev/zvol/rpool/swap0 none swap sw 0 0' >> /etc/fstab

# exit

rebootした後に、rootログインして。

# zpool create hpool raidz2 ada1 ada2 ada3 ada4 ada5
# zfs create hpool/home
# zfs set mountpoint=/home hpool/home
# zfs set mountpoint=none hpool

# gpart add -a 4k -s 32G -t freebsd-zfs -l zil0 ada0
# gpart add -a 4k -s 60G -t freebsd-zfs -l l2arc0 ada0
# zpool add hpool log gpt/zil0 cache gpt/l2arc0