'Batch' unter RedHat 7.2

Hallo,

da ich von den grafischen Tools Usermanager etc. nicht beeindruckt bin (unterschiedliche oder keine Anzeigen) würde ich gern ein „Batch“ schreiben.

Was will ich nach dem Aufruf erreichen:

  1. Abfrage des Username
  2. Abfrage des Password für Linux und SMB
  3. Übernahme des Users in die Linuxgruppe WIN_GROUP

Ich möchte nicht immer ./winuser sondern nur noch winuser eingeben.

Mein erster Versuch: winuser
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#!/bin/sh
useradd -G WIN_GROUP -d /home/windows/users/$1 -p 123456 $1
passwd $1
/etc/samba/smbpasswd -a $1
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Passwd funktioniert leider nicht.
Ich muss anschließend immer die Passwörter manuell (Shell) eingeben!???

Gruß
Ralf

Hallo Ralf

Ich möchte nicht immer ./winuser sondern nur noch winuser
eingeben.

Pfad zum Script in den Suchpfad legen oder Script in ein Verzeichnis legen, das im Suchpfad liegt z.B. /sbin

Mein erster Versuch: winuser
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#!/bin/sh
useradd -G WIN_GROUP -d /home/windows/users/$1 -p 123456 $1
passwd $1
/etc/samba/smbpasswd -a $1
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Dem -p bei useradd muss ein verschlüsseltes Password folgen. Ein verschlüsseltes Passwort erhältst Du über den ersten Umweg der C-Funktion crypt() oder über ein passwd, copy&paste des Passworts aus der shadow und anschliessendem Rücksetzten deines Passworts in der shadow.

Passwd funktioniert leider nicht.
Ich muss anschließend immer die Passwörter manuell (Shell)
eingeben!???

passwd erfordert eine Interaktion mit dem User. Das läßt sich IMHO auch nicht abschalten. Ein anderer Weg wär den User und das verschlüsselte Password per Script in die /etc/shadow zu schreiben. Also z.B.
echo „$1:sWHrFASxZjsNw:11657:0:90:7:::“ >> /etc/shadow
Was aber nicht nötig ist, da ja -p das Passwort schon in die /etc/shadow schreibt.

Jetzt muss nur noch den Usern klar gemacht werden, dass Sie ihr Passwort bei der ersten Anmeldung ändern müssen. Läßt sich über /etc/profile realisieren.

Grüße
Martin

Hallo Martin,

Pfad zum Script in den Suchpfad legen oder Script in ein
Verzeichnis legen, das im Suchpfad liegt z.B. /sbin

Das habe ich doch gleich mal getestet:

#!/bin/sh

Dateiname: rs

/etc/rc.d/init.d/smb restart

ende

Und es funktioniert! Nun werde ich mehr erst mal viele „Batch“ bauen die mir das leben etwas erleichtern sollen.
Es ist schön mal keinen Verweis auf Google erhalten zu haben, den dort finden Newbies keinen roten Faden.

Den Rest werde ich Morgen testen.

Danke Ralf

Mein erster Versuch: winuser
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#!/bin/sh
useradd -G WIN_GROUP -d /home/windows/users/$1 -p 123456 $1
passwd $1
/etc/samba/smbpasswd -a $1
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Dem -p bei useradd muss ein verschlüsseltes Password folgen.
Ein verschlüsseltes Passwort erhältst Du über den ersten Umweg
der C-Funktion crypt() oder über ein passwd, copy&paste des
Passworts aus der shadow und anschliessendem Rücksetzten
deines Passworts in der shadow.

Passwd funktioniert leider nicht.
Ich muss anschließend immer die Passwörter manuell (Shell)
eingeben!???

passwd erfordert eine Interaktion mit dem User. Das läßt sich
IMHO auch nicht abschalten. Ein anderer Weg wär den User und
das verschlüsselte Password per Script in die /etc/shadow zu
schreiben. Also z.B.
echo „$1:sWHrFASxZjsNw:11657:0:90:7:::“ >> /etc/shadow
Was aber nicht nötig ist, da ja -p das Passwort schon in die
/etc/shadow schreibt.

Jetzt muss nur noch den Usern klar gemacht werden, dass Sie
ihr Passwort bei der ersten Anmeldung ändern müssen. Läßt sich
über /etc/profile realisieren.

Grüße
Martin

[…]

Und es funktioniert! Nun werde ich mehr erst mal viele „Batch“
bauen die mir das leben etwas erleichtern sollen.

Vielleicht mal kein Hinweis auf Google, aber auf die Dokumentation zur Bash-Programmierung:

http://www.linuxdoc.org/HOWTO/Bash-Prog-Intro-HOWTO…

sowie

http://www.linuxdoc.org/LDP/abs/html/

Gruß

Fritze

Hallo Fritze,

vielen Dank für die guten Links.

Ralf

http://www.linuxdoc.org/HOWTO/Bash-Prog-Intro-HOWTO…

http://www.linuxdoc.org/LDP/abs/html/

Gruß

Fritze