Liste der Benutzer

K

ksberger

Neues Mitglied
Thread Starter
Dabei seit
12.10.2008
Beiträge
6
Reaktionspunkte
0
Hallo,

ich brauche eine Liste (Kurznamen) aller benutzer die einen Account auf einem XServe (10.4.10) besitzen.

Weiß jemand die Vorgehensweise dazu, einzeln raustüftleln ist bei 800 Benutzern etwas mühsam

Vielen Dank
ksberger
 
Wie werden die User denn Verwaltet?
 
über den Arbeitsgruppenmanager
 
Ich habe leider kein MacOS Server, wenn die Benutzer aber lokal auf dem Server gespeichert sind also nicht mit LDAP oder ähnlichem kannst du es mit
versuchen:

cut -d":" -f1 /etc/passwd > benutzer.txt
 
Die Benutzer werden mit LDAP verwaltet - das ist ja das Problem.

eine etwas genauere Beschreibung:
Benutzer werden über Script im Arbeitsgruppenmanager angelegt.
Die relevanten Informationen (Kurzname, Klarname, ...) stehen in einer Datei, die ein selbstgeschriebenes Programm aus einer Textdatei erzeugt und dabei eventuell neue Kurznamen mit vorhandenen vergleicht.
Dummerweise ist mir die aktuelle Liste der vorhandenen Kurznamen verlorengegangen, so dass ich sie irgendwie vom Server erzeugen muss, damit neue Benutzer (so um die 150) angelegt werden können, ohne dass einer doppelt vorhanden ist (wenn das überhaupt geht und das Script nicht abbricht)

Wenn irgendjemand eine Idee hat, wie man diese Information dem Open Directory System entlocken könnte, wäre ich dankbar

ksberger
 
Das ist im Grunde recht einfach, wenn Du mit dem Terminal keine Probleme hast.
Da gibt es nämlich das wunderschöne Tool 'ldapsearch'.
Eine Suche könnte dann etwa so aussehen:
Code:
ldapsearch -x -w [I]passwort[/I] -D 'cn=[I]diradmin[/I], dc=[I]example[/I],dc=[I]de[/I]' -b 'ou=Users,dc=example,dc=com' -LLL  sn

Ich hab das Apple Schema jetzt nicht auswändig im Kopf, aber das dürfte kein großes Problem sein, wenn Du davon sitzt.

HTH
Gruß
maceis
 
Also: ich hab' das mal heute an unserem Server ausprobiert.
So ist das genaue Suchkommando:
Code:
ldapsearch -x -w [I]ldap_passwort[/I] -D 'uid=root,cn=users,dc=[I]servername[/I],dc=local' -b 'cn=users,dc=[I]servername[/I],dc=local' -h [I]server[/I] -LLL "uid=*" uid

Unter Umständen musst Du die Authentifizierungsinformationen anpassen.
Ist ne feine Sache, dieses ldapsearch :D.

Wenn Du ne Liste mit ausschließlich den Kurznahmen haben möchtest, hängst Du einfach folgende Pipe an das o.g. Kommando an:
Code:
| grep '^uid' | sed -e 's/uid: //'

Gruß
maceis
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Das Gnu
Danke für den Tip
War genau das richtige

ksberger
 
Zurück
Oben Unten