-
Samba-Benutzer erstellen
Hallo,
ich möchte gerne per Skript Samba-Benutzer einrichten.
Leider bekomme ich das nicht hin.
Code:
# smbpasswd -a benutzer kennwort
führt ebenso zu Fehlern wie
Code:
# smbpasswd -w kennwort -a benutzer
Wäre gut, wenn mir jemand einen Tipp geben könnte. Komme nä(h)mlich nicht weiter. Im Forum und Netz habe ich leider auch nix passendes gefunden.
thx,
sallo
-
Wir haben kürzlich unsere Glaskugeln den Opfern der Flutkatastrophe gespendet. Vielleicht postet du die Fehlermeldungen?
-
Alles klar, kein Problem.
Hier ist anscheinend er Aufruf generell falsch. Aber ich habe ihn so mehrfach im Netz gefunden?
Code:
pinky:/home/sst/documents# ./bsp1
When run by root:
smbpasswd [options] [username]
otherwise:
smbpasswd [options]
options:
-L local mode (must be first option)
-h print this usage message
-s use stdin for password prompt
-c smb.conf file Use the given path to the smb.conf file
-D LEVEL debug level
-r MACHINE remote machine
-U USER remote username
extra options when run by root or in local mode:
-a add user
-d disable user
-e enable user
-i interdomain trust account
-m machine trust account
-n set no password
-w PASSWORD ldap admin password
-x delete user
-R ORDER name resolve order
Beim zweiten Bespiel wird der Benutzername anscheinend nicht erkannt. Aber das Kennwort entsprechend eingelesen.
Code:
pinky:/home/sst/documents# ./bsp2
Setting stored password for "" in secrets.tdb
-
Da müssten wir schon die Scripts, oder noch besser, die ausgabe von
Code:
sh -x bsp1
sh -x bsp2
gepostet haben.
-
Hallo,
jetzt komme ich endlich mal dazu hier die Testskripte und die entsprechenden Ausgaben dazu zu posten. Ich hoffe mal, das jemand eine Lösung hat und mir sagen kann wie ich einen Samba-Benutzer aus einem Skript heraus anlegen kann (Benutzername und Kennwort sind in Variablen gespeichert).
Skript 'bsp1':
Code:
#!/bin/sh
smbpasswd -a benutzer kennwort
Hier die Ausgaben:
Code:
root@brain:/home/sst/documents/tmp # sh -x bsp1
+ smbpasswd -a benutzer kennwort
When run by root:
smbpasswd [options] [username]
otherwise:
smbpasswd [options]
options:
-L local mode (must be first option)
-h print this usage message
-s use stdin for password prompt
-c smb.conf file Use the given path to the smb.conf file
-D LEVEL debug level
-r MACHINE remote machine
-U USER remote username
extra options when run by root or in local mode:
-a add user
-d disable user
-e enable user
-i interdomain trust account
-m machine trust account
-n set no password
-w PASSWORD ldap admin password
-x delete user
-R ORDER name resolve order
root@brain:/home/sst/documents/tmp #
Skript 'bsp2':
Code:
#!/bin/sh
smbpasswd -w kennwort -a benutzer
Ausgaben von 'bsp2':
Code:
root@brain:/home/sst/documents/tmp # sh -x bsp2
+ smbpasswd -w kennwort -a benutzer
Setting stored password for "" in secrets.tdb
thx
-sallo
-
Ist mir gerade aufgefallen, dass du smbpasswd falsch aufrufst, richtig müsste es heißen
Code:
smbpasswd -a username
das Kennwort muss dann mittels Tastatur eingegeben werden. Mir ist es bis jetzt noch nicht gelungen, das mit einer Pipe zu lösen.
-
echo kennwort|smbpasswd -a user
sollte gehen
mfg martin
-
Tut es aber nicht, das hatte ich auch schon ausprobiert.
-
etwas umständlicher: perl --- open2
-
kann man da nicht auch was mit expect machen?
greetz
-
Lösung
Hi,
nach einigem Suchen habe ich eine Lösung gefunden und wollte sie euch nicht vorenthalten:
Code:
(echo $KENNWORT; echo $KENNWORT) | smbpasswd -s -a $BENUTZERNAME
Vielen Dank für eure Antworten!
-sallo
-
ist zwar in php, aber da ist die syntax von expect halbwegs ersichtlich..
http://www.mrunix.de/forums/showthread.php?t=40704
greetz