Eu não tentei esse comando no Ubuntu (por razões óbvias), então não tenho certeza se o Ubuntu permitirá sua execução.
Eu fiz. rm -rf / --no-preserve-root
estava sendo executado em uma sessão raiz aberta diretamente na máquina, enquanto eu também estava conectado através ssh
de outra máquina, usando a conta raiz também.
O que acontece é que você começa a receber muitas mensagens como:
rm: não é possível remover '/ ...': operação não permitida
ou:
rm: não é possível remover '/ ...': dispositivo ou recurso ocupado
Surpreendentemente, a ssh
conexão permaneceu aberta até o final da operação. Somente quando fechei a conexão e tentei reabri-la é que apareceu um erro:
Falha na leitura do soquete: redefinição de conexão por ponto
Na máquina, quatro diretórios permanecem:
/dev
. É aqui que os arquivos do dispositivo são armazenados.
/proc
- no sistema de arquivos em memória criado pelo kernel.
/run
, um local padronizado do sistema de arquivos para daemons.
/sys
. Isso permite que você obtenha informações sobre o sistema e seus componentes.
Isso significa que não resta muito, e não há muito o que fazer lá. Você não pode ls
(embora, ao usar Tab, os nomes de diretórios e arquivos ainda sejam exibidos). Você pode cd
em diretórios diferentes, e também echo
outras coisas, mas comandos como cat
não estão mais disponíveis.
Também não existe sudo
.
shutdown -h now
e reboot
desapareceu também, então sua única opção parece desligar a máquina manualmente. Logout ( exit
) não funciona, mesmo que mostre um bom texto de "logout".
Depois de tentar reiniciar a máquina, você recebe um bom erro 15 do GRUB e, em seguida, nada acontece; nesse momento, você pode começar a pensar que rm
pode ter feito algo ruim no seu sistema.
Você pode fazer isso também
Não, espere, não faça isso na sua máquina!
O que você pode fazer é executar uma máquina virtual . As VMs têm o benefício de tornar a experimentação realmente fácil. Como você está usando o Ubuntu, você pode estar interessado em vmbuilder . Essa é uma ferramenta que permite implantar máquinas virtuais em questão de minutos (a documentação oficial afirma que isso pode ser feito "em cerca de um minuto", mas o tempo real, mesmo em hardware rápido, é de cerca de dois a três minutos .
Depois que a implantação termina, você tem um ambiente com o qual pode brincar. Se você acabar destruindo, não importa: você implanta a máquina novamente e, dois minutos depois, pode continuar.
Se você usa software como o VMWare, também pode estar interessado em instantâneos (observe que o VMWare Player gratuito não possui esse recurso; você deve adquirir o VMware Workstation). Observe que o Hyper-V é gratuito e oferece suporte a instantâneos (mas você precisa executar o Windows).
O benefício dos instantâneos é que você pode tirar um em questão de milissegundos. A reversão para um instantâneo leva mais tempo, mas geralmente é uma questão de segundos. Isso torna a experimentação ainda mais fácil e rápida.
Essa experimentação não se limita ao próprio sistema operacional. Você pode fazer todo tipo de coisa envolvendo software. Tem um aplicativo suspeito? Teste-o em uma VM - se for um vírus, não fará nenhum mal. Deseja testar uma operação em um banco de dados, pois isso pode afetar o ambiente? Teste em uma VM.
E se você fizesse isso em uma máquina real, sem teste?
Coisas ruins acontecem. Observe que o rm
protege de si mesmo: rm -rf /
não funcionará: você precisa usá-lo --no-preserve-root
. Ainda assim, e se você realmente conseguiu, por engano, remover tudo?
rm
apenas desassocia arquivos , mas os dados ainda estão lá, no seu disco rígido. Isso torna possível recuperá-lo mais tarde (e é por isso que você não deve apenas jogar fora seus discos rígidos com dados confidenciais quando eles não estiverem mais funcionando).
Isso significa que você só precisa ter um PC sobressalente com um compartimento de disco rígido para recuperar quase todos os arquivos. O importante é evitar gravar qualquer coisa no disco rígido para recuperar: os dados que você escreve sobrescreverão os arquivos desvinculados.
Conforme observado no artigo no comentário de 200_success , se você agir com inteligência, poderá recuperar a máquina mesmo sem um PC sobressalente. Se você se importa apenas com os dados, eu não me incomodaria - recuperá-los com um PC sobressalente é muito mais fácil.
rm -rf /
não exclui nada sem--no-preserve-root
.