ブログトップ

Tom's Lab

tomslabo.exblog.jp

Tomの研究所

ext3のファイル削除が遅い。逆転の発想で解決。

2011年3月4日(金)晴れ 今日も寒かった

以前にも書いたが、ext3は巨大ファイルの削除が遅い。WindowsのNTFSならあっという間に削除される。サーバOS(用途?)のLinuxがDISK I/O関係でWindowsに負けるなんて悔しいです。
それもDECのお下がりのNTFSに。。。

5GBのファイルを削除すると、私の環境では8秒かかる。BSの2時間ドラマのファイルであれば16GBになり、30秒近くかかる場合がある。おまけにファイル削除中は該当DISKへのアクセスが全て止まってしまう。ほんとシステム全体が止まった状態になる。

で、以前から対策ができなか調べていた。
最近、RegzaのHDDのファイルシステムがXFSであることが分かり、ext3からXFSにすれば削除が速いのでは?と思ったが、なんとネットで調べるとXFSは削除がext3より更に遅いらしい。

更に「ext3 削除 遅い」でググッたら、自分のブログしかヒットしない。多くの人は悩んでないみたいだ。。。。ほんとか?みんなホンマデッか?

ついに万策尽きたと思っていたら、ふと良い考えが閃いた。

そうだ、sambaのゴミ箱を使おう!!
d0182233_23464359.jpg

実はファイルの削除はターミナルからrmコマンドを実行しているではなく、sambaを使ってWindows Exploerから削除している。
よってゴミ箱機能をオンにし、Windows Exploerから削除すると、ファイルはごみ箱に移動される。
つまり一瞬にファイルがなくなる。後は深夜にゴミ箱をcronでクリアすれば万事解決。

■sambaでゴミ箱機能を有効にする方法
=========================================================================
vfs objects = recycle     # ごみ箱の有効化
recycle:repository = .recycle # ごみ箱のディレクトリ名(/home/ユーザ名/.recycle)
recycle:keeptree = no    # ごみ箱へ移動時にディレクトリ構造を維持しない
recycle:versions = yes    # 同名のファイルがごみ箱にある場合に別名で移動
recycle:touch = no      # ごみ箱へ移動時にタイムスタンプを更新しない
recycle:maxsize = 0     # ごみ箱へ移動するファイルのサイズ上限(0:無制限)
recycle:exclude = *.tmp ~$* # ここで指定したファイルはごみ箱へ移動せずに即削除する
recycle:exclude_dir = /tmpl # /tmpディレクトリなどから削除されたファイルはごみ箱に移動
recycle:noversions = *.doc # *.docなどは、同名ファイルがごみ箱にあっても別名にしない
[PR]
by tomslabo | 2011-03-04 23:36 | Linuxネタ