A melhor maneira de abordar isso é usar o sudo ao criar scripts para outro usuário . Isso permitirá especificamente designar o não uso de uma senha e permitir a transição para um usuário bloqueado por senha.
Eu preciso configurar túneis SSH do Ubuntu no início do sistema. Eu tenho scripts que funcionam bem sob o Debian squeeze. No Ubuntu, no entanto, o comando su requer a inserção de uma senha de usuário que quebra o script de inicialização.
Em detalhes:
Dentro do daemon start-script, o autossh é iniciado com um usuário específico por túnel.
Esses usuários são criados antes com
adduser ... --disabled-password
A seguinte linha no script de inicialização:
su -s /bin/sh $USER -c "$AUTOSSH $TUNNEL"
gera uma solicitação de senha (no Ubuntu), mesmo que o PW do usuário do encapsulamento esteja desabilitado. Isso interrompe o script para que o serviço não seja iniciado.
Eu já tentei apagar o PW do usuário do túnel (caso houvesse algum padrão de PW criado durante a criação), mas isso não alterou nada. A pesquisa na Web não trouxe uma solução. Se necessário, eu poderia fornecer uma senha como parâmetro para o comando su, mas não encontrei essa opção.
Alguma idéia de como resolver isso? Obrigado!
A melhor maneira de abordar isso é usar o sudo ao criar scripts para outro usuário . Isso permitirá especificamente designar o não uso de uma senha e permitir a transição para um usuário bloqueado por senha.
Tags linux ubuntu-12.04