Whatsapp

Kender du nogle skøre "rm

Anonim

rm -rf er én Bash-kommando, der ligner DROPSQL kommando. Medmindre du har en replika (backup) af din databasetabel, vil du miste alle data.

rm -rf er en kommando, der, når den aktiveres uden root-privilegier, vil fjerne alle de mapper, som brugeren har adgang til. Når den aktiveres med root-rettigheder, vil den udslette din harddisk.

Jeg har ikke været uheldig at begå den fejl at køre denne kode på en produktionsserver før, men ikke alle har været så heldige. Her er nogle interessante rm -rf historier, som du måske finder relaterbare.

1. Thomas og det CLI-baserede Trash Program

Thomas var i sit Unix-laboratorium og arbejdede på et midtvejsprojekt, hvor han var forbundet til en server i et tilstødende laboratorium ved hjælp afPuTTY + RealVNC.

Hans projekt var ligetil: Opret et "trash" CLI-program, der tager en liste over filstier og flytter dem til en~/.trash bibliotek. Du kan derefter “tømme papirkurven”, som udfører rm på mappen. Han fik færdiggjort den første del og var ved at fuldføre den tomme kommando.

På en eller anden måde indstillede han den forkerte variabel, som efterlod fjernestien som /, og han havde sudo-adgang. Der skete ikke noget, da han først kørte koden, men kort efter blev den fejlagtig og begyndte at vise statisk. Ctrl + C kunne ikke hjælpe. Derefter blev skærmen tom og afbrudt.

Hans kode kørte en sudo rm-rf /, og det slettede alle data på serveren. Heldigvis for Thomas arbejdede han på afdelingens testserver og var i stand til at gendanne dataene fra backup-diske. Han mistede ikke sin optagelse.

2. En ren aftørring under en sikkerhedskopieringssession

Alex var netværksadministrator hos en virksomhed, der sikkerhedskopierede deres maskiner via scripts. På en skæbnesvanger fredag opgraderede han manuskriptet med teksten rm -rf ${DIRECTERY}/ i stedet for rm -rf ${DIRECTORY}/ – gør kommandoen opdateret til kun rm-rffordi ${DIRECTERY} blev en tom streng.

Sikkerhedskopieringssessionen begyndte senere samme aften, og før Alex vidste af det, var alle maskiner på netværket slettet rene! Heldigvis for ham sikkerhedskopierer virksomheden filer hver time, så der ikke skete meget skade.Det var til trods for en travl weekend. Ganske ironisk, at et backupjob ville tørre systemerne rene, ikke?

3. Den automatiske rekursive renser

En gang arbejdede Eric på en filserver og ønskede automatisk at rydde op i nogle filer hver uge eller deromkring. Han planlagde sin linje og testede den med det formål kun at fjerne relativt ældre filer. Hans arbejde var inden for en enkelt mappe, så han troede ikke, at noget kunne gå g alt. Nå, han fandt senere ud af, at han gættede forkert.

Han kørte følgende kommando, og det virkede. Dernæst tilføjede han manuelt linjen i crontab, og det var, da han ved en fejl erstattede . med en / .

 Find . -type f -navn-ctime -60 -exec rm -rf {} \;

Spol frem til en uge senere, og et betydeligt antal filer var væk. Hvad værre var, er, at de blev slettet efter hvad der så ud til at være et tilfældigt mønster, så han troede, at virksomheden blev hacket, indtil han kørte et kodetjek og indså, at han var hackeren.

Heldigvis opbevarede han eksterne sikkerhedskopier hver dag, så han var i stand til at rette sin fejl. Siden den dag kan du vædde på, at han har været super forsigtig med de kommandoer, han kører med administratorrettigheder.

De 2 hovedpunkter, der findes i ovenstående historier, er 1, dobbelttjek altid din kode og dens mulige resulterende effekt og 2, hold altid dine sikkerhedskopier så aktuelle som muligt, fordi du aldrig ved hvornår de vil være nyttige.

Kender du nogle skøre rm -rf historier fra erfaring eller andre steder? Del dem med os i kommentarfeltet.