Então, digamos que alguém digitou algo .bashrc
que impede que ele faça o login via ssh
(ou seja, o login do ssh sai por causa do erro no arquivo). Existe alguma maneira pela qual a pessoa possa fazer login sem executá-la (ou .bashrc
desde que uma execute a outra) ou excluir / renomear / invalidar o arquivo?
Suponha que você não tenha acesso físico à máquina e essa seja a única conta de usuário com capacidade de realizar o ssh.
Para referência: .bash_profile
inclui .bashrc
:
[[ -f ~/.bashrc ]] && . ~/.bashrc
Edit: Coisas que eu tentei:
ssh user@host "rm ~/.bashrc"
scp nothing user@host:/RAID/home/tom/.bashrc
ssh user@host "/bin/bash --norc"
Todos dão o erro:
/RAID/home/tom/.bashrc: line 16: /usr/local/bin/file: No such file or directory
/RAID/home/tom/.bashrc: line 16: exec: /usr/local/bin/file: cannot execute: No such file or directory
[ -z "$PS1" ] && return
no início de ./bashrc. Dessa forma, o scp interromperá a análise do .bashrc após a primeira linha, e você poderá substituí-lo em caso de emergência.