「Linux」で実行してはいけない危険なコマンド5選

今回は「「Linux」で実行してはいけない危険なコマンド5選」についてご紹介します。

関連ワード (Linuxノウハウ、特集・解説等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、ZDNet Japan様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


 「UNIX」(「Linux」の祖先)の開発者であるTerry Lambert氏はかつて、「ユーザーが自分の足を撃つのを止めるのは、UNIXの仕事ではない。ユーザーがそうすることを選択した場合に、最も効率的な方法で弾丸を足に命中させるのがUNIXの仕事だ」と述べた。

 その発言は、LinuxとUNIXの仕組みを正確に言い表している。

 「GNOME」や「KDE」「Cinnamon」などのデスクトップでグラフィカルなLinuxアプリケーションを使用している人は、このような問題について心配しなくてもよい。これらのデスクトップには、安全ベルトとショルダーストラップが付属しているからだ。グラフィカルユーザーインターフェース(GUI)からLinuxマシンを破壊するのは、極めて大変な作業になるだろう。

 ただし、頻繁にシェルコマンドを使用したり、シェルスクリプトを作成したりするLinux管理者やパワーユーザーは、間違ったコマンドを間違ったタイミングで使用したことが原因で、コンピューターの復旧に忙殺される可能性もある。

 読者の皆さんは、本記事で紹介するコマンドを自宅やオフィス、実稼働システムで絶対に使用しないように注意してほしい。

 これは、すべてのLinux管理者が知っている(または、最低でも知っておくべき)コマンドだ。

 「rm」は単体でも非常に便利で、頑固なファイルも削除できる。ただし、「-r」(すべてのサブディレクトリーの再帰的な削除を強制する)および「-f」(読み取り専用ファイルを確認なしで強制的に削除する)の2つのオプションと組み合わせると、トラブルを招くことになる。

 それを「/」(ルートディレクトリー)に対して実行すると、ドライブ全体のデータがすべて消去される。

 これは、システム管理者のミスに関するジョークのオチとして使われるが、実際に起きてしまうこともある。あるユーザーは次のように告白している。「私がこれまでに犯した最悪のミスの1つは、rm -r /this/is/my/folder/[ACCIDENTAL_SPACE]*と入力しているときに誤ってスペースバーを押してしまったことだ。信じられないことに、『Enter』キーを押したときでさえ、そのことに気づいていなかった」

 このケースでは、「*」(ワイルドカード)を使用したため、そのディレクトリーにあるすべてのものが削除された。もうファイルは1つも残っていなかった。シェルには、このミスを挽回するゴミ箱はない。

 最近のほとんどのシステムでは、このミスを防ぐために、大きな文字で警告が表示される。しかし、忙しくキーボードをたたいているときや、ほかのことに気を取られたときに、システムを完全に消去するコマンドを誤って入力してしまうこともある。筆者もそのようなミスを実際に経験し、テープからシステム全体を復元することを余儀なくされたことがある(ご存じない方もいるかもしれないが、これは絶対にやりたくない作業だ)。

 これは冗談だが、事実でもおかしくないように思える。ddを使えば、コンピューター上のほぼすべてのもののデジタルコピーを作成できる。適切に使用すれば、強力かつ便利で高速だ。しかし、使い方を誤ると、ファイルシステムを一瞬で破壊してしまう可能性がある。

 筆者が聞いた限りでは、ddがドライブやファイルに大損害を与えた事例はrmよりもはるかに多い。これは、ddが独自のコマンド構文を持っているためだ。指の記憶が原因で、間違ったオプションを入力すると、ファイルシステムに大きな損害を与えてしまう可能性がある。実際、Open Source Initiativeの共同創設者でハッカーのEric S. Raymond氏は、典型的なUNIX/Linuxコマンド構文よりもIBM JCLによく似ているddのコマンド構文について、「明らかないたずら」だったのではないかと推測している。

 残念ながら、たとえ冗談だとしても、ずっと存続するのは悪い冗談だ。例として、以下のコマンドを見てみよう。

 このコマンドは、無限のゼロを出力する特殊なファイルからデータを取得して、ハードドライブ全体に書き込む。

 ばかげているように聞こえるかもしれないが、/dev/zeroには実際に用途がある。例えば、パーティション内の未使用の領域をゼロで埋めるのに使うことが可能だ。これにより、パーティションを転送したり、バックアップしたりする必要がある場合に、パーティションイメージを大幅に小さくできる。

 書き込むデータはゼロでなくても構わない。ddはさまざまな面白い方法で、ドライブ上の良いデータを悪いデータに置き換える。このコマンドは、役に立つこともあるが、腕時計をハンマーで修理しようとするようなものだ。迅速で効率的だが、破壊的でもある。

 ソリッドステートドライブ(SSD)のデータを消去したい場合は、より現代的なコマンドがある。「blkdiscard」コマンドだ。このコマンドを使えば、デバイスのセクターとドライブ上のすべてのデータを破棄できる。混乱を引き起こすのは、50年前から存在するddのような古いコマンドだけではない。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
「東証APIサービス」2月スタート 適時開示・株価情報配信 FinTech活性化へ
企業・業界動向
2021-01-26 10:28
Google Cloud、AIエージェント構築「Vertex AI Agent Builder」など発表
IT関連
2024-04-12 13:37
Open AIのアルトマンCEO、「Microsoft Build」にサプライズで登場
IT関連
2024-05-24 11:54
AI駆動でテキストを美しい合成音声として出力するAflorithmicが約1.4億円調達
ネットサービス
2021-02-23 02:42
クラウド受付システムRECEPTIONISTがクマヒラの入退室管理SPLATS PASSと連携、受付業務の効率化とセキュリティを両立
IT関連
2022-02-23 09:31
SBテクノロジー、クラウド環境におけるインシデント検知・通知サービスを提供
IT関連
2023-08-23 09:42
ネットカフェで高齢者のワクチン予約を無償サポート 自遊空間や快活CLUBなどが開始
企業・業界動向
2021-06-08 01:54
「ウォールドガーデンは崩壊した」–エリソン氏が語る、顧客を“庭の主”にするマルチクラウド
IT関連
2022-10-21 22:57
オライリー調査で明らかに–Go、Rust、Ruby、Dartに関心高まる
IT関連
2021-04-11 13:04
「Google フォト」対「Box」 プランの比較から見る各社の狙い :Google フォトの容量無制限終了で考える(1/2 ページ)
クラウドユーザー
2021-06-04 18:18
Twitter、新APIの「学術研究」トラックで公開ツイート全履歴への無料アクセスなど提供
IT関連
2021-01-27 18:26
【2月25日】掲載記事アクセスランキング・トップ5―1位はAndroidスマホからストーカーウェアを削除する方法
IT関連
2022-02-26 04:27
KubernetesのノードとしてWebAssemblyランタイムを用いる「Krustlet」、CNCFのサンドボックスプロジェクトに申請
Cloud Native
2021-06-17 14:08
GitHub、Copilotの将来像となる「Copilot Workspace」発表。人間がコードを書くことなく、Copilotが仕様作成からコード作成、デバッグまで実行。GitHub Universe 2023
GitHub
2023-11-10 08:35