強火で進め

このブログではプログラム関連の記事を中心に書いてます。

rm -rf の恐怖


コマンドを入力したユーザへの確認無しにディレクトリを削除出来る rm -rf コマンド。通常のターミナルでの操作などでは慎重に扱うかと思います。

しかし、それをインストール用のシェルスクリプト使う場合には記述ではちょっとのミスで大変な事になってしまう様です。

今回、Twitter上でそんな事例がRTされていました。

問題になってしまったのはこちらのプロジェクト。

Commit a047be85247755cdbe0acce6f1dafc8beb84f2ac to MrMEEE/bumblebee - GitHub
https://github.com/MrMEEE/bumblebee/commit/a047be85247755cdbe0acce6f1dafc8beb84f2ac

本来は既にインストール済みのファイルを削除する為に

rm -rf /usr/lib/nvidia-current/xorg/xorg

と書くべき所が /usr の後ろにスペースが入ってしまって

rm -rf /usr /lib/nvidia-current/xorg/xorg

となってしまったみたいです。

こうなると削除対象は /usr と /lib/nvidia-current/xorg/xorg の2つのディレクトリ。これはもし、自分でやらかしたときはかなり顔真っ青になりそうです。