Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

User Import aus Textdatei

Frage Linux Debian

Mitglied: speedy-luis

speedy-luis (Level 1) - Jetzt verbinden

14.02.2014 um 13:02 Uhr, 1471 Aufrufe, 4 Kommentare

Hallo Miteinander!

Ich möchte in Linux einige User automatisiert erstellen bzw. importieren.
Dazu habe ich eine Textdatei, welche aus zwei Spalten besteht. In der ersten ist der Username in der zweiten das Passwort. (Fragt nicht, ist von meinem "Vorgänger")

Für die User soll ein Homeverzeichnis angelegt werden und es soll allen die /bin/false zugewiesen werden.

Wie löse ich das am besten?

Gruß Speedy

Mitglied: Clijsters
14.02.2014 um 18:49 Uhr
Hi Speedy!

Erstmal der obligatorische Hinweis: Linux Benutzer erstellen

Schau mal, sowas könnte was sein: Create Users from CSV Stammt aus der oben aufgeführten Suche

Und gucke mal, hier werden z.B. User mit Eingabeaufforderung erstellt: Kommt auch aus der obigen Suche
01.
#!/bin/bash 
02.
# Script to add a user to Linux system 
03.
if [ $(id -u) -eq 0 ]; then 
04.
	read -p "Enter username : " username 
05.
	read -s -p "Enter password : " password 
06.
	egrep "^$username" /etc/passwd >/dev/null 
07.
	if [ $? -eq 0 ]; then 
08.
		echo "$username exists!" 
09.
		exit 1 
10.
	else 
11.
		pass=$(perl -e 'print crypt($ARGV[0], "password")' $password) 
12.
#Der eigentliche Kram passiert hier: 
13.
		useradd -m -p $pass $username 
14.
		[ $? -eq 0 ] && echo "User has been added to system!" || echo "Failed to add a user!" 
15.
	fi 
16.
else 
17.
	echo "Only root may add a user to the system" 
18.
	exit 2 
19.
fi
Das Einlesen aus einer CSV ist in den ersten Google-Links in mehreren Varianten beschrieben.

Beste Grüße
Dominique
Bitte warten ..
Mitglied: speedy-luis
18.02.2014, aktualisiert um 11:55 Uhr
Hallo Clijsters,

danke für deine Antwort, aber das hilft mir nicht weiter.
Natürlich habe ich schon einiges gegoogelt, finde aber nichts passendes.

Ich brauch ein Script, das mir alle User aus der CSV automatisch mit Homeverzeichnis und der /bin/false anlegt.

Mittlerweile habe ich das auch lösen können via Webmin. Doch ich hätte das gerne via Shell gelöst, da man ja etwas dazu lernen möchte.

Ich war auch schon soweit, dass ich den Befehl für alle User angezeigt bekomme. Es fehlt hier noch die Zuweisung der /bin/false und ein weiteres Problem ist, dass sich Linux mit den Passwörtern verschluckt, da in diesen Sonderzeichen enthalten sind.

while read a; do awk -F';' '{printf "useradd -m -p %s %s\n", $1, $2}'; done < /Pfad/Datei.csv

Vielleicht hat mir noch jemand einen Tipp.

Gruß Speedy
Bitte warten ..
Mitglied: Clijsters
18.02.2014 um 15:35 Uhr
Hallo Speedy,
Zitat von speedy-luis:
while read a; do awk -F';' '{printf "useradd -m -p %s %s\n", $1, $2}'; done < /Pfad/Datei.csv
Vielleicht hat mir noch jemand einen Tipp.
könntest du soetwas meinen?
01.
#!/bin/bash 
02.
USERFILE=/Pfad/Datei.csv 
03.
OLDIFS=$IFS 
04.
IFS=, 
05.
[ ! -f $INPUT ] && { echo "Datei $USERFILE nicht vorhanden."; exit 99; } 
06.
 
07.
while read name passwort 
08.
do 
09.
     adduser name --shell /bin/bash 
10.
     echo passwort | passwd uname --stdin 
11.
done < $INPUT 
12.
 
13.
IFS=$OLDIFS
Ich bin leider kein Shell-Guru. Man versucht aber dennoch gerne zu helfen, wo man könnte.
Ist also ungetestet, könnte aber was werden.

Inwiefern verschluckt sich Linux mit den Sonderzeichen?


Grüße
Dominique
Bitte warten ..
Mitglied: speedy-luis
24.02.2014 um 14:16 Uhr
Hallo,

auch dieses Script hilft mir nicht weiter...

Ich konnte die User jedoch via Webmin importieren.

Gruß
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
Office 365 User Import mit Powershell (1)

Frage von adrian138 zum Thema Microsoft Office ...

VB for Applications
Import Textdatei von Dateiname aus Zelle (2)

Frage von grasihuepfer zum Thema VB for Applications ...

Exchange Server
gelöst Exchange Server - User bekommt öffentlichen Ordner nicht angezeigt (4)

Frage von infostud zum Thema Exchange Server ...

Batch & Shell
gelöst PS: zugehörige Import-Dateien ins Verzeichnis der Log-Dateien verschieben (4)

Frage von Jenny82 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(6)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Windows 10

Das Windows 10 Creators Update ist auf dem Weg

(6)

Anleitung von BassFishFox zum Thema Windows 10 ...

Administrator.de Feedback

Tipp: Ungelöste Fragen ohne Antwort in Tickeransicht farblich hinterlegen

Tipp von pattern zum Thema Administrator.de Feedback ...

Heiß diskutierte Inhalte
Windows Server
gelöst Update BackupExec 2015 auf 2016 führt zu SQL-Server Problem (16)

Frage von montylein1981 zum Thema Windows Server ...

Batch & Shell
gelöst Batch um Benutzer aus Sitzung abzumelden (15)

Frage von zeroblue2005 zum Thema Batch & Shell ...

Linux
gelöst Google Chrome startet nicht (12)

Frage von Thomas91 zum Thema Linux ...