Pessoal estou colocando esta dica por dois motivos: (1) Essa comunidade do Viva O Linux é muito séria e (2) não encontrei uma dica para resolver este problema.
Caso tenham alguma coisa parecido, podem criticar.
Imagine que alguém deletou o usuário root do servidor Linux do cliente que você administra, por acidente ou intencional. Os serviços que necessitam subir acessando o usuário root, vão parar no próximo boot do sistema, você poderá ter um problemão para resolver até que volte tudo operacional, sem contar que seu sistema fica ilhado, sem administração até que o root seja recuperado.
Dica:
Dê boot via CD-ROM com qualquer distribuição Linux (Ubuntu, Debian, Kurumin, etc.)
Vá para root no sistema:
$ su -
Monte o file system onde está instalado o / do seu sistema em qualquer diretório:
# mkdir /tmp/disco # mount /dev/hda3 /tmp/disco
Entre no diretório de /tmp/disco/etc e altere os seguintes arquivos:
passwd
shadow
group
Com editor de texto vi edite cada um dos arquivos como segue abaixo e crie o usuário novamente na mão:
1º) # vi /tmp/disco/etc/passwd
Insira a linha:
root:x:0:0:root:/root:/bin/bash
2º) # vi /tmp/disco/etc/shadow
Insira a linha:
root::13892:0:99999:7:::
OBS: nos números acima (13892:0:99999:7:::) coloque a mesma numeração que já existe nos outros usuários criados no arquivo.
3º) # vi /tmp/disco/etc/group
Insira a linha:
root:x:0:
Após este passo, o root foi criado mas ainda não possui senha, desmonte o file system:
# umount /tmp/disco ou umount /dev/hda3
Boote o sistema normalmente sem o CD-ROM e no prompt entre com o login root, observe que ele entrará direto sem pedir senha. Crie uma nova password para o root
# passwd root
Enter new UNIX password:xxxxxxx
Retype new UNIX password:xxxxxxx
Amigos, espero ter ajudado alguém que estava precisando. Valeu.
[2] Comentário enviado por gomes.marcelo em 01/02/2008 - 02:01h
Desculpe amigo, mas para mim são, todos os documentos postados aqui que utilizei funcionaram 100 %, obvio que não são documentos para leigos em Linux, por isso acho a comunidade séria.
[3] Comentário enviado por cah em 16/07/2008 - 11:10h
marcelo,
deletei o usuario root fazendo um teste e agora preciso recuperá-lo, pois nao consigo fazer nada no sistema (editar, deletar, etc).
Logo na primeira linha diz para dar o boot via cdrom.
Estou usando o debian 1:1.1.3-4. No Debian Installer main menu eu entrei em execute a shell.
Bem, la não consigo ir para o root do sistema!
quando digito su - na linha de comando obtenho a resposta:
/bin/sh: su:not found
[4] Comentário enviado por cah em 16/07/2008 - 12:24h
Estava com medo de arriscar, ja que corria o risco de talvez formatar todo o hd e perder tudo!
Bem, acabei arriscando.
Estou usando o cd de boot do debian 1:1.1.3-4.
Seguindo a dica do marcelo, segue algumas obs:
1. Ao entrar em Execute a shell (Debian installer menu) vc jah eh o root, nao precisa dar su -
2. Quando se buta pelo cd ele cria um mini sistema para vc trabalhar, mini mesmo, reconhece poucos comandos, apenas o basico.. por exemplo no meu caso nao tinha o vi, porem continha o nano.
4. Para vc acessar as informações do seu hd vc tem que montá-lo. Ao montar, nao conseguia montar o hd pq ele nao estava em /dev/hda3
Como o sistema eh mini nao reconhecia os comandos: dmesg e nem fdisk para auxiliar-me, entao, montei todos que iniciavam com "h", até encontrá-lo. Dectetei em /dev/hdc2.
Fora essas diferenças segui a dica do marcelo, e consegui estou com o root de volta!