![](https://seccdn.libravatar.org/avatar/e011bcaa9d83e23942137871850a6862.jpg?s=120&d=mm&r=g)
Joachim Kieferle wrote:
Hallo Liste,
irgendwie komme ich trotz diverser Anleitungen nicht weiter. Aber vielleicht hat jemand von Euch einen Tip:
Da ich viele User auf dem Server habe, lege ich die jeweils mit einem sehr einfachen Skript an. Dazu habe ich
[ ... ] Hallo Leute, habe jetzt mein Skript fertig und poste es, da sicher die/der ein- oder andere mal über dieses Problem stolpern wird. Die Daten für die neue/n Benutzer/innen generiere ich aus einer Filemaker-Datenbank, da ich die gleich noch für etwas anderes benötige. Wegen der Lesbarkeit habe ich das Skript bei den Infos für die User etwas reduziert. Pro Account schicke ich dann eine Mail an root (um genauer zu sein, an das Alias) und drucke dann jeweils eine Mailseite / User aus. Den Namen des Skriptes sage ich lieber nicht, sonst gibt's gleich wieder einen Flamewar ;-)). Anregungen / Verbesserungstips sind natürlich gerne willkommen. Danke für Eure Unterstützung, schönen Sonntag Joachim ++++++++++++++++++ Skript ohne Namen ;-)) ++++++++++++++++++++ #! /bin/sh # Reihenfolge der Eintraege in "userdaten.csv" # 1= Vornmae # 2= Nachname # 3= MatrNr # 4= Login # 5= Passwort # 6= gueltig_bis # 7= quota # 8= Gruppen # 9= private_E-mail # 10= lfd_Nr # 11= angelegt_am # 12= drucken # 13= ws02pr4_betreuer # ---- evtl. vorhandene Files loeschen --- rm -f /root/verwaltung/user/2-user-vorhanden.sh rm -f /root/verwaltung/user/3-richtig-anlegen.sh rm -f /root/verwaltung/user/temp1 rm -f /root/verwaltung/user/temp-mail # --- userdaten.csv vorbereiten (aus Datenbank generiert) und zum Ausdrucken # ----nach Nachname sortieren --- sed s/'","'/:/g /root/verwaltung/user/userdaten.csv > /root/verwaltung/user/userdaten.csv.bak sed s/'"'//g /root/verwaltung/user/userdaten.csv.bak > /root/verwaltung/user/userdaten.csv sort -t: -k2 -o /root/verwaltung/user/userdaten.csv /root/verwaltung/user/userdaten.csv rm -f /root/verwaltung/user/userdaten.csv.bak # ---- User anlegen vorbereiten --- awk -F: ' { print "useradd -c \""$1" "$2"\" -d /export/home/1/"$4" -e "$6" -G "$8" -m -s /bin/false "$4 print "smbpasswd -a "$4" "$5 print "setquota "$4" "$7" "$7" 0 0 -a" }' /root/verwaltung/user/userdaten.csv >> /root/verwaltung/user/3-richtig-anlegen.sh chmod 700 /root/verwaltung/user/3-richtig-anlegen.sh # ---- einfaches Skript, ob user vorhanden vorbereiten --- awk -F: ' { print "finger "$4 "| grep Login" }' /root/verwaltung/user/userdaten.csv >> /root/verwaltung/user/2-user-vorhanden.sh chmod 700 /root/verwaltung/user/2-user-vorhanden.sh # --- 1 Mail pro Account erzeugen --- for user in `cat /root/verwaltung/user/userdaten.csv`; do echo $user > /root/verwaltung/user/temp1 awk -F: ' { print "Vorname: "$1 print "Nachname: "$2 print "Matr. Nr.: "$3 print "------------------------" print "Login: "$4 print "Passwort: "$5 print "------------------------" print "gueltig bis: "$6 print "Gruppen: "$8 print "" print "" print "" print "-------- BITTE BEACHTEN SIE -------" print "" print "Wenn Sie dieses Datenblatt erhalten, ändern Sie bitte UMGEHEND" print "Ihr Passwort." print "... und hier noch jede Menge Info" }' /root/verwaltung/user/temp1 > /root/verwaltung/user/temp-mail # Mail pro User verschicken, sleep damit die alphabet. Reihenfolge stimmt. nachname=`awk -F: '{print $2}' /root/verwaltung/user/temp1` vorname=`awk -F: '{print $1}' /root/verwaltung/user/temp1` sleep 1 mail -s "Account fuer $nachname, $vorname angelegt" root < /root/verwaltung/user/temp-mail done rm -f /root/verwaltung/user/temp1 rm -f /root/verwaltung/user/temp-mail echo echo echo Bitte mit 2-user-vorhanden.sh pruefen, echo ob die User nicht schon anngelegt sind und echo echo mit 3-richtig-anlegen.sh die Accounts einrichten.