web-dev-qa-db-ja.com

ルートディレクトリで `rm -rf *`を実行するとどうなりますか?

私はちょうど考えていた

rm -rf *

コマンド。 rmコマンドは、それに続くすべてのファイルを削除します。-rfビットは、rmコマンドを拡張してディレクトリを含めることを示し、*はすべてを意味します。

だから、私がやったらどうなるか考えました:

cd 
rm -rf *

これはコンピュータを台無しにする可能性がありますか?私はルートディレクトリのすべてが何をするかについてあまり精通していませんが、それの多くは本質的にコンピュータを実行しているようです。

では、これを実行するとどうなりますか?それはどれほど悪いでしょうか?それはコンピュータを壊すことができますか?

さらに

興味深い追加のポイントとして、ターミナルで実行できるこれほど基本的なコマンドで、非常に損害を与えるものはありますか?

1
quanty

一連のコマンドを実行した場合:

cd
rm -rf *

ホームディレクトリ内の隠されていないファイルとディレクトリはすべて削除されます。 userfsにマウントされたパーティション(ネットワークまたはその他)のコンテンツはすべて削除されます。あなたはとても悲しいパンダかもしれないし、そうでないかもしれません。

「これはコンピュータを壊す」でしょうか?いいえ。ファイル、個人的にインストールされたアプリケーション、デスクトップ構成などが失われる可能性はありますか?間違いなく。

rootディレクトリでこれを(スーパーユーザー権限で)行った場合、結果は壊滅的なものになります。ルートディレクトリ内の(非表示でない)ファイル、およびファイルシステム全体内のすべての(非表示でない)ディレクトリの内容が削除されます。繰り返しになりますが、これにはリモートでマウントされたメディアのコンテンツが含まれます(たとえば、NAS/mnt/mediaでテレビ番組や映画のコレクションにマウントします)。

繰り返しますが、これは「コンピューターを壊す」のでしょうか?いいえ。新しいオペレーティングシステムがインストールされるまで使用できなくなりますか?別の(マウントされていない)ブート可能パーティションが存在しない限り、ほぼ間違いなく。不幸なことに/boot起動後に読み取り/書き込みをマウントすると、他のオペレーティングシステムの起動可能性にも影響が及ぶ可能性があります。

これをしないでください。 VM上でも。

2
DopeGhoti

トピックで質問すること(ルートディレクトリでrm -rf *を実行する)と質問自体で質問すること(ホームディレクトリで実行する)には違いがありますが、答えは同じです。実行しないでください。それ。

用語に関する注記:「コンピュータを台無しにする」とは、人によって意味が異なります。以前は、キーを押して起動する適切なディスクを選択する必要がある方法で自分のデスクトップを操作していました。問題ありませんでした。それがあれば、私の母はそれが台無しになっていると考えていただろう。

このコマンドは、マウント全体ですべて(隠しファイル/ディレクトリを除く)を再帰的に削除します。

ホームディレクトリから、自分のデータや構成などを「のみ」失い、ホームディレクトリのサブディレクトリとして(必ずしも直接ではなく)マウントされているものをすべて失う場合(「最新の」システム/デスクトップ環境が何をするのかわかりません) 、私のデスクトップには、私のNAS私の映画/テレビ番組などのコレクションを保持している)が含まれることがよくあります。

ルートディレクトリから(適切な権限で、通常のユーザーとして実行した場合、これはほとんどの場合、ホームディレクトリから実行した場合と同等です)、すべてが失われます(以下の逸話を参照)。この場合、確実になります。マウントは下にあるので、マウント上のすべてを削除します。

15年ほど前、私は実際にrm -fr *からrootとして/を実行しようとしましたが、とにかく再インストールしたいマシンで、何らかの理由でプロセスがプロセスの途中で停止しました(すべてが削除されたわけではありません)が、インストールを救うことができないほど十分に削除されており、何が起こったのかを知る良い方法がなかったため、削除が停止しました。

私は要点を繰り返します:これをしないでください!