もし、間違って次のコマンドを実行してしまったとします。
[root ~]# rm -fr *
当然ですが、ファイル、ディレクトリとそれ以下のすべてが消えてなくなります。
結構、「アッ!」という間違いは起こしてしまうものです。
そんな「強制全削除」を起こさなくする、確認なしで実行されてしまうことを防ぐための簡単な方法があります。
次のコマンドで、「-i」というサイズ 0 バイトのファイルを作成しておくのです。
[root ~]# touch -- -i
すると、次のようにファイル「-i」が作成されます。
[root ~]# ll -rw-r--r-- 1 root root 0 2月 6 16:15 -i ←これ! drwxr-xr-x 2 root root 4096 12月 17 23:45 bin drwxr-xr-x 2 root root 4096 1月 27 2010 boot drwxr-xr-x 7 root root 1900 3月 6 03:24 dev drwxr-xr-x 52 root root 4096 3月 10 20:02 etc drwxr-xr-x 3 root root 4096 12月 22 20:40 home drwxr-xr-x 11 root root 4096 12月 17 23:45 lib drwxr-xr-x 2 root root 4096 1月 27 2010 media drwxr-xr-x 2 root root 4096 1月 27 2010 mnt drwxr-xr-x 6 root root 4096 3月 10 20:02 opt dr-xr-xr-x 114 root root 0 12月 29 20:22 proc drwxr-x--- 14 root root 4096 3月 10 20:02 root drwxr-xr-x 2 root root 4096 1月 31 20:43 sbin drwxr-xr-x 2 root root 4096 1月 27 2010 selinux drwxr-xr-x 3 root root 0 12月 29 20:22 sys drwxrwxrwt 3 root root 4096 3月 9 22:44 tmp drwxr-xr-x 14 root root 4096 3月 10 20:04 usr drwxr-xr-x 21 root root 4096 3月 10 20:04 var
この状態で強制全削除コマンドを打ってみます。すると今度は、
[root ~]# rm -fr * rm: descend into directory `bin'?
このように確認メッセージが返ってきます。
これで”?”と気付くでしょう。
次のような重要なディレクトリ直下には「-i」ファイルを作成しておくことをお薦めします。
/ /etc /opt /root /usr /var
ちなみに、この「-i」ファイルを削除するには次のようにします。
ただし、「-i」ファイルに対する確認メッセージにだけ「y」と答えてください。その他のファイルに対する確認メッセージには「n」と答えます。
[root ~]# rm -- *