Eu sou um cara do Unix da velha escola, então minhas habilidades em Linux provavelmente estão um pouco desatualizadas. Mas isso parece que deve ser bastante simples.
Em um sistema Red Hat Linux em que não possuo root (ele é administrado pelo departamento de TI da empresa), desejo poder alterar meu shell de login. Executar chsh me dá:
$ chsh -s /bin/bash
chsh: can only change local entries; use ypchsh instead.
Então, eu executei o ypchsh:
$ ypchsh userid
ypchsh: can't find the master ypserver: Internal NIS error
O que da? Alguém tem outras ideias?
Respostas:
NIS:
ypchsh
LDAP:
(O SEU_DN pode estar no formulário
uid=$USER,ou=people,dc=example,dc=org
; tenteldapwhoami
ver)Hesíodo: pergunte ao administrador do sistema.
Active Directory : pergunte ao administrador do sistema.
fonte
Eu usei uma solução alternativa para alterar meu shell no login. Acabei de colocar o
bash
que é usado para alterar o shell no meu.profile
arquivo.Você pode encontrar
.profile
no diretório inicial do usuário - usels -la
para vê-lo.Seu
.profile
arquivo pode ter algo como isto:fonte
.shellrc
(alterado para o nome correto do arquivo), mas também declaro uma variável de ambiente antes, eexec bash
somente se não estiver definida, para permitir a execução manual do shell e para evitar loops infelizes. Observe que você não precisa usar um dialeto de shell específico, pois você pode simplesmente executar um script com o shebang certo para executar essas operações.Portanto, a resposta real no meu caso é que os administradores de sistema (IT) querem bloquear a configuração padrão, então você precisa perguntar a eles. Porém, no processo, descobri alguns comandos mais úteis para descobrir sua configuração LDAP (se é assim que você está configurado), caso o sistema relate o mesmo erro SASL "ldap_sasl_interactive_bind_s: método de autenticação desconhecido (-6) : SASL (-4): nenhum mecanismo disponível: "
Liste os métodos de autenticação SASL suportados pelo seu sistema:
Os resultados podem ser algo como:
Em seguida, você pode passar o método de autenticação para os comandos LDAP usando a opção -Y da seguinte maneira:
fonte
Outra solução é simplesmente substituir seu shell YP:
Adicione esta linha ao seu
/etc/passwd
:Exemplo:
E adicione o seguinte ao seu
/etc/nsswitch.conf
:fonte
Outra maneira de ver as credenciais da resposta principal é
ldapsearch -x
fonte