Magduci 10 Geschrieben 4. Juni 2004 Melden Teilen Geschrieben 4. Juni 2004 Hallo an Alle. Ich müsste etwa 900 Benutzer auf eine nagelneue 2003 Server anlegen. Ich Naivling habe mir soetwas wie eine Benutzer.csv Datei aus der Excel-Datei erstellen und mit dem Befehl dsadd user alle auf einmal anzulegen gedacht. Schöne Theorie nur keine Praxis. Kann mir da jemand gute bis sehr gute Ratschläge erteilen, denn ehrlich gesagt ich trau mich nicht am frisch installierten Server rumzuprobieren. Leider kenne ich nicht den genauen Aufbau der Excel-Tabell, wie es aussehen soll und auch nicht den genauen Syntax des Befehls dsadd user mit Benutzer.csv. Für jede Hilfe wäre ich sehr dankbar. Zitieren Link zu diesem Kommentar
Damian 1.526 Geschrieben 4. Juni 2004 Melden Teilen Geschrieben 4. Juni 2004 Hi. Schau dir mal dieses Tool an: http://ms.asn-graz.ac.at/dotnetnuke/admin/Portal/LinkClick.aspx?tabid=27&table=Documents&field=ItemID&id=11&link=http%3a%2f%2fms.asn-graz.ac.at%2fdownloads%2fApplikationen%2feUser%2520Beta4%2520ver%25200.8.zip Damian Zitieren Link zu diesem Kommentar
freak04 10 Geschrieben 5. Juni 2004 Melden Teilen Geschrieben 5. Juni 2004 Hallo besitzt Dein Server eine zweite physikalische Festplatte? Ich geh mal davon aus, dann würde ich Dir zuvor eine ASR - Sicherung empfehlen. (--> mit einer zweiten FP geht's am bequemsten) Guckst Du hier... http://www.microsoft.com/resources/documentation/WindowsServ/2003/datacenter/proddocs/en-us/Default.asp?url=/resources/documentation/WindowsServ/2003/datacenter/proddocs/en-us/asr_overview.asp das mit der csv-Datei ist eigentlich eine gute Idee den genau dazu gibt es ja das Tool csvde.exe Guckst Du hier ... http://www.kaczenski.de/it-service/faq.htm#csvde oder hier ... http://www.jsiinc.com/SUBI/tip4000/rh4073.htm An einem neuen Server herumzuprobieren ist immer mit Unbehagen verbunden aber mit der richtigen Sicherungsstrategie und getesteten Backup!!! auch kein so großes Problem. Besser ist natürlich eine Testumgebung, in der Du Deine Skripte zunächst testen kannst. (VMWare oder VirtualPC) gruß freak04 Zitieren Link zu diesem Kommentar
SFHE 10 Geschrieben 5. Juni 2004 Melden Teilen Geschrieben 5. Juni 2004 oder guckst du hier: http://www.newfawm.com/downloads.htm Zitieren Link zu diesem Kommentar
Magduci 10 Geschrieben 7. Juni 2004 Autor Melden Teilen Geschrieben 7. Juni 2004 Erstmal Danke für die Antworten! Die Lösung mit dem kostenlosen eUser-Software für die Schulen ist genau das war ich im Moment brauche. Bis eure Antworten kamen, haben wir schnell doch noch einen Testserver zusammengeschustert und dann gleich diesen eUser darauf mit voller Erwartung ausprobiert. Leider klappt nicht bei 2003. Es holt die Benutzerdaten aus der Excel-Tabelle aber übernimmt sie nich weiter in die Liste aus der es die Benutzer anlegen sollte. D. h. es legt keinen einzigen Benutzer an, weil es eine leere Liste hat.?! Fehlermeldungen gibts auch nichts. Danach hatte ich leider keine Zeit mehr mich damit weiter zu beschäftigen. Ich hatte am Wochenende eine andere mörderische Installation. Sobald ich etwas näheres weis, melde ich mich gleich wieder. Tschüß! Magdalena Zitieren Link zu diesem Kommentar
brwic 10 Geschrieben 7. Juni 2004 Melden Teilen Geschrieben 7. Juni 2004 sonst probier es einfach mal so :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ' SKRIPT UM BENUTZER UEBER EINE TEXTDATEI ANZULEGEN AUF DEM TERMINALSERVER WIN 2003 ' ' AUFBAU DER TEXTDATEI USER.TXT = user1,Vorname 1,Nachname 1,pwd1 ' user2,Vorname 2,Nachname 2,pwd2 ' ' ' ' ' ' Dim fso, f, Zeile, Feld Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.OpenTextFile ("user.txt",1,0) Do while not f.AtEndOfLine Zeile = f.readLine Feld = split(Zeile,",") Benutzer = Feld(0) Vorname = Feld(1) Nachname = Feld(2) Passwort = Feld(2) Call BenuntzerAnlegen(Benutzer,Vorname,Nachname,Passwort) Loop f.Close Wscript.Quit(0) Sub BenuntzerAnlegen (Benutzer,Vorname,Nachname,Passwort) Dim ouo, b Set ouo = GetObject("LDAP://OU=user,DC=XXXXXXXX,DC=COM") Set b = ouo.Create("user", "CN=" & Vorname & " " & Nachname) Dim WshShell, ret Set WshShell = WScript.CreateObject("WScript.Shell") b.Put "sAMAccountName", Benutzer b.Put "userPrincipalName", Benutzer & "@XXXXXXXXXX.COM" b.Put "profilePath", "\\TS-BR-WE-01\daten\profile\" & Benutzer b.Put "homeDirectory", "\\TS-BR-WE-01\daten\home\" & Benutzer b.Put "homeDrive", "U:" b.SetInfo b.SetPassword Passwort b.AccountDisabled = False b.SetInfo WScript.Sleep(1000) ret = WshShell.Run ("verz.cmd " & Benutzer,0,1) End Sub viel spass Zitieren Link zu diesem Kommentar
Magduci 10 Geschrieben 7. Juni 2004 Autor Melden Teilen Geschrieben 7. Juni 2004 Danke für den Vorschlag! Noch 3 ****e Fragen :rolleyes: : Muss man bei diesem Textdatei die Benutzer nicht mit Komma oder ; trennen? Gilt diese Anwendung auch für normale 2003 server ohne Terminal-Server? (habe 900 Benutzer (Schüler) aber nur 60 Rechner). Den Home-Verzeichnis anlegen sehe ich aber wird auch Mail-Adresse mit erzeugt? Entschuldige, ich bin in sachen Skripten leider blutige Anfängerin. Vielen Dank für deine Geduld. Tschüß Magdalena Zitieren Link zu diesem Kommentar
brwic 10 Geschrieben 7. Juni 2004 Melden Teilen Geschrieben 7. Juni 2004 etwas netter is das glaub ich so, aber erst zu deinen fragen: die textdatei is mit komme getrennt, geht eigentlich auf allen systemen. was haelst du den davon willst es doch mit einer csv datei machen. '################################################################################################# 'Auslesen von Usern aus einer CSV Datei '################################################################################################# 'Initialisierung 'Verbindungen herstellen '################################################################################################# Const Standort = "DEINE DOMAINE" strADS = "DC=DEINE DOMAINE,DC=loc" Set objADS = GetObject("LDAP://" & strADS) Set objfs = CreateObject("Scripting.FileSystemObject") Set objEingabeGruppen = objfs.OpenTextFile("c:\gruppen.txt",1,True) Set objAusgabe = objfs.CreateTextFile("C:\user.log",True) 'On Error Resume next '################################################################################################# 'Anlegen eines Containers für einen Standort '20################################################################################################# set objOu = objADS.Create("OrganizationalUnit","OU=" & Standort) objOu.SetInfo Set objSite = GetObject("LDAP://OU=" & Standort &"," & strADS) '################################################################################################# 'Anlegen eines Containers für Gruppen '################################################################################################# set objGroup = objSite.Create("OrganizationalUnit","OU=Gruppen") objGroup.SetInfo '################################################################################################# 'Anlegen der Gruppen '################################################################################################# set objGruppenCont = GetObject("LDAP://OU=Gruppen,OU=" & Standort & "," & strADS) '40 Do While objEingabeGruppen.AtEndOfStream <> true strNextGroup = objEingabeGruppen.Readline set objNewGroup = objGruppenCont.Create("Group","cn=" & strNextGroup) objNewGroup.sAMAccountName = strNextGroup objNewGroup.SetInfo StrGroupCreate = objAusgabe.WriteLine ("Die Gruppe " & strnextGroup & " wurde erfolgreich angelegt") Loop objEingabeGruppen.Close '################################################################################################# 'Abfragen in welchen Container die User angelegt werden sollen '################################################################################################# 'Öffnen der Exceldatei set ObjExcel = Wscript.CreateObject("Excel.Application") set ObjAdsPath = GetObject("LDAP://OU=" & Standort & "," & strADS) call ObjExcel.Workbooks.Open("C:\USERIMPORT.XLS",0) '60 ObjExcel.Sheets(1).Activate 'Anlegen der OUs in denen der user angelegt werden soll row = 2 strBlankLine = objAusgabe.WriteLine("") Do while ObjExcel.Range("A:A").Cells(row).Text <> "" strOU = ObjExcel.Range("F:F").Cells(row).Text set objnewOu = objAdsPath.Create("OrganizationalUnit","OU=" & strOu) objNewOu.SetInfo strOUCreate = objAusgabe.WriteLine ("Die OU " & strOu & " wurde erfolgreich angelegt") row = row + 1 loop '################################################################################################# 'Anlegen der User '################################################################################################# '80 row = 2 strBlankLine = objAusgabe.WriteLine("") Do while objExcel.Range("A:A").Cells(row).Text <> "" strDN = ObjExcel.Range("A:A").Cells(row).Text strSN = ObjExcel.Range("B:B").Cells(row).Text strGivenName = ObjExcel.Range("C:C").Cells(row).Text strSamAccountName = ObjExcel.Range("E:E").Cells(row).Text strGroup = ObjExcel.Range("D:D").Cells(row).Text strOU = ObjExcel.Range("F:F").Cells(row).Text strPass = ObjExcel.Range("G:G").Cells(row).Text set objADSPath = GetObject("LDAP://OU=" & strOU & ",OU=" & Standort & "," & strADS) set objNewUser = objADSPath.Create("User","CN=" & strDN) objNewUser.Put "sAMAccountName",strsamaccountname objNewUser.Put "sn", strsn objNewUser.Put "givenName", strgivenname '100 objNewUser.Put "UserAccountControl", "514" objNewUser.SetInfo objNewUser.SetPassword strPass objNewUser.Put "UserAccountControl", "512" objNewUser.SetInfo set objADSGroup = GetObject("LDAP://CN=" & strGroup & ",OU=Gruppen,OU=" & Standort & "," & strADS) objADSGroup.Add objnewuser.adspath objADSGroup.SetInfo strUserCreate = objAusgabe.WriteLine ("Der User " & strgivenName & " " & strsn &" wurde erfolgreich angelegt") strUserinGroup = objAusgabe.WriteLine (" Der User " & strgivenName & " wurde erfolgreich der Gruppe " & strGroup & " hinzugefügt") row= row + 1 loop if row>0 then Erfolg = "Fertig: " & row & " User angelegt (Massenuser" else Erfolg = "Keine User angelegt." end if die Gruppen.txt sieht so aus (halt im editor) GG_EDV GG_KS GG_VR GG_EO und die datei userimport.xls sieht so aus Distinguished Name Nachname Vorname Gruppe Anmeldename Container Passwort Hans Meiser Meiser Hans GG_EDV hm EDV Sommer2003 Marc Fischer Fischer Marc GG_VR mf VR Sommer2003 Axel Seher Seeher Axel GG_KS as KS Sommer2003 Karina Günther Günther Karina GG_EO kg EO Sommer2003 viel spass damit brwic Zitieren Link zu diesem Kommentar
brwic 10 Geschrieben 7. Juni 2004 Melden Teilen Geschrieben 7. Juni 2004 so zu dem ersten skript fehlten dir die Home-verzeichnisse kommen hier::: 'Anlegen der Verzeichnisse und Berechtigungen md \\server\daten\home\%1 echo J | cacls \\TS-BR-WE-01\daten\home\%1 /C /E /G Administratoren:F echo J | cacls \\TS-BR-WE-01\daten\home\%1 /C /E /G domaene\%1:F echo J | cacls \\TS-BR-WE-01\daten\home\%1 /C /E /R Jeder md \\TS-BR-WE-01\daten\profile\%1 echo J | cacls \\TS-BR-WE-01\daten\profile\%1 /C /E /G Administratoren:F echo J | cacls \\TS-BR-WE-01\daten\profile\%1 /C /E /G domaene\%1:F echo J | cacls \\TS-BR-WE-01\daten\profile\%1 /C /E /R Jeder --- mit den email-adressen habt ihr einen exchange-server der legt die beim benutzeranmelder mit an.. viel spass brwic Zitieren Link zu diesem Kommentar
Magduci 10 Geschrieben 7. Juni 2004 Autor Melden Teilen Geschrieben 7. Juni 2004 :) Danke erstmal. Jetzt bin etwas erschlagen. Ich probiere es auf jedem Fall aus und melde mich. Kann nur noch etwas dauer. Herzlichensten Dank nochmal. P.S. wie sich herausstellte brauche ich doch keine mail-Adresse. Habe Kein Exchange (blos nicht) nur KEN. Tschüss denn! Zitieren Link zu diesem Kommentar
DanielS81 10 Geschrieben 5. Juli 2004 Melden Teilen Geschrieben 5. Juli 2004 Aha, hier hat scheinbar einer richtig Ahnung vom Scripting! Hab da nämlich ein ähnliches Problem: Hab ne Excel-Liste mit allen Usern der Firma. Es sind in einer Spalte die Usernamen nach der Konvention vorname.nachname vorhanden. In einer weiteren Spalte steht ein Kürzel für die OU-Zugehörigkeit der user. Jetzt suche ich nach einer eleganten Lösung um automatisch Verzeichnisse zu erstellen, die genauso heissen sollen wie die user, also vorname.nachname. Das muss doch irgendwie gehen! Also bitte helft mir, dann hab ich in den nächsten Tagen früher Feierabend!! Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.