Eu estou em um Google Compute Engine que está executando o Debian Wheezy 7.4.
Eu tenho notado coisas estranhas recentemente. Por exemplo, posso fazer sudo bash . Mas, da raiz, não consigo fazer sudo -u anotherUser bash ou su -l anotheruser -c bash .
E, ainda mais importante, não consigo iniciar novas instâncias da tela do GNU. Se eu tentar iniciar uma nova instância, ela será imediatamente encerrada e receberei a mensagem [screen is terminating] . Nas instâncias que estavam em execução, não pude iniciar mais janelas.
Então eu encontrei o que todos tinham em comum: bash !
Eu posso fazer screen zsh ou screen sh .
Eu posso fazer sudo bash e, em seguida, sudo -u anotheruser zsh ou su -l anotheruser -s zsh , mas NÃO su -l anotheruser -c zsh .
Note que eu estou fazendo login com o bash e posso fazer sudo bash . Mas eu não posso usar o bash para sudo ou su da raiz para outro usuário, nem posso usar o bash para uma screen shell.
Eu reiniciei. Sim, isso me preocupou tanto que eu realmente reiniciei meu servidor.
Eu não tenho ideia do que pode causar isso e estou um pouco preocupado.
Meus arquivos de configuração bash (como para eu sei que eles estão inalterados desde o padrão):
-
/etc/bash.bashrc : link
-
~/.bashrc : link
A conclusão do bash funciona no shell principal (login).
Aqui está a informação solicitada por Glenn Jackman:
$ md5sum /bin/bash /usr/bin/bash
144968564a6b1159ed82059920cea76f /bin/bash
md5sum: /usr/bin/bash: No such file or directory
$ getent passwd anotheruser
anotheruser:x:1004:1004::/home/anotheruser:/bin/bash
Também pensei em outro teste. Isso funciona:
$ echo $(bash -c 'echo Hello, World!')
O que está acontecendo?