Aqui estão algumas maneiras em que posso pensar, desde o menos intrusivo até o mais intrusivo.
Sem reinicialização
Com o sudo: se você tiver sudo
permissões para executar passwd
, poderá fazer:
sudo passwd root
Digite sua senha e digite uma nova senha para o root duas vezes. Feito.
Editando arquivos : isso funciona no caso improvável de você não ter acesso completo de sudo
, mas fazer tenha acesso para editar /etc/{passwd,shadow}
. Abra /etc/shadow
, com sudoedit /etc/shadow
ou com sudo $EDITOR /etc/shadow
. Substitua o campo de senha do root (todos os caracteres aleatórios entre o segundo e o terceiro colons :
) com o campo de senha do seu próprio usuário. Salve . O local tem a mesma senha que você. Faça o login e mude a senha para outra coisa.
Estes são os mais fáceis.
Reinicialização necessária
Modo de usuário único : isso foi explicado apenas por Renan. Ele funciona se você puder acessar o GRUB (ou o seu gerenciador de inicialização) e editar a linha de comando do Linux. Não funciona se você usa Debian, Ubuntu e outros. Algumas configurações do carregador de inicialização exigem uma senha para isso e você deve saber isso para continuar. Sem mais delongas:
- Reinicialize.
- Insira a senha de tempo de inicialização, se houver.
- Insira o menu do seu carregador de inicialização.
- Se o modo de usuário único estiver disponível, selecione-o (o Debian chama de "modo de recuperação").
- Se não, e você executa o GRUB:
- Realce sua opção de inicialização normal.
- Pressione e para entrar no modo de edição. Você pode ser solicitado a inserir uma senha do GRUB.
- Realce a linha que começa com
kernel
oulinux
. - Pressione e .
- Adicione a palavra "single" no final. (não esqueça de preceder um espaço!)
- Pressione Enter e inicialize a sub-rotina editada. Alguns GRUBs usam Ctrl - X , alguns usam b . Ele diz qual deles está na parte inferior da tela.
Seu sistema será inicializado no modo de usuário único. Algumas distribuições não lhe pedirão uma senha de root neste momento (as que usam Debian e Debian). Você é a raiz agora. Altere sua senha:
mount / -o remount,rw
passwd # Enter your new password twice at the prompts
mount / -o remount,ro
sync # some people sync multiple times. Do what pleases you.
reboot
e reboot
, ou, se você souber o seu nível de execução normal, diga telinit 2
(ou seja o que for).
Substituindo init
: superficialmente semelhante ao truque do modo de usuário único, com basicamente as mesmas instruções, mas requer muito mais destreza com a linha de comando. Você inicializa seu kernel como acima, mas em vez de single
, você adiciona init=/bin/sh
. Isso executará /bin/sh
no lugar de init
e fornecerá uma concha inicial muito com quase nenhuma comodidade. Neste ponto, seu objetivo é:
- Monte o volume da raiz.
- Obtenha
passwd
em execução. - Altere sua senha com o comando
passwd
.
Dependendo da sua configuração particular, elas podem ser triviais (idênticas às instruções para o modo de usuário único) ou altamente não-triviais: carregar módulos, inicializar RAID de software, abrir volumes criptografados, iniciar o LVM, etc. Sem init
, você não está executando daemons ou qualquer outro processo, mas /bin/sh
e seus filhos, então você está literalmente sozinho. Você também não tem controle de trabalho, então tenha cuidado com o que você digita. Um cat
perdido e você pode ter que reiniciar se não conseguir sair dele.
Disco de resgate : este é fácil. Inicialize um disco de recuperação de sua escolha. Monte seu sistema de arquivos raiz. O processo depende de como seus volumes são dispostos em camadas, mas eventualmente se resume a:
# do some stuff to make your root volume available.
# The rescue disk may, or may not do it automatically.
mkdir /tmp/my-root
mount /dev/$SOME_ROOT_DEV /tmp/my-root
$EDITOR /tmp/my-root/etc/shadow
# Follow the '/etc/shadow' editing instructions near the top
cd /
umount /tmp/my-root
reboot
Obviamente, $SOME_ROOT_DEV
é qualquer nome de dispositivo de bloco atribuído ao seu sistema de arquivos raiz pelo disco de recuperação e $EDITOR
é seu editor favorito (que pode ser vi
no sistema de recuperação). Após o reboot
, permita que a máquina inicialize normalmente; A senha do root será a do seu próprio usuário. Faça o login como root e altere-o imediatamente.
Outras formas
Obviamente, existem inúmeras variações para o acima. Todos eles se resumem em duas etapas:
- Obtenha acesso root ao computador (catch-22 - e o verdadeiro truque)
- Altere a senha do root de alguma forma.