新・5大Linux破壊の呪文
インフラチームの齊藤です。
今回は趣向を変えてLinuxの危険なコマンドを紹介したいと思います。
題して、『新・5大破壊の呪文』
ランク外もご用意しています。
それでは早速ご紹介しましょう。
第5位 iptables
sudo iptables -I INPUT -j DROP
評価ポイント:一瞬で動かなくなる
iptablesは普段の扱いからして厄介ですが、
このコマンドは打った瞬間から動かなくなります。
ですので、再起動が出来ないサーバに対して行うと非常に困ります。
逆に言えば再起動さえすればまだなんとかなります。
第4位 git
git reset --hard HEAD~3 && git push -u --force origin master
評価ポイント:同僚にも迷惑がかかる
リモートレポジトリに強制的に上書きを行います。
これを行うことで同僚のプッシュを全て削除することになります。
resetしているのでなお具合が悪いです。
集団でリモートレポジトリを操作している場合には絶対にやってはいけません。
第3位 chmod
sudo chmod -R 000 /
評価ポイント:すべてがゼロになる
かなり危険なコマンドですが、わりと簡単に通ってしまいます。
なんの障害もなくコマンドがパスした後、サーバ内の全てのアクセス権限を失います。
こんな状況でもpwdコマンドは正しく表示を返してくれます。
第2位 rsync
mkdir hoge;sudo rsync -av --delete-excluded /hoge/ /
評価ポイント:もはや同期ではない
rsyncはファイルを同期をするためのコマンドです。
rsyncにはオプションが多く存在します。
数あるオプションのうち必要な物は-aによってかなりの数まとめられています。
ですから、deleteと名の付いているオプションを気軽に使わないようにしましょう。
上記のコマンドを使用すると空のファイルとOSを同期してすべてが消えます。
第1位 rm
sudo rm -rf / --no-preserve-root
評価ポイント:やっぱり消せる
最近のOSはrm -rf /という/以下全てを消し去るためのコマンドを打つと
OSから「待った」がかかりコマンドが動作しません。
ありがたいですね。ですが、そんな親切心を無にするオプションが
--no-preserve-rootです。これで全てが消え失せます。
ランク外
rm -rf <folder>
評価ポイント:お手軽
sudoをつけると非常に危険なコマンドです。
いとも簡単にフォルダやファイルを消せるからです。
(実は戻す方法があるのですが、それは又の機会に)
素人が気安く打つことが出来ないコマンドです。
状況に応じては使う人もいると思うのでランク外とさせてもらいます。
こういった作業は極力サーバエンジニアにお任せください。
まとめ
いかがでしたでしょうか。
同業者の方はもしかしたら心拍数が上がったかもしれません。
お茶でも飲んでリラックスしてください。
この他にもfork爆弾:(){ :|:& };:など、危険なコマンドはいくつか存在します。
fork爆弾はDocker上で試したりしないでください。
ホストOSに致命的なダメージを与えた前例があります。
今回紹介したコマンドはすべてVirtualBox+Vagrant上で実施しましたが、ボックスごと消滅したり、
Vagrantfileのパーミッションもしくはファイル自体がなくなったりもします。
業務用端末では絶対にやらないでください。
以上です。