jump to navigation

Clamoroso: rm -rf / non funziona più :D

In News il 7/01 @ 23:49 trackback

[youtube D4fzInlyYQo]

Riconoscete il video che avete visto qui sopra? Sicuramente sì, quasi tutti immagino, anche perché avevo pubblicato qualcosa di simile in passato. Per quei pochi che non lo sapessero, c’è un comando – non eseguitelo! – che viene a volte crudelmente dato in pasto a poveri utenti inesperti e che causa inesorabilmente la rimozione di tutto quel che sia possibile eliminare, ossia qualsiasi filesystem montato. Vale ovviamente anche per MacOSX:

[youtube 7RfihcLJLeo]


Beh, questo comando è il famigerato e terribile:

[email protected] ~# rm -rf /

Ma adesso m -rf non è più così pericoloso. Guardate cosa succede in una installazione recente di Debian/Ubuntu (>=8.04, ma sembra che la novità sia stata introdotta con Solaris 10):

[email protected] ~# rm -rf /
rm: cannot remove root directory `/'

Le nuove versioni di rm e di core utils introducono un nuovo parametro di sicurezza e (le distribuzioni?) lo utilizzano come impostazione

-–preserve-root

La directory radice è insomma protetta :) Addio dunque ad una delle più ridicole scuse utilizzate dai detrattori di sistemi unix-based. Avrei un po’ di voglia di capire esattamente quali e se altre directory chiave sono ugualmente protette, ma per qualche strana atavica paura1 io non ho trovato il coraggio di verificare sul mio sistema :D

Note all'articolo:

  1. Avete 1/2 di tempo da investire? Installate Ubuntu su una macchina virtuale e fate un po’ di prove! :) []

Pagine forse correlate:


Commenti »

1. Roberto Mazzoleni - 8/01 @ 0:00

Dal man sembra che sia solo root la cartella protetta…

2. m4rC0_p4 - 8/01 @ 0:01

Mi domando perche’ abbiano aspettato tanto =P

3. belze - 8/01 @ 0:01

sono sicuro che hai un sacco di macchine virtuali su cui provare… ah buon anno, dall’innevatissima valle di susa!

4. Piplos - 8/01 @ 0:03

Beh… chi vuole provare? :D

5. Domenico Somma - 8/01 @ 0:05

Bè…i nubbi potranno stare più tranquilli!!! Ma devono stare attenti ancora ad un sacco di cose…
Ora ad esempio c’è (di nuovo) la moda delle liste di repository………

6. tommi - 8/01 @ 0:06

/etc sicuramente la cancella, e pure /bin.
Poi essendo così furbo ho cancellato il comando rm, ma a rigor di logica è protetta solo /
Effettivamente non ha poi così senso…
Comunque la mia openSuse con kde 4.2 virtualizzata mi ha così salutato, guardandomi implorante negli occhi poco prima di dare Invio rm -rf /etc :)

7. andreab - 8/01 @ 0:07

che forza la musichina di digger in sottofondo. erano anni che non la sentivo :D

8. zakk - 8/01 @ 0:22

rimedio: rm -rf /*

9. bigshot4ever - 8/01 @ 1:00

#8:
si appunto, stavo per scriverlo io….

10. k - 8/01 @ 1:10

variante del rimedio #8: rm -rf .*

11. pippo - 8/01 @ 1:48

beh se veramente qualche bastardo lo ha dato in pasto a dei niubbi, uuuhhh che scherzone!!!, sai quanti vogliono entrare nella “tuxfamily”….

12. ioio - 8/01 @ 2:23

ah ah. chiedimi di provare a compilare una qualsiasi patch esotica di una qualsiasi versione instabile di un qualsiasi software che dipende da librerie introvabili… ma non chiederli di provare a dare rm -rf / per vedere se preserve root sia attivata nella mia box. lol

13. Clayt - 8/01 @ 9:13

what? da hell

14. accio - 8/01 @ 9:29

Che senso ha farlo ORA? Forse si sono moltiplicati gli scherzi ai niubbi rispetto ad un tempo?

15. ToX - 8/01 @ 9:51

sudo rm -rf /
[sudo] password for tox:
rm: impossibile rimuovere la directory root `/’

a me ha funzionato… uso una linux mint ultimaversione :) fra un’oretta proverò xubuntu 9.04 sulla mia macchina virtuale… :)

16. Kirys - 8/01 @ 10:01

mi domando ma secondo voi
rm -rf /tmp/../
fungerà? O se ne accorge? :D

17. Power - 8/01 @ 10:21

