Por que o Linux permite que usuários removam o diretório raiz? [duplicado]

4

Quando instalei o Linux pela primeira vez em meu computador, sempre gostei de usar root, porque não precisava adicionar sudo e digitar a senha toda vez que eu executava um comando que precisava de permissões de root.

Então um dia, eu só queria remover um diretório, e eu corri rm -rf / , então meu sistema quebrou. Eu me pergunto por que os designers de Linux não proibiram um comando tão perigoso.

    
por fangxing 16.04.2016 / 17:32

2 respostas

17

Por que não permitir que você faça o que quiser em seu próprio computador? Efetuar login como root ou usando sudo está dizendo para a máquina: "Eu sei o que estou fazendo". Evitar que as pessoas façam coisas duvidosas geralmente também impede que façam coisas inteligentes, como expressado por Raymond Chen. .

Além disso, há uma razão singularmente boa para permitir que um usuário use o diretório raiz: descomissionando um computador, apagando completamente o SO e o sistema de arquivos. ( Perigo! Em alguns sistemas UEFI, rm -rf / can é-agora-bricking-linux-sistemas"> tijolo da máquina física também . Chroot "> chroot jail .

Aparentemente, as pessoas acidentalmente executaram o comando tanto que um recurso de segurança foi adicionado: rm -rf / não faz nada na maioria dos sistemas, a menos que --no-preserve-root também seja fornecido, e não você pode digitar por engano . Isso também ajuda a proteger contra scripts de shell mal escritos e bem intencionados.

    
por 16.04.2016 / 19:24
8

TL; DR: A resposta mais simples seria: por que não? É apenas mais um recurso, uma ferramenta que o sistema operacional fornece. Você a usa por sua conta e risco, sabendo o que está fazendo.

Explicação

Usar o root como seu usuário é uma idéia muito ruim , já que tudo que você executa é executado com privilégios elevados, um enorme falha de segurança.

Por exemplo, se você baixou um programa malicioso, ou se o software instalado em seu computador teve algum bug crítico, isso pode levar a danos devastadores em seus arquivos e até mesmo em seu hardware.

Mesmo que você seja um pouco preguiçoso para escrever sudo muitas vezes, existem alguns comandos como sudo -i , que você pode usar por um tempo e retornar ao seu status normal de privilégios. Mas eu não recomendaria isso a menos que você tenha mais experiência usando o terminal.

No entanto, isso não é atribuível ao Linux nem a seus desenvolvedores. Na verdade, como disse @DanielB, o Windows também permite isso . Você tem a liberdade e as ferramentas para fazê-lo, mas isso não significa que você precisa.

Existem pacotes que impedem você de rm ing seu diretório raiz, como Safe-rm . Essa pode ser uma boa escolha se você acha que existe um risco de acontecer novamente.
Outras soluções e problemas, como rm do parâmetro --preserve-root , são discutidos em esta questão de falha do servidor.

    
por 16.04.2016 / 17:55