Je n'ai pas essayé cette commande sur Ubuntu (pour des raisons évidentes), donc je ne suis pas sûr que Ubuntu autorisera son exécution.
J'ai fait. rm -rf / --no-preserve-root
fonctionnait dans une session root ouverte directement sur la machine, alors que j'étais également connecté ssh
depuis une autre machine, en utilisant également le compte root.
Qu'est-ce qui se passe, c'est que vous commencez à recevoir beaucoup de messages comme:
rm: impossible de supprimer '/ ...': opération non autorisée
ou:
rm: impossible de supprimer '/ ...': périphérique ou ressource occupé
Étonnamment, la ssh
connexion est restée ouverte jusqu'à la fin de l'opération. Ce n'est que lorsque j'ai fermé la connexion et essayé de la rouvrir qu'une erreur est apparue:
Échec de lecture depuis le socket: réinitialisation de la connexion par un homologue
Sur la machine, il reste quatre répertoires:
/dev
. C'est là que les fichiers de l'appareil sont stockés.
/proc
- système de fichiers en mémoire créé par le noyau.
/run
, un emplacement de système de fichiers normalisé pour les démons.
/sys
. Cela vous permet d'obtenir des informations sur le système et ses composants.
Cela signifie qu'il ne reste plus grand chose et qu'il n'y a pas grand-chose à faire là-bas. Vous ne pouvez pas ls
(bien que lors de l'utilisation Tab, les noms des répertoires et des fichiers sont toujours affichés). Vous pouvez cd
dans différents répertoires, mais aussi des echo
commandes, mais des commandes telles que cat
ne sont plus disponibles.
Il n'y a pas non sudo
plus.
shutdown -h now
et a également reboot
disparu, de sorte que votre seule option semble éteindre la machine manuellement. Déconnexion ( exit
) ne fonctionne pas, même s'il affiche un joli texte de "déconnexion".
Une fois que vous essayez de redémarrer la machine, une belle erreur GRUB 15 vous est présentée, puis rien ne se passe. Vous pouvez alors commencer à penser que votre système rm
pourrait avoir été endommagé.
Tu peux le faire aussi
Non, attendez, ne le faites pas sur votre machine!
Ce que vous pouvez faire à la place est d’exécuter une machine virtuelle . Les machines virtuelles ont l'avantage de rendre l'expérimentation vraiment facile. Puisque vous utilisez Ubuntu, vmbuilder pourrait vous intéresser . Ceci est un outil qui vous permet de déployer des machines virtuelles en quelques minutes (la documentation officielle affirme que cela peut être fait "en une minute environ", mais le temps réel, même sur du matériel rapide, est plutôt de deux à trois minutes. .
Une fois le déploiement terminé, vous disposez d'un environnement avec lequel vous pouvez jouer. Si vous finissez par le détruire, ce n'est pas grave: vous déployez à nouveau la machine et deux minutes plus tard, vous pouvez continuer.
Si vous utilisez un logiciel tel que VMWare, les instantanés pourraient également vous intéresser (notez que le logiciel gratuit VMWare Player ne dispose pas de cette fonctionnalité; vous devez acheter VMware Workstation). Notez que Hyper-V est gratuit et prend en charge les instantanés (mais vous devez exécuter Windows).
L'avantage des instantanés est que vous pouvez en prendre un en quelques millisecondes. Revenir à un instantané prend plus de temps, mais prend souvent quelques secondes. Cela rend l'expérimentation encore plus facile et rapide.
Cette expérimentation ne se limite pas au système d'exploitation lui-même. Vous pouvez faire toutes sortes de choses impliquant des logiciels. Vous avez une application suspecte? Testez-le sur une machine virtuelle. S'il s'agit d'un virus, cela ne fera aucun mal. Vous souhaitez tester une opération sur une base de données, étant donné que cela pourrait affecter l'environnement? Testez-le sur une VM.
Et si vous faisiez cela sur une vraie machine non testée?
Les mauvaises choses arrivent. Notez que rm
vous protège de vous-même: rm -rf /
ne fonctionnera pas: vous devez utiliser --no-preserve-root
. Pourtant, que se passe-t-il si vous avez réellement réussi, par erreur, à tout supprimer?
rm
dissocie uniquement les fichiers , mais les données sont toujours présentes sur votre disque dur. Cela permet de le récupérer ultérieurement (c'est pourquoi vous ne devriez pas simplement jeter vos disques durs contenant des données sensibles lorsqu'ils ne fonctionnent plus).
Cela signifie qu'il vous suffit de disposer d'un ordinateur de rechange avec un boîtier de disque dur pour récupérer la quasi- totalité des fichiers. L'important est d'éviter d'écrire quoi que ce soit sur le disque dur pour le récupérer: les données que vous écrivez écraseront les fichiers non liés.
Comme indiqué dans l'article du commentaire 200_success , si vous agissez intelligemment, vous pouvez récupérer la machine même sans PC de rechange. Si vous vous souciez uniquement des données, cela ne me dérangerait pas - il est beaucoup plus facile de les récupérer avec un PC de rechange.
rm -rf /
ne supprime rien sans--no-preserve-root
.