Frage

Wie kann ich das neue Passwort an smbpasswd weiterleiten, damit ich meinen Installationsprozess automatisieren kann?

War es hilfreich?

Lösung

Dank Mark habe ich die Antwort gefunden:

(echo newpassword; echo confirmNewPassword) | smbpasswd -s

Übrigens:(echo oldpasswd;Echo NewPasswd) | Smbpasswd -s funktioniert nicht.

Andere Tipps

Ich verwende Folgendes in einem meiner Skripte:

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

Mit Echo:

-e:Escape-Sequenzen wie

-N :Fügen Sie am Ende keinen impliziten Zeilenumbruch hinzu

Mit smbpasswd:

-A :neuen Benutzer hinzufügen

-S :still

Versuchen Sie etwas wie Folgendes:

(echo oldpasswd; echo newpasswd) | smbpasswd -s

Benutze dasecho 'somepassword' | tee - | smbpasswd -s

Dies ist aus zwei Gründen leider nicht wünschenswert:1) Wenn der Benutzer eine Kombination aus ' n' im Kennwort verwendet

Ein besserer Weg wäre, die Namen in eine Datei zu schreiben und aus der Datei zu lesen und Python Pexpect zu verwenden, um sie zu lesen, nicht wie unten, aber das einfache Skript reicht aus, um zu sehen, wie man Pexpect verwendet

#!/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)

dann versuche es:./smbpasswd.py userName1 'f#@(&*(_ 895'

Ich musste einen neuen Samba-Benutzer in einer Puppet 5.x Exec-Ressource erstellen und aus verschiedenen Gründen funktionierte keiner der oben genannten Schritte.Glücklicherweise hat dieser ziemlich albern aussehende Befehl funktioniert:

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

Das Passwort hier ist natürlich „vagrant“.

entweder verwenden Pipelines oder Umleitung.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top