トップ «前の日記(2014-02-16(Sun)) 最新 次の日記(2014-02-19(Wed))» 編集

屑俺日記

僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。


2014-02-17(Mon) あまり寒くないような感じ

ufs2に書いてみた

こういう時は、やっぱり、という感じで仮想マシンにPlamo-5.2。
tmux やkpartx(git clone http://git.opensvc.com/multipath-tools/.git) をインストールする。
kernel-3.13.3 をビルド。
既存の /proc/config.gz を gzip -dc /usr/src/linux-3.13.3/.config し、make oldconfig で適当にenter。
make menuconfig で、要りそうにないデバイスなどを外し、 今なおDangerousなオプションを。

CONFIG_UFS_FS=m
CONFIG_UFS_FS_WRITE=y
CONFIG_UFS_DEBUG=y

で、RaspberryPi向けFreeBSDのイメージを食わせてみる。
一旦Read Onlyで確認。

$ sudo losetup /dev/loop0 bsd-pi.img
 
$ sudo kpartx -av /dev/loop0
add map loop0p1 (253:0): 0 65520 linear /dev/loop0 63
add map loop0p2 (253:1): 0 2031561 linear /dev/loop0 65583
 
$ sudo mount -t ufs -o ro,ufstype=ufs2 /dev/mapper/loop0p2 /mnt
 
$ mount | grep mnt
/dev/mapper/loop0p2 on /mnt type ufs (ro,ufstype=ufs2)

DEBUGを有効にしたせいか否か、なんか重かった。
ls -l などやってから一旦umountし、本番。

$ sudo mount -t ufs -o ufstype=ufs2 /dev/mapper/loop0p2 /mnt
 
$ mount | grep mnt
/dev/mapper/loop0p2 on /mnt type ufs (rw,ufstype=ufs2)
 
$ sudo sh -c "ls -l > /mnt/foo.txt"
 
$ ls -l /mnt/foo.txt 
-rw-r--r-- 1 root root 234 Feb 17 17:17 /mnt/foo.txt

一度再起動して、書いたファイルが消えてないことを確認。
あと、カーネルソースの fs/ufs で、grep 20[0-1][0-9] *.h *.c してみたが、"2007" より後はなかった。
2007 年以降放置、なのかは分からないけど。

ついでに、二つのファイルを交互に追記するスクリプトを走らせてみた が、ディスクが埋まる前に制御不能になった。らしい。


リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。

index.htmlは ここから。