ypchsh não mudando para alguns shells

2

Atualmente estou no bash mas quero alterar meu shell para o tcsh. Eu usei ypchsh, digitei minha senha quando solicitado e alterei o shell de login para / bin / tcsh. E parece que funcionou porque recebo uma mensagem que diz "O shell de login foi alterado em [domínio]". Então eu fiz o logout e fiz o login novamente. Eu fiz echo $ 0 para checar meu shell atual, mas ele diz que eu ainda estou em / bin / bash. No entanto, quando eu faço echo $ SHELL eu recebo / bin / tcsh. E quando eu faço ps, ele mostra que o bash está rodando em vez de tcsh.

Outras etapas de resolução de problemas tomadas: Tentei executar as mesmas etapas para alternar para shells diferentes, como sh e ksh, que funcionam. No entanto, mudar para csh me dá o mesmo resultado que tentar mudar para o tcsh. Checked / etc / shells e tcsh são listados. Eu também tentei exec tcsh mas o sistema ainda está em execução bash.

Estou tentando fazer isso em uma conta da escola, então talvez haja um problema de permissão. Embora um dos meus colegas tenha conseguido que sua conta mudasse de shell. Se não há permissão existe como arquivo que preciso configurar?

[user@machine ~]> echo $0
/bin/bash
[user@machine ~]> echo $SHELL
/bin/tcsh
[user@machine ~]> ypchsh
Changing NIS account information for user on machine
Please enter password:

Changing login shell for user on machine
To accept the default, simply press return. To use the
system's default shell, type the word "none".
Login shell [/bin/tcsh]: /bin/tcsh

The login shell has been changed on machine

[user@machine ~]> logout

[user@machine ~]> echo $0
/bin/bash
[user@machine ~]> echo $SHELL
/bin/tcsh
[user@machine ~]> FOO=BAR
[user@machine ~]> ps
  PID TTY          TIME CMD
14549 pts/21   00:00:00 bash
14780 pts/21   00:00:00 ps
[user@machine ~]> exec /bin/tcsh
[user@machine ~]> echo $0
/bin/bash
[user@machine ~]> echo $SHELL
/bin/tcsh
[user@machine ~]> FOO=BAR
[user@machine ~]>

[user@machine ~]> uname -a
Linux machine 2.6.32-696.3.2.el6.i686 #1 SMP Tue Jun 20 00:48:23 UTC 2017 i686 i686 i386 GNU/Linux
[user@machine ~]> /bin/ls -ld
drwx--s--x 49 user group 4096 Sep  1 13:08 .
[user@machine ~]> /bin/*sh
/bin/csh: /bin/csh: cannot execute binary file
[user@machine ~]> /usr/bin/*sh
Usage: amuFormat.sh <Card Type> <drive>
<Card Type> has to be defined in amuFormat.sh itself
<drive> has to be defined in mtools.conf
    
por Alice 02.09.2017 / 03:20

1 resposta

0

A razão pela qual meu shell continua voltando ao bash e até mesmo me impedindo de usar exec para entrar no tcsh foi porque no arquivo .cshrc havia uma linha que diz exec /bin/bash -l lá. Para corrigir isso, eu removi essa linha e, a partir desse ponto, posso trocar os shells.

    
por 08.09.2017 / 03:58

Tags