O usuário raiz é a entidade mais poderosa do universo do Linux com poderes ilimitados, para melhor ou pior. Crie um usuário? Entendi. Aniquilar um sistema de arquivos? Whoops, tem isso também.
A história de origem
O usuário raiz é o superusuário Linux. Eles podem, literalmente, fazer qualquer coisa. Nada é restrito ou off-limites para
raiz
. Se eles são um super-herói ou uma supervilagem depende do usuário humano que assume o manto do administrador do sistema. Os erros feitos pelo usuário raiz podem ser catastróficos, portanto, a conta raiz deve ser usada exclusivamente para fins administrativos.
O conceito do usuário raiz foi herdado do Unix, que tinha um usuário root como seu superusuário administrativo. Mas onde o nome "raiz" vem não é conhecido com certeza. Algumas pessoas pensam que veio do Sistema operacional multics. que pré-dates unix.
Ken Thompson. e Dennis Ritchie , dois dos arquitetos e autores mais importantes do Unix, ambos anteriormente trabalharam nos multics. Multics teve um sistema de arquivos que começou em um ponto chamado diretório raiz ou "/", e todos os outros diretórios e subdiretórios ramificados para baixo e para fora da raiz como uma árvore invertida. É o mesmo tipo de estrutura de árvores adotada pelo UNIX. Então, talvez o Unix adotasse o usuário raiz de multics, também?
Pesquisando através do Documentação Técnica Multics. Conversa uma infinidade de referências a volumes lógicos raiz, volumes físicos raiz, cartões de raiz e diretório raiz. Mas não há menção de uma conta de usuário raiz ou um usuário chamado "raiz".
Outra teoria é que nos primeiros dias do UNIX, a pasta inicial do superusuário foi a raiz "/" do sistema de arquivos. O superusuário precisava de um nome. O termo "usuário root" tinha sido usado no lugar de um nome oficial, mas o termo preso e se tornou o nome oficial.
Isso parece mais provável, mas ninguém parece ser capaz de dizer com certeza de como o usuário root conseguiu seu nome.
O comando sudo
Em qualquer sistema operacional, é melhor prática reservar apenas o superusuário para fins administrativos e usar uma conta de usuário regular o resto do tempo. Na verdade, a maioria das distribuições modernas do Linux não permite que você faça o login como usuário raiz.
Claro, este é o Linux, para que você possa configurá-lo para permitir que o usuário root faça login. Mas quanto menos tempo você gasta logado como
raiz
, o melhor. Além de se proteger de desastres decorrentes de erros de digitação, se você não puder fazer login como
raiz
, ninguém mais pode. Qualquer pessoa que ganha acesso não autorizado ao seu sistema não poderá efetuar login como
raiz
, limitando o dano que eles podem fazer.
Mas se estiver fazendo login como
raiz
está desativado, como você administra seu computador Linux? Bem, é isso que o
sudo
comando é para. Não requer que o usuário root faça o login. Ele gera temporariamente
raiz
Os poderes em você. É como pegar o martelo de Thor
Mjolnir.
e ser temporariamente concedido os poderes de Thor. Mas você só pode pegar o martelo se for digno. Da mesma forma, não é só qualquer um que possa usar o
sudo
comando. o
sudo
Comando apenas confere
raiz
Powers em você se você foi encontrado digno e adicionado à lista de sudoers.
Há outro comando semelhante a
sudo
chamado
su.
. Com
sudo
, você autentica usando sua própria senha. Com
su.
, você autentica usando a senha do usuário raiz. Isso é significativo de duas maneiras. Em primeiro lugar, significa que você precisa atribuir uma senha ao usuário root a usar
su.
. Por padrão, o usuário root não tem senha, e isso ajuda na segurança. Se
raiz
não tem uma senha, você não pode fazer login como
raiz
.
Em segundo lugar, se você definir uma senha de root, todos que vão usar o
su.
O comando precisa saber a senha. E compartilhar senhas é uma segurança no - não e para a senha raiz, ainda mais. Qualquer uma das pessoas que conhecem a senha da raiz pode dizer a outra pessoa. Se você precisar alterar a senha raiz, precisará comunicar a nova senha para todas as pessoas que precisam saber.
É muito mais seguro
Use a lista de sudoers
restringir quem pode usar
sudo
e deixe que cada pessoa privilegiada use suas senhas individuais para autenticar.
Usando sudo.
O arquivo "/ etc / shadow" contém o nome de usuário de cada conta no seu computador Linux, juntamente com outras informações, incluindo a senha criptografada de cada conta, quando a senha foi alterada pela última vez e quando a senha expira. Porque contém informações confidenciais, só pode ser lido por
raiz
.
Se tentarmos usar o
banheiro
Comando para ler as linhas, palavras e caracteres no arquivo de sombra, teremos permissão negada.
WC / etc / Shadow
Se estamos na lista de sudoers e usamos o mesmo comando com
sudo
No início da linha, seremos solicitados a nossa senha e o comando será executado para nós. Se você é o único usuário em seu computador Linux, será adicionado automaticamente à lista sudoers quando o sistema estiver instalado.
sudo wc / etc / shadow
Porque estamos executando o comando como root, o
banheiro
o comando é executado. Ninguém nega raiz.
o
sudo
comando usado para significar "superusuário". Foi aprimorado para permitir que você execute um comando como qualquer usuário, então foi renomeado "Usuário substituto". O comando é realmente executado como se o outro usuário corresse. Se você não especificar um nome de usuário,
sudo
Padrões para usar
raiz
. Se você deseja usar um usuário diferente, use o
-você
(usuário) opção.
Podemos ver que os comandos são executados como outro usuário usando o
Quem sou eu
comando.
Whoami
sudo whoami
sudo -u mary whoami
RELACIONADO: Como determinar a conta de usuário atual no Linux
Correndo como raiz sem usar su
O snag com
sudo
é que você tem que usar "sudo" no início de todos os comandos. Se você está apenas digitando um ou dois comandos, isso não é grande coisa. Se você tiver uma sequência mais longa de comandos para executar, ela pode se tornar cansativa. Pode ser cansativo, mas isso atua como uma captura de segurança útil para
raiz
Poderes, e você tem que conscientemente tirar a segurança toda vez.
Há uma maneira de efetivamente "efetuar login" como
raiz
Isso não usa
su.
e não requer que o usuário root tenha uma senha.
Aviso: Tenha cuidado quando estiver usando este método. Cada comando que você emita será executado felizmente, sem perguntas, mesmo que seja destrutiva.
Usando
sudo
para executar um shell bash abre uma nova concha com
raiz
como o usuário.
Sudo Bash
Observe que o prompt de comando muda. O caractere final do prompt é agora um hash "#" em vez de um caráter de dólar "$".
Como o corpo do prompt de comando é exibido varia de distribuição para distribuição. No Ubuntu, estamos informados de que o usuário é
raiz
e mostrou o nome do computador e o diretório de trabalho atual. A cor do prompt é alterada também.
Porque estamos
raiz
, podemos executar comandos que normalmente exigiriam o uso de
sudo
.
WC / etc / Shadow
Para sair da concha do usuário raiz, pressione "Ctrl + D" ou digite "EXIT" e pressione "Enter".
Sair
Menos Superman, mais Clark Kent
Se você estiver na lista de sudoers, você tem superpoderes sobre o seu sistema Linux. Apenas lembre-se, o Superman passa mais tempo como seu alter-ego leve que ele faz em sua capa vermelha.
Use sua conta de usuário regular tanto quanto possível. Apenas mudar para dentro
raiz
quando você realmente precisa.