4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

滅びの呪文バルス(rm -rf /)を唱えてみた。

Last updated at Posted at 2025-05-03

駆け出しの頃、現場で rm -rf をためらいなく実行してしまい、上司が死ぬほど焦っていたあの顔は今でも忘れませんw
今回は、rm -rf の危険性と、「rm -rf /」というLinux界で有名な滅びのコマンド、通称バルスを検証サーバで実行してみようと思います!

rm -rfとは?

rm は "remove" の略で、ファイルやディレクトリを削除するコマンドです。以下のオプションを組み合わせて使用します:

  • -r(recursive):ディレクトリとその中身を再帰的に削除します。
  • -f(force):削除確認のプロンプトを表示せず、強制的に削除します。

この2つを組み合わせた rm -rf は、非常に強力で危険なコマンドです。

「rm -rf /」とは?

rm -rf / は、ルートディレクトリ(/)以下のすべてのファイルとディレクトリを削除する命令です。
これは、システム全体を破壊する危険なコマンドです。自分は一回も試したことない(これから初体験)

検証環境

  • OS:Red Hat Enterprise Linux 9(RHEL9)

⚠️注意:以下の操作は、壊しても問題ない検証用の環境でのみ行ってください。本番環境や重要なシステムでは絶対に実行しないでください。

実際に「rm -rf /」を試してみる

まずは、rm -rf / を実行してみます。

rm -rf /

実行すると、以下のような警告メッセージが表示され、削除は実行されません。

rm-rf.png

rm コマンドがデフォルトでルートディレクトリの削除を防ぐために --preserve-rootがついているからぽいですね!--no-preserve-rootオプションを明示的に付与しないと滅びの呪文は実行できないことに一安心。

標的を/user ディレクトリに変えてみる。

次に、 /user ディレクトリを削除してみます。
⇩バルス!( ・ Д ・ )

rm -rf /user

タイトルなし.png

実行後、lscat などの基本的なコマンドが実行できなくなりました。これは滅びの呪文が成功してそうですね!

/etc を誤って削除してみた(〃ノдノ)

本来は /etc/test ディレクトリを削除するつもりが、スペースの位置を誤って /etc を削除してしまうケースをやってみます、、、、、、
⇩検証も終わったし、testディレクトリ削除するべ!オラ!!

rm -rf /etc /test

※上記のコマンドでは、/etc/test の間にスペースがあります。

etc全削除.png

あ、、、、etc君、、、、
エッホエッホ
上司に間違えて/etcを削除しちゃったって伝えなきゃっ♪

/etc ディレクトリを削除した後、システムへの再接続を試みると、接続エラーが発生しました。
任務完了、、、!!!!

接続できない.png

まとめ

rm -rf コマンドは、ディレクトリ内のすべてのファイルを削除するため、特定の場面では非常に便利です。
しかし、一歩間違えると、システム全体を破壊してしまう危険なコマンドでもあります。

使用する際は以下のことを意識して使用すると最悪の事態が起きるのを防ぐことができると思います。

  • 削除対象のパスを正確に指定する。
  • カレントディレクトリに移動してから削除を実行する。
  • ./ を使用して、明示的にカレントディレクトリを示す。
  • なるべくrm -rfをつかわない。

この記事が皆さんのお役に立てればうれしいです。
以上、現場からでした!

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?