Offtopic ma non troppo: ieri ho perso dati ma ho scoperto che “del *” nella fantastica Microsoft Powershell cancella anche le sottodirectory, mentre nel vecchio command prompt era necessario aggiungere “/S” ;)

Ammetto che nella richiesta di conferma lo specificava, ma io aspettandomi un comportamento uguale ho fatto yes senza leggere LOL

18. kappe - 8/01 @ 11:22

ho distrutto cosi la mia ubuntu qualche annetto fa :) ovviamente non dando il comando appositamente, ma mettendo uno spazio per sbaglio:
“rm -rf / home/kappe/cazziamia” bello e’? :P
^
|

19. PaceyIV - 8/01 @ 11:44

beh! se ve le andate a cercare!!!! cosa fate nella home con i privilegi di root?!?!?!

cmq, come posso trovare la canzone del video?

20. Popcorn - 8/01 @ 11:50

Questa?
http://www.youtube.com/watch?v=OSRCemf2JHc

21. PaceyIV - 8/01 @ 11:56

grazie! :D

fico! è così vekkia?

22. Mad - 8/01 @ 12:27

Buono a sapersi!
A proposito, ma il “niubbo” usa a shell?
Al mio primo impatto rcordo che ne avevo un sacro terrore!

23. dembo - 8/01 @ 12:38

Dal ChangeLog di gnu coreutills

2003-11-09 Jim Meyering

* src/rm.c: Support new options: –preserve-root and –no-preserve-root.

24. guest - 8/01 @ 12:54

mah, giusto per la cronaca: io l’ho provato personalmente sul mac di un mio amico (credo avesso leopard aggiornato…) e vi posso dire che non funziona;
doveva formattare l’hd, per metterne uno di più grosso, e allora gli ho detto, giusto per curiosità, proviamo a fare un pò di danni: provati sto comando:
sudo rm -rf / …beh, il terminale gli ha risposto qualcosa del tipo “uso incorretto del comando…” (non mi ricordo di preciso, è successo tempo fa…)

25. NeXTWay - 8/01 @ 13:09

[email protected]:~$ sudo rm -rf /
rm: impossibile rimuovere la directory root `/’
^^

26. Maqix - 8/01 @ 13:21

Su Mac è diverso il comando forse ;-)

27. kurtz77 - 8/01 @ 14:07

Era ora…
Ci ho disintegrato il mio primo sistema. Senza volerlo .:)
Oggi come oggi, che le guide e gli script automatizzati si sprecano, sarebbe stato un giochetto da “regazzini” creare uno script ad hoc per alleviare la pena al “poveraccio che si sbatte per configurare il modem”.:)

Per correttezza va comunque riconosciuta, e applaudita, l’effettiva buona fede di tutti quelli che, nel corso degli anni, hanno restituito alla comunità consigli e guide attendibili a quelli che “copia&incollano” nel terminale senza comprendere minimamente il significato di una singola stringa… :)

Ciao

28. giulivo navigante - 8/01 @ 14:17

a me, questa idea di una apposita opzione che protegga la / mi sembra una minchiata

intanto con l’uso di * si puo’ comunque cancellare tutto il contenuto della / e poi essendo appunto questa –preserve-root un’opzione non basta a preservare l’integrita’ del filesystem, dato che volendo si puo’ disattivarla e la directory viene eliminata

29. molok - 8/01 @ 15:50

@tommi:
> /etc sicuramente la cancella, e pure /bin.
> Poi essendo così furbo ho cancellato il comando rm, ma a rigor di logica è protetta solo /

Perché, secondo te i programmi vengono eseguiti direttamente dal disco rigido? :D

30. Anonimo - 8/01 @ 15:58

@28
Probabilmente è stata creata per evitare disastri involontari come per kappe nel commento #28 per cui uno spazio messo nel posto sbagliato ti spazza via tutto /

31. Hack-p - 8/01 @ 16:26

E’ un arma di distruzione di massa! Il tizio nel video non ha avuto le palle di eseguirlo fuori da Virtualbox XD.

32. spillo - 8/01 @ 17:20

io una volta ho installato ubuntu apposta per provarlo… bello…

l’hanno fatto per i bimbimikia? no perchè altrimenti adesso sappiano che possono usare mv / /dev/null se proprio vogliono distruggere tutto… :D

ma no dai, ci sono tanti modi per distruggere la partizione di root, non è difficile… iniziamo ad elencarle? se poi la gente prova comandi a casa senza cercarne il significato… se poi gli stronzi ti consigliano pure di farlo!

vabbè, ora vado devo dare un
dd if=/dev/sda of=/dev/null count=1 bs=512
alla mia linux box XD

33. PaceyIV - 8/01 @ 17:25

$ mv / /dev/null

mv: impossibile sovrascrivere la non-directory `/dev/null’ con la directory `/’

34. sdgasdfg - 8/01 @ 20:46

come si chiama la canzone del primo filmato??

35. spillo - 8/01 @ 20:47

@ 33. PaceyIV

a bè ottimo allora :)

andate pure del secondo comando ;) (non fatelo davvero :P )

36. PaceyIV - 8/01 @ 20:52

ma per l’altro non dovrebbe essere formulato al contrario?
così stai copiando il file /dev/sda all’interno del “buco nero”. x cancellare tutto non dovresti invece fare il contrario dal buco nero copiare il niente cosmico :D nell’hd

37. Hack-p - 8/01 @ 22:29

@ 34

La canzone originale è: Hot Butter – Popcorn

( CTRL + F nella pagina dei commenti ).

38. giberg - 8/01 @ 22:59

Controllato ora nella vecchia Slackware 12 che ancora ho. Pacchetto core utils 6.9 del 2007.
Il man indica che l’opzione –preserve-root è di default (mi fido del man, non provo :D).

Ciao

39. zetman - 9/01 @ 3:36

@io non ho trovato il coraggio di verificare sul mio sistema

provalo con una macchina virtuale, che so, virtual box
appena mi riporteranno il portatile lo proverò io

40. DG - 9/01 @ 9:30

Cioè quello che UAC fa da anni…

41. DG - 9/01 @ 9:48

Per altro i comandi

# rm -fr /*
o
# cd /
# rm -fr ./*

Funzionano eccome :D

42. fil connors - 10/01 @ 9:15

Non sono d’accordo. unix per filosofia dà la possibiltà di fare ciò che si vuole.
E l’utente unix non dovrebbe essere distratto, ma sapere quello che sta facendo.
Se scrivo rm è perché voglio farlo. Punto. Tutti i comandi unix hanno sempre lavorato con questa logica. Se iniziamo a cablare nei comandi eccezioni e restrizioni si rischia di arrivare a scimmiottare Windows dove tutto quello che si fà è rigido e guidato da voci
limitate e precostituite. Secondo me, il bello di usare unix è la libertà (e potenza) data dai comandi, la loro coerenza e la loro interoperabilità.
Questa è ovviamente una mia opinione.

Ciao a tutti!

43. snizzo - 10/01 @ 16:42

effettivamente a tutti quelli che dicono che è una bella idea…
il comando rm (-rf volendo) dovrebbe cancellare. è quello lo scopo del comando. certo che non ha tantissimo senso cancellare / però in fondo il comando funzionava.

e funzionava bene. testimone il video.

44. Vide - 15/01 @ 1:26

@fil connors: una opinione del cavolo, con tutto il rispetto, dato che è una *OPZIONE* (semplicemente attiva di default) che puoi disattivare con l’apposito switch, con cui potrai cancellarti la tua bella directory radice in santa pace.

45. Diavolo_Rosso - 18/01 @ 17:08

@fil connors: come è gia stato fatto notare in altri commenti, anche a un sysadmin unix con esperienza trentennale può capitare di mettere uno spazio di troppo.

magari era voluta la rimozione forzata e ricorsiva, ma magari non troppo voluta la rimozione forzata e ricorsiva di / home/user/ (notare lo spazio).

La tua tanto amata filosofia e comunque preservata perche se proprio ci tieni a piallare l’intero sistema ti basta aggiungere un asterico al comando. E’ sicuramente più facile farsi scappare uno spazio che non un asterisco.

46. amperini - 20/01 @ 0:05

@kappe ahahaha bello perdere il sistema così!! :-D

47. Yemmi - 1/02 @ 23:39

ma quindi questa preservanza della root directory l’ha inventata ubuntu? mi fate ridere, è un opzione di rm ed è fatta per evitare sbadataggini nella digitazione, tipo per esmepio mettere uno spazio dopo /

ma pure il video dell’rm -rf / con la musica truzza
mammamia quanta bimbominkiaggine

48. Reload - 2/02 @ 22:39

CMq quello che è successo nel commento n. 18 è difficile…. O meglio è difficile se usi spesso il tab, e se lo usi ti devi trovare nella directory root.

Io la prima cosa che insegno a chi si avvicina a linux è “tabba tabba tabba”. In questo caso gli avrebbe salvato la vita (a meno che non si trovasse in / )

49. lucas - 28/02 @ 4:16

TU HAI ROVINATO IL MIO SKERZO PRFERITO E ADESSO CHE GLI FACCIO FARE AI NIUBBI CHE NN LEGGONO I MAN ! :D

MAGARI UN CHMOD -X QUALCOSA … >:)