script para su com senha no script sem raiz


8

Eu escrevi um processo que envolve a atualização de links simbólicos em arquivos localizados em três máquinas diferentes. Nessas máquinas, existem 4 usuários cada um, cada um com os quais esses links devem ser atualizados.

Usando su, existe uma maneira de passar o argumento da senha para o comando em uma única linha, sem chamar o sudo, pois os usuários não terão direitos de administrador?

Minha única solução alternativa neste momento é ssh, mas eu gostaria de poder fazer isso sem codificar em um monte de hosts / ips.

Respostas:


3

Você pode canalizar a senha para su como este:

echo pa$$w0rd | su -c whoami user_1

11
Obtendo o erro "O padrão deve ser um tty"
Triplell89

Você está usando ssh? Tente a opção -t para ssh.
gogators

@KevinVW, não vejo -t como opção no su.
Maestromani

O -t é para ssh, não su. Se força uma pseudo-tty para que su possa ler a senha do stdin.
Gogators #
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.