Linux
Linuxコマンド
centos7
ubuntu18.04

禁断の呪文「rm -rf /」をやってみた

よく聞く禁断の呪文である rm -rf / ですが本当に死ぬのでしょうか。

よほど変な環境でなければ--no-preserve-rootオプションがないと、この禁断の呪文は動かないはずですが、不安になったので仮想マシンを立てて実験してみました。

tl;dr

死ぬときは死ぬ。 --no-preserve-rootで安心してはならない。

注意事項

  • 動作に関して一切の保証はありません。
  • もしやらかして謝罪会見になったりクビになったりしても責任は負えません。
  • エンターテイメントの一種として見てください。

Ubuntu 18.04 LTS Bionic Server

root@blackmagic:~# rm -rf /
rm: it is dangerous to operate recursively on '/'
rm: use --no-preserve-root to override this failsafe

ですよねー。

CentOS 7.4

「会社ではUbuntuとか使わんしw」みたいなヒンシュクを買いそうなのでこちらでもやってみます。

[root@blackmagic ~]# rm -rf /
rm: it is dangerous to operate recursively on '/'
rm: use --no-preserve-root to override this failsafe

ですよねー(2回目)。念の為fedora 28でもやってみましたが、結果は一緒でした。

Alpine Linux

Alpineなら消えるという声が来たのでやってみます。

blackmagic:~# rm -rf /
rm: can't remove '/sys/module/virtio_net/sections/.rodata': Operation not permitted
rm: can't remove '/sys/module/virtio_net/sections/__ex_table': Operation not permitted
.
.
.
rm: can't remove '/sys/module/8250/parameters/skip_txen_test': Operation not permitted
blackmagic:(unknown)#

まじで!?詳しく調べると、busyboxのrmは禁断の呪文がオプションなしで動くようです。Alpineはbusyboxが使われているので破滅してしまいました。

Arch Linux

[root@blackmagic-arch ~]# rm -rf /
rm: it is dangerous to operate recursively on '/'
rm: use --no-preserve-root to override this failsafe
[root@blackmagic-arch ~]#

openSUSE

blackmagic-opensuse:~ # rm -rf /
rm: it is dangerous to operate recursively on ‘/’
rm: use --no-preserve-root to override this failsafe
blackmagic-opensuse:~ #

Gentoo

blackmagic-gentoo ~ # rm -rf /
rm: it is dangerous to operate recursively on ‘/’
rm: use --no-preserve-root to override this failsafe
blackmagic-gentoo ~ #

さいごに

そもそも rm -rf / を入力しなければならない状態がおかしいです。相対パスを使うべきです。