Terminal fecha imediatamente após tentar alterar o shell script de volta para o bash

2

Eu estava brincando com fish shell no meu Ubuntu, mas queria voltar ao bash. Eu tentei correr

chsh -s /bin/bash

mas isso não funcionou, recebi algum erro, que o IIRC estava a respeito de permissões, então tentei fazer

sudo chsh -s /bin/bash 

Isso pareceu funcionar e não mostrou nenhum erro. Então, procuro fazer logout e logar novamente para ver os efeitos dessa alteração. Mas a partir de então, toda vez que eu tento abrir o terminal, ele fecha imediatamente.

Alguém sabe o que eu fiz de errado?

    
por Zinthos 23.01.2017 / 09:25

1 resposta

2

Consegui resolver isso sozinho. Permita-me explicar:

Eu fui ao console virtual com ctrl + alt + F1, em seguida, tentei fazer login lá, mas o mesmo problema aconteceu, eu era uma mensagem rápida aparecer e eu estava de volta ao estágio de login no console virtual. A mensagem foi muito rápida, mas consegui pegar minha câmera.

Acontece que foi um erro com o shell de peixe: (não sei exatamente como eu causei esse erro)

fish: relocation error: fish: symbol _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE7reserveEm, version GLIBCXX_3.4.21 not defined in file libstdc++.so.6 with link time reference

Então isso me disse que o fish shell ainda era meu script de shell padrão sudo chsh -s /bin/bash não fez o truque para mim. Eu pude confirmar isso checando /etc/passwd e vi que meu usuário ainda tem /usr/bin/fish e o peixe foi quebrado de alguma forma que causou o fechamento imediato do terminal. Finalmente encontrei a raiz do problema!

Eu então procuro editar o meu arquivo passwd executando o bash no grub como root seguindo as instruções aqui: link onde eu simplesmente encontrei a linha com meu nome de usuário e mudei /usr/bin/bash de volta para /bin/bash e então tudo ficou bom de novo!

    
por Zinthos 11.02.2017 / 02:40