Linux Tips

Sambaでごみ箱を使うには(Red Hat Linux編)

北浦訓行
2003/6/12

 Sambaで共有しているディレクトリにあるファイルは、Windowsのエクスプローラで選択して[Delete]キーを押すと簡単に消去できる。だが、それを復活させることはできないため(運が良ければ削除したファイルを復活するにはで復活できる可能性はあるが)、何らかの安全対策を施しておきたい。

 Sambaでごみ箱を使うには(Samba日本語版編)で説明したように、Samba日本語版(2.2.2-ja-1.0以降)では、ごみ箱の機能をサポートしているが、Red Hat Linuxが採用しているオリジナル版のSambaでも、バージョン2.2.5以降はVFSモジュールとしてごみ箱機能をサポートしている。Samba日本語版と同様に、ファイルを削除するとあらかじめ指定しておいたディレクトリ(ごみ箱)に移動されるだけなので、後で元の状態に戻すことができる。ここでは、Red Hat LinuxのSambaでごみ箱機能を使う方法を紹介する。

 最初に、ごみ箱の設定ファイルである/usr/share/doc/samba-2.2.7a/recycle.confを/etc/sambaにコピーする。recycle.confの設定は、デフォルトのままで構わないだろう。

# cp /usr/share/doc/samba-2.2.7a/recycle.conf /etc/samba

 次に、テキストエディタで/etc/samba/smb.confを開いて、[global]の適当な場所に以下のVFSモジュールの記述を追加する。

vfs object = /usr/lib/samba/vfs/recycle.so
vfs options = /etc/samba/recycle.conf

 共有ディレクトリに.recycleというサブディレクトリを作成して、読み書き可能にしておく。

# mkdir /home/project/.recycle
# chmod 777 /home/project/.recycle

 この作業を行わないと、最初に共有ディレクトリでファイルを削除したユーザー専用の.recycleディレクトリが作成されてしまい、ほかのユーザーがファイルを削除できなくなってしまう。

 以上で設定は終了だ。Sambaを再起動させると、ごみ箱機能が有効になる。

# service smb restart
SMBサービスを停止中:                                       [  OK  ]
NMBサービスを停止中:                                       [  OK  ]
SMBサービスを起動中:                                       [  OK  ]
NMBサービスを起動中:                                       [  OK  ]

 同じディレクトリで同じ名前のファイルを削除した場合、新しく削除されたファイルに「(Copy #?)」という文字が追加される。例えば、memo.txtというファイルを3回削除すると、.recycleディレクトリは以下のようになる。

$ ls | more
memo.txt ←最初に削除したファイル
memo.txt (Copy #1).txt ←2番目に削除したファイル
memo.txt (Copy #2).txt ←3番目に削除したファイル

 なお、.recycleディレクトリのファイルは自動的には削除されないため、cronなどで定期的に削除する必要がある(プログラムを定期的に実行するには参照)。

Linux Tips Index



 Linux Squareフォーラム Linux Tipsカテゴリ別インデックス
インストール/RPM ブート/ブートローダ
ファイル操作 環境設定
ユーザー管理 コンソール/ターミナル
X Window System セキュリティ
トラブルシューティング 他OS関係
ネットワーク ハードウェア
Webサーバ Samba
GNOME KDE
OpenOffice.org エミュレータ
ソフトウェア そのほか/FAQ
全Tips公開順インデックス Linux Tips月間ランキング
Linux Squareフォーラム全記事インデックス

MONOist組み込み開発フォーラムの中から、Linux関連記事を紹介します


Linux & OSS フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Linux & OSS 記事ランキング

本日 月間