FreeBSD 9.0R で、ルートファイルシステムをZFSにするメモ 参考URL http://d.hatena.ne.jp/k-akashi/20100802/1280717882
mfsBSDを使えば楽ちんとのこと。 ファイルシステムをZFSでフォーマットしてFreeBSDをインストールするスクリプトを実行してインストールするとのこと。
具体的には、http://mfsbsd.vx.sk/ から、ISOイメージをDLしてきてインストール。
9.0-RELEASE amd64 special edition (100MB) checksums
をとってきてCD-Rに焼く。
イメージをダウンロードしたらCDブートで起動。
すると、普通にFreeBSDが起動するので、まずはログイン。
rootでパスワードはmfsroot。
あとの作業はログインメッセージにある程度書いているが、まずはCDをマウントする。
# mount_cd9660 /dev/acd0 /cdrom
HP ProLiant ML110 G7サーバの場合は、 http://h10010.www1.hp.com/wwpc/jp/ja/sm/WF25a/15351-15351-241434-3328424-3328424-5075942.html?dnr=1
# mount_cd9660 /dev/cd0 /cdrom
としてマウント。
マウントすると、FreeBSDのインストール用ファイルが使えるようになるので、それを指定してZFSでのインストールスクリプトを実行する。
# zfsinstall -d /dev/ada0 -t /cdrom/9.0-RELEASE-AMD64.tar.xz -p zfspool -s 4G
最後にchrootしてrootのパスワードを設定して再起動。
# chroot /mnt # passwd hogehogehoge #パスワード入力 # reboot
再起動後はportsもないし、rc.confにもzfs_enable="YES"しか書いてないので、ちょろちょろ環境作ることになる。
ここから参考URL http://yet-another-su.txt-nifty.com/endeavor_nt340freebsd/2012/05/freebsd-9zfs-66.html
というか、既に ada0 に、完結した?システムが出来ているので、残りの ada1 ada2 ada3 上にpoolを作って /home/usr にしましょうという話。
インストール時、usr登録しなければ、インストーラが /usr/home を作っていないので、tank にそれを置く事にする。
G7# zpool create tank raidz ada1 ada2 ada3
したら、なんだか、エラー。そこいらに転がってたHDDかき集めた tank なのでデータが残っているとダメらしい。っつうことで、
G7# zpool create -f tank ada1 ada2 ada3
しる。
# zfs set mountpoint=/boot/zfs/zroot/usr/home tank # cd /boot/zfs/zroot; ln -s usr/home home
ZFSのexportとimportを行います
# cd /boot/zfs # zpool export tank # zpool import tank
マウントポイントを指定します。
# zfs set mountpoint=/usr/home tank
/home へリンク張る
G7# ln -s /usr/home/ /home
G7# df Filesystem 1K-blocks Used Avail Capacity Mounted on zfspool/root 235245429 1007697 234237731 0% / devfs 1 1 0 100% /dev zfspool/root/tmp 234237769 38 234237731 0% /tmp tank 1436810379 19644987 1417165391 1% /usr/home zfspool/root/var 234331816 94084 234237731 0% /var
G7# zpool list NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT tank 1.36T 23.0G 1.34T 1% 1.00x ONLINE - zfspool 228G 1.05G 227G 0% 1.00x ONLINE -
G7# zpool status pool: tank state: ONLINE scan: none requested config: NAME STATE READ WRITE CKSUM tank ONLINE 0 0 0 ada1 ONLINE 0 0 0 ada2 ONLINE 0 0 0 ada3 ONLINE 0 0 0 errors: No known data errors pool: zfspool state: ONLINE scan: none requested config: NAME STATE READ WRITE CKSUM zfspool ONLINE 0 0 0 ada0p3 ONLINE 0 0 0 errors: No known data errors
23 6:31 dmesg | grep MB 24 6:41 zpool create tank ada1 ada2 ada3 25 6:41 zpool status 26 6:42 zpool list 27 6:42 zpool create -f tank ada1 ada2 ada3 28 6:43 zpool list 29 6:43 zpool status 30 6:43 df 31 6:54 pwd 32 6:54 cd 33 6:55 cd / 34 6:55 zfs set mountpoint=/boot/zfs/zroot/usr/home tank 35 6:55 cd /boot/zfs/zroot ; ln -s usr/home home 36 6:58 cd /boot/zfs 37 6:59 zpool export tank 38 6:59 zpool export zroot 39 6:59 zpool export zfspool 40 7:00 zpool import tank 41 7:01 zfs set mountpoint=/usr/home tank 42 7:01 history
いつも最初の locate hogehoge で database too small と言われて
/usr/libexec/locate.updatedb
するw
7 5:18 portsnap fetch && portsnap extract
G7# ln -s /usr/home/ /home
portsで、net/rsync をインストールして・・・
/usr/local/bin/rsync -av blackhole.smb.net:/usr/Backups/Blackcube /usr/home/Backups/
依存関係で、
python gdm
http://yet-another-su.txt-nifty.com/endeavor_nt340freebsd/2012/05/freebsd-9zfs-66.html
http://www.seichan.org/wiki/index.php?FreeBSD-ZFS#l5494be8