Domanda

Come posso reindirizzare la nuova password a smbpasswd in modo da poter automatizzare il processo di installazione.

È stato utile?

Soluzione

Grazie a Mark ho trovato la risposta:

(echo newpassword; echo confirmNewPassword) | smbpasswd -s

A proposito:(echo vecchiapasswd;echo newpasswd) | sMBPasswd -s non funziona.

Altri suggerimenti

Utilizzo quanto segue in uno dei miei script:

   echo -ne "$PASS\n$PASS\n" | smbpasswd -a -s $LOGIN

Con eco:

-e:sequenze di escape, come

-N :non aggiungere una nuova riga implicita alla fine

Con smbpasswd:

-UN :aggiungi nuovo utente

-S :silenzioso

Prova qualcosa del genere:

(echo oldpasswd; echo newpasswd) | smbpasswd -s

Usa questoecho 'somepassword' | tee - | smbpasswd -s

Ciò purtroppo non è auspicabile per due motivi:1) Se l'utente utilizza una combinazione di ' n' nella password, ci sarà una mancata corrispondenza nell'input 2) Se ci sono utenti UNIX sul sistema, un utente che utilizza l'utilità PS può vedere la password

Un modo migliore sarebbe quello di inserire i nomi in un file e leggere dal file e usare python pexpect per leggerli, non come sotto, ma il semplice script è sufficiente per vedere come usare pexpect

#!/usr/bin/python
#converted from: http://pexpect.sourceforge.net/pexpect.html
#child = pexpect.spawn('scp foo myname@host.example.com:.')
#child.expect ('Password:')
#child.sendline (mypassword)
import pexpect
import sys
user=sys.argv[1]
passwd=sys.argv[2]
child = pexpect.spawn('/usr/bin/smbpasswd -a '+str(user))
child.expect('New SMB password:')
child.sendline (passwd)
child.expect ('Retype new SMB password:')
child.sendline (passwd)

allora prova:./smbpasswd.py nomeutente1 'f#@(&*(_ 895'

Ho dovuto creare un nuovo utente Samba in una risorsa Puppet 5.x Exec e per vari motivi nessuno dei precedenti ha funzionato.Fortunatamente questo comando dall'aspetto piuttosto sciocco ha funzionato:

yes vagrant|head -n 2|smbpasswd -a -s vagrant

La password qui è ovviamente "vagabondo".

utilizzando uno dei due condutture O reindirizzamento.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top