/usr/ports を mkuzip で圧縮ファイルシステムにする2014年01月20日 13時14分37秒

/usr/ports を mkuzip で圧縮ファイルシステムにする。これ自体は、何も新しい事では無いのだが、また今回更新するのに、色々と調べてしまった。次こそは、検索一発でいきたいところ。

/usr/ports はファイル数が多いこと。まだ、1GB で十分収まる。

$ df -ki /usr/ports
Filesystem    1024-blocks   Used  Avail Capacity iused  ifree %iused  Mounted on
/dev/md0.uzip      911262 581356 257006    69%  153598 394176   28%   /usr/ports
newfs-i を用いて、多めに inode を作成する。使うデバイスは、mdconfig の swap 型だ。論理メモリを用いるが物理メモリは十分にあるので、すべてオンメモリ。

また、portsupgrade を使うので、mkuzip 前に INDEX を生成しておく必要がある。INDEX を作っておかないと、一回ずつ 生成されてしまい大変な事になる。

最後に、uzip のブロックは最大値に。geom_uzip で単一ブロックへのみ、キャッシュされているので、一ブロックの大きさを最大に。

以上の作業を一気に行うとこうなる。

$ mdconfig -a -t swap -s 1GB
md2
$ newfs -U -i 512 /dev/md2
density increased from 512 to 2048
/dev/md2: 1024.0MB (2097152 sectors) block size 16384, fragment size 2048
        using 9 cylinder groups of 118.88MB, 7608 blks, 60864 inodes.
        with soft updates
super-block backups (for fsck -b #) at:
 160, 243616, 487072, 730528, 973984, 1217440, 1460896, 1704352, 1947808
$ mount -o async,noatime /dev/md2 /usr/ports
$ tar tf /usr/uzip/ports-9.2.txz | head
usr/ports/
usr/ports/x11-toolkits
$ tar xf /usr/uzip/ports-9.2.txz -C /
$ portupgrade -na
$ umount /usr/ports
$ mkuzip -v -s 130048 -o /usr/uzip/ports-9.2-20131008.uzip /dev/md2

コメント

コメントをどうぞ

※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。

※なお、送られたコメントはブログの管理者が確認するまで公開されません。

名前:
メールアドレス:
URL:
コメント:

トラックバック

このエントリのトラックバックURL: http://uyota.asablo.jp/blog/2014/01/20/7198618/tb

※なお、送られたトラックバックはブログの管理者が確認するまで公開されません。