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
Kommentar vom Moderator Biber am 03.11.2009 um 12:12:23 Uhr
Zitat von dave114:
Das einzige was funktioniert hat ist das umbennen meinens
#rgc = 622

PCs innerhalb einer Domäne über Netzwerk umbenennen

Anleitung Entwicklung Batch & Shell

Mitglied: Larz

Larz (Level 2) - Jetzt verbinden

24.09.2009, aktualisiert 18.10.2012, 22904 Aufrufe, 30 Kommentare, 13 Danke

Einen einzelnen PC umzubenennen ist nicht schwer - an die Kiste, User abmelden, Admin anmelden, umbenennen, neu starten, fertig. Aber was wenn mehrere dutzend umbenannt werden müssen?

Ausgangssituation
Jedes Jahr werden bei uns von insgesamt 10 Mitarbeitern dutzende (bis max. 100) PCs ausgetauscht (Leasingverträge). Die Installation ist dank einer Software-Distributions-Lösung kein Problem.
Nur ist es so, dass diese auf den Computernamen reagiert. Will ich also einen PC neu und automatisch installiert haben, muss er so heißen wie in der Konfiguration hinterlegt.
Also ist der Gang bisher so gewesen, dass man die bestehenden PCs einzeln per Hand umbenannt hat, dann die neuen in einem separaten Raum aufgestellt und die Installation automatisiert durchgeführt hat, um keine doppelten Namen im Netzwerk zu haben. Rechnet man mit 5 Minuten pro Umbenennung (Wegezeiten zwischen den Büros mal ausser Acht gelassen), so kommen wir auf einen zeitlichen Aufwand von 8,3 Stunden, also einen ganzen Arbeitstag nur für's Umbenennen...

Also sollte eine Möglichkeit geschaffen werden, dies zu erleichtern, ohne den Benutzer unnötig zu stören.

Microsoft bietet für Umbenennungen im Netz (und weitere Dinge) das Tool netdom.exe an, dass über die Kommandozeile aufgerufen wird. Folgende Batch habe ich hierfür mit Unterstützung durch bastla und greypeter erstellt.

Ihr benötigt folgende Dateien:
- netdom.exe (im Lieferumfang der Windows XP-Supporttools enthalten)
- Umbenennen.bat (neu zu erstellen)
- Liste_PCs.txt (wo alte und neue PC-Namen enthalten sind, neu zu erstellen)

-------------------------------------------------------------------------- Beginn Batch Beschreibung

Zunächst werden ein paar Parameter vorgegeben:
01.
@ECHO OFF & SETLOCAL  
02.
REM Hier werden Variablen für die Umlaute definiert, damit Sie nachher im Text richtig angezeigt werden (ANSI/ASCI-Problem) 
03.
chcp 1252>nul 
04.
set ue=ü 
05.
set ae=ä 
06.
set oe=ö 
07.
set Uue=Ü 
08.
set Aae=Ä 
09.
set Ooe=Ö 
10.
set ss=ß 
11.
chcp 850>nul 
12.
REM Hier wird die betroffene Domäne angegeben: 
13.
set Domain=DomainName 
14.
COLOR 0E 
15.
CLS
Nun wird zunächst der Benutzer abgefragt, der die Rechte zum Ändern hat (Domänen-Admin)
01.
REM Damit's hübscher aussieht, auch Admins haben Augen :-) 
02.
@ECHO ======================================================= 
03.
@ECHO     ____  ______   ____                                 
04.
@ECHO    / __ \/ ____/  / __ \___  ____  ____ _____ ___  ___  
05.
@ECHO   / /_/ / /      / /_/ / _ \/ __ \/ __ `/ __ `__ \/ _ \ 
06.
@ECHO  / ____/ /___   / _, _/  __/ / / / /_/ / / / / / /  __/ 
07.
@ECHO /_/    \____/  /_/ l_l\___/_/ /_/\__,_/_/ /_/ /_/\___/  
08.
@ECHO. 
09.
@ECHO ======================================================= 
10.
 
11.
:Eingabe_Benutzer 
12.
@ECHO Bitte Benutzername eingeben (ohne Dom%ae%ne): 
13.
set /p Benutzername= 
14.
@ECHO. 
15.
REM Hier wird das Passwort mittels einem VB-Schnipsel eingegeben, damit es bei der EIngabe nicht angezeigt wird 
16.
set "GetPW=%temp%\GetPW.vbs" 
17.
echo WScript.Echo CreateObject("ScriptPW.Password").GetPassword()>"%GetPW%" 
18.
echo Zugeh%oe%riges Passwort eingeben (wird nicht angezeigt):  
19.
for /f "delims=" %%i in ('cscript //nologo "%GetPW%"') do set "Passwort=%%i" 
20.
del "%GetPW%" 
21.
@ECHO Passwort wurde eingegeben, OK
Nun wird abgefragt, ob ein einzelner PC oder mehrere PCs umbenannt werden sollen.

01.
:WasWillstDuTun 
02.
CLS 
03.
@ECHO ======================================================= 
04.
@ECHO     ____  ______   ____                                 
05.
@ECHO    / __ \/ ____/  / __ \___  ____  ____ _____ ___  ___  
06.
@ECHO   / /_/ / /      / /_/ / _ \/ __ \/ __ `/ __ `__ \/ _ \ 
07.
@ECHO  / ____/ /___   / _, _/  __/ / / / /_/ / / / / / /  __/ 
08.
@ECHO /_/    \____/  /_/ l_l\___/_/ /_/\__,_/_/ /_/ /_/\___/  
09.
@ECHO. 
10.
@ECHO ======================================================= 
11.
@ECHO M%oe%chten Sie einen oder mehrere PCs umbenennen? 
12.
set /p EinenOderMehrere=W%ae%hlen Sie (E)inen oder (M)ehrere:  
13.
if '%EinenOderMehrere%' == 'e' goto RenamePC 
14.
if '%EinenOderMehrere%' == 'E' goto RenamePC 
15.
if '%EinenOderMehrere%' == 'm' goto RenameMany 
16.
if '%EinenOderMehrere%' == 'M' goto RenameMany 
17.
@ECHO ======================================================= 
18.
@ECHO Fehleingabe, Programm wird beendet 
19.
EXIT
Falls nur ein PC umbenannt werden soll, geht es hier weiter; es werden der alte und der neue Name abgefragt und die Umbenennung findet statt.
Danach wird abgefragt, ob weiterere PCs umbenannt werden sollen.

01.
:RenamePC 
02.
CLS 
03.
@ECHO ======================================================= 
04.
@ECHO     ____  ______   ____                                 
05.
@ECHO    / __ \/ ____/  / __ \___  ____  ____ _____ ___  ___  
06.
@ECHO   / /_/ / /      / /_/ / _ \/ __ \/ __ `/ __ `__ \/ _ \ 
07.
@ECHO  / ____/ /___   / _, _/  __/ / / / /_/ / / / / / /  __/ 
08.
@ECHO /_/    \____/  /_/ l_l\___/_/ /_/\__,_/_/ /_/ /_/\___/  
09.
@ECHO. 
10.
@ECHO ======================================================= 
11.
@ECHO Umzubenennenden Computernamen eingeben ("Name alt") 
12.
set /p NameAlt= 
13.
@ECHO. 
14.
@ECHO Bitte neuen Computernamen eingeben 
15.
set /p NameNeu= 
16.
netdom renamecomputer %NameAlt% /newname:%NameNeu% /userd:%Domain%\%Benutzername% /PasswordD:%Passwort% /force 
17.
@ECHO ======================================================= 
18.
GOTO Abfrage_nochmal
Falls die mehrere PCs umbenannt werden sollen, wird hier eine Text-Liste (Aufbau siehe unten) eingelesen und mittels einer FOR-Schleife jeder einzelne Eintrag abgearbeitet.
Danach erfolgt ebenfalls die obligatorische Frage, ob weitere PCs umbenannt werden sollen.

01.
:RenameMany 
02.
CLS 
03.
@ECHO ======================================================= 
04.
@ECHO     ____  ______   ____                                 
05.
@ECHO    / __ \/ ____/  / __ \___  ____  ____ _____ ___  ___  
06.
@ECHO   / /_/ / /      / /_/ / _ \/ __ \/ __ `/ __ `__ \/ _ \ 
07.
@ECHO  / ____/ /___   / _, _/  __/ / / / /_/ / / / / / /  __/ 
08.
@ECHO /_/    \____/  /_/ l_l\___/_/ /_/\__,_/_/ /_/ /_/\___/  
09.
@ECHO. 
10.
@ECHO ======================================================= 
11.
@ECHO Dateiname der PC-Liste angeben: 
12.
set /p Datei= 
13.
@ECHO. 
14.
@ECHO Datei %Datei% auslesen .... 
15.
For /F "tokens=1,2* " %%i in (%Datei%) do call :DoAction %%i %%j 
16.
goto Abfrage_nochmal 
17.
 
18.
:DoAction 
19.
@ECHO Umbenennen %1 in %2 
20.
netdom renamecomputer %1 /newname:%2 /userd:%Domain%\%Benutzername% /PasswordD:%Passwort% /force 
21.
@ECHO ======================================================= 
22.
goto :eof
Hier die Abfrage, ob weitere PCs umbenannt werdewn sollen

01.
:ActionEnd 
02.
GOTO Abfrage_nochmal 
03.
 
04.
:Abfrage_nochmal 
05.
set /p Entscheidung=M%oe%chten Sie weitere PCs umbenennen (J/N)?  
06.
if '%Entscheidung%' == 'j' goto WasWillstDuTun 
07.
if '%Entscheidung%' == 'ja' goto WasWillstDuTun 
08.
if '%Entscheidung%' == 'J' goto WasWillstDuTun 
09.
if '%Entscheidung%' == 'Ja' goto WasWillstDuTun 
10.
if '%Entscheidung%' == 'JA' goto WasWillstDuTun 
11.
 
12.
:Ende 
13.
@ECHO Kein weiterer PC soll umbenannt werden, Programm wird beendet 
14.
@ECHO Lösche lokalen 
Und zum Schluss noch den lokalen Cache löschen, damit man nicht mit neu und alt durcheinander kommt.

01.
ipconfig /flushdns 
02.
EXIT
-------------------------------------------------------------------------- Ende Batch Beschreibung

Hier ein Beispiel, wie die PC-Liste der umzubenennenden Geräte aufgebaut sein muss:

-------------------------------------------------------------------------- Datei Inhalt Liste_PCs.txt

PCNameAlt-1 PCNameNeu-1
PCNameAlt-2 PCNameNeu-2
PCNameAlt-3 PCNameNeu-3
PCNameAlt-4 PCNameNeu-4
PCNameAlt-5 PCNameNeu-5
PCNameAlt-6 PCNameNeu-6
----------------------------------------------------------------------- Ende Datei Inhalt Liste_PCs.txt


Vorteil:
- Schnelle Umbenennung vieler PCs
- man muss sich nicht extra am entsprechenden PC anmelden

Nachteil:
- der PC muss laufen (so oder so)
- Die Umbenennung ist erst nach einem Neustart wirksam, also üblicherweise wenn sich dere User am nächsten Tag anmeldet (so oder so)

Ich hoffe die Beschreibung ist verständlich und nützt euch etwas


Gruß
Larz
30 Kommentare
Mitglied: runcmd
24.09.2009 um 11:53 Uhr
hi,

die umlautunterst%ue%tzung ist ja mal abgefahren, dein freiheitlicher ansatz gefällt... :-P

auch deine methode zum eingeben des passworts...

"thumbs up"

gruß
Bitte warten ..
Mitglied: Larz
24.09.2009 um 12:45 Uhr
Hi,

das mit den Umlauten ist ja auch mehr als lästig

Danke

Gruß
Lars
Bitte warten ..
Mitglied: Alex1989
24.09.2009 um 12:55 Uhr
Moin moin,

Super Anleitung, benötige das zwar grade nicht, aber der Tag kommt bestimmt ;)

Gruß,


Alex
Bitte warten ..
Mitglied: 81825
24.09.2009 um 12:55 Uhr
Hi,

hattu fein demacht!

Kleiner Tipp noch am Rande
01.
if /i '%Entscheidung:~0,1%' == 'j' goto WasWillstDuTun
ersetzt die Zeilen 06-10 in :ActionEnd.
Bitte warten ..
Mitglied: Larz
24.09.2009 um 13:22 Uhr
Hi,

ok, hab's noch nicht ausprobiert, aber warum ist das so? Kannst Du das noch etwas erläutern? Ich möchte ja abfangen, dass der Benutzer "Ja" sagen kann, wie er will....

Gruß
Larz
Bitte warten ..
Mitglied: 81825
24.09.2009 um 13:26 Uhr
Hi,

if /i ignoriert Groß-/Kleinschreibung, und du erwartest ja nur den 1. Buchstaben (J/N), also kannst du auch zur Überprüfung nur den 1. Buchstaben der Variablen nutzen.
Bitte warten ..
Mitglied: Larz
24.09.2009 um 14:08 Uhr
Clever, gute Idee. Hoffentlich gibt keiner als Antwort je "Jetzt nicht" ein

Gruß
Larz
Bitte warten ..
Mitglied: TheEternalPhenom
29.09.2009 um 13:01 Uhr
Geiles Tool

Wenn meine Vorgesetzten jetzt noch zustimmen erleichter mir das en haufen Arbeit beim neu machen von PC-Räumen.
Bitte warten ..
Mitglied: Larz
29.09.2009 um 19:32 Uhr
Servus duffman,

das würde mich freuen, wenn es jemandem so nutzt. Dürfte rein technisch auch unbedenklich sein, weil alles mit Windows Bordmitteln funktioniert...

Gruß
Larz
Bitte warten ..
Mitglied: TheEternalPhenom
30.09.2009 um 09:46 Uhr
Denke ich auch aber als Praktikant gilt immer: Erst fragen dann machen.

Mal was anderes wäre es teschnisch Möglich über eine Batch sogar die Rechner an die Domäne anzumelden???

Mit freundlichen Grüßen duffman521
Bitte warten ..
Mitglied: Larz
30.09.2009, aktualisiert 18.10.2012
Hallo,

ja, sll mit netdom auch gehen. Habe ich selbst noch nicht probiert, ist aber sicher möglich.
Schau mal über

netdom /help

oder hier: http://www.administrator.de/forum/netdom-batchdatei-umbenennen-und-in-n ...

Gruß
Larz
Bitte warten ..
Mitglied: TheEternalPhenom
30.09.2009 um 20:20 Uhr
thx

sowas würde nämlich sehr viel zeit sparen
wir haben vor ein paar wochen fast 2 stunden mit spiegeln verbracht und das nur solange weil es anmelden an der domäne bzw das bennen der pc solange dauert
Bitte warten ..
Mitglied: dave114
02.10.2009 um 08:50 Uhr
morgen,

das Script ist super - erspart mir jede Menge Arbeit.

Was mich jetzt nur interessiert ist was passiert wenn ich einen Computername ändere dieser aber schon vorhanden ist?
Wird dann das Computerkonto überschrieben oder funktioniert das nicht? Am besten wäre es wenn das Srcipt eine Warnmeldung ausgeben würde.

Ich kann das hier gerade leider nicht testen aber vllt hat einer von euch schon die Erfahrung gemacht oder würde es für mich testen.

Vielen Dank Larz für das Script und viele Grüße.

David
Bitte warten ..
Mitglied: Larz
02.10.2009 um 09:29 Uhr
Moin David,

falls es den Comutername schon gibt kommt die Fehlermeldung:

Das Konto existiert bereits.
The command failed to complete successfully.



Gruß
Larz
Bitte warten ..
Mitglied: dave114
02.10.2009 um 09:35 Uhr
vielen Danke Larz,

dann kann ich das Script ja ohne Bedenken hier im Netz einsetzen.

Mit freundlichen Grüßen

david
Bitte warten ..
Mitglied: dave114
02.10.2009 um 10:33 Uhr
mhh ich hab da noch ein Problem,

über welche Rechte muss das Konto verfügen mit dem ich die Rechner umbenennen will?

Das Passwort wird doch im Klartext übers Netzwerk übertragen oder seh ich das falsch?

Mit freundlichen Grüßen

David
Bitte warten ..
Mitglied: Larz
02.10.2009 um 19:24 Uhr
Du musst Domänenadmin sein. Ob das Passwort von netdom.exe unverschlüsselt übertragen wird, kann ich Dir nicht sagen...

Gruß
Larz
Bitte warten ..
Mitglied: dave114
02.10.2009 um 22:39 Uhr
das ist etwas suboptimal da ich nur Kontenoperator bin :-P


mhh dann kann das nicht funktionieren.


Mit freundlichen Grüßen

david
Bitte warten ..
Mitglied: Larz
02.10.2009 um 22:42 Uhr
versuch's doch mal mit einem PC. Vielleicht reicht der Kontenop. ja auch...
Bitte warten ..
Mitglied: dave114
02.10.2009 um 22:49 Uhr
ich hab es versucht

bestimmt zwei Stunden lang - alle möglichen Kombinationen der Syntax und meiner Domänen-Daten und auch die Daten des lokalen Admins. Das einzige was funktioniert hat ist das umbennen meinens eigenen PCs auf dem ich mit meinen Domänen-Daten auch gleichzeitig lokaler Admin bin.

vllt weiß da noch jemand was

Mit freundlichen Grüßen

David
Bitte warten ..
Mitglied: Larz
03.10.2009 um 09:14 Uhr
Moin,

was versucht? Als Nicht-Domänen-Admin eine Umbenennung durchzuführen?
Wie stellen sich das deine Chefs denn vor, ohne die Rechte kannst Du doch auch nicht am PC selbst Umbenennungen vornehmen, oder?

Gruß
Lars
Bitte warten ..
Mitglied: dave114
03.10.2009 um 11:52 Uhr
morgen,

bis jetzt haben wir dass immer so gemacht das ich mich per Dameware draufgeschaltet habe, mich als lokaler Admin angemeldet habe, die Kiste umbenannte hab und dann neu gestartet habe. Das Problem bei dem ganzen ist halt nur das ich die Mitarbeiter anrufen muss und sie ihre Arbeit unterbrechen müssen.

Mit freundlichen Grüßen

David
Bitte warten ..
Mitglied: Larz
03.10.2009 um 18:56 Uhr
Hi David,

als lokaler Admin geht das doch gar nicht. Du musst doch beim Umbenennen einen Benutzer angeben, der das Konto in der Domäne umbenennen darf?!?

Gruß
Larz
Bitte warten ..
Mitglied: dave114
03.10.2009 um 19:07 Uhr
morgen Larz,

ja stimmt jetzt wo du es sagst

Ich authentifiziere mich dann noch an mit meinen Daten an der Domäne und da ich ja Kontenoperator bin kann ich den Rechner dann auch umbenennen.

Mit freundlichen Grüßen

David
Bitte warten ..
Mitglied: Larz
03.10.2009 um 19:12 Uhr
...dann sollte es über die Batch aber genauso gehen...

Gruß
Larz
Bitte warten ..
Mitglied: dave114
03.10.2009 um 19:19 Uhr
wie gesagt ich habe am Freitag mehr als zwei Stunden lang probiert und dranrumgebastelt -

aber ich werde am Montag weiter machen

Danke für deine Unterstützung.

Ich werde mich melden wenn ich zu neuen Erkenntnissen gekommen bin.

Mit freundlichen Grüßen

David
Bitte warten ..
Mitglied: oi-polloi
06.10.2009 um 17:44 Uhr
hallo,

das ist/wäre mir jetzt neu, wenn man einen PC, der sich in einer bestehenden Domäne befindet, einfach so umbennen kann.
Ich kenne bis jetzt nur die Prozedur, aus der Domäne abmelden, als admin anmelden und das Ding umbennen, neustart und wieder in die Domäne integrieren.
Korrigiert mich falls ich da falsch liege.

Cheers
Bitte warten ..
Mitglied: Larz
06.10.2009 um 17:52 Uhr
Hallo,

das ist unter W2k3 schlichtweg falsch. Umbenennen kann ich einen PC natürlich auch wenn er in der Domäne ist. Wieso sollte das auch nicht gehen???
Hab ich bereits hundertfach gemacht.

Gruß
Larz
Bitte warten ..
Mitglied: bussi
03.11.2009 um 12:03 Uhr
Hallo, kleine Ergänzung:

Die Umbenennung ist erst nach einem Neustart wirksam, also üblicherweise wenn sich der User am nächsten Tag anmeldet (so oder so)

Man kann netdom auch den Parameter reboot mitgeben:

netdom ……. /force /reboot:5

Mit freundlichen Grüßen
Bitte warten ..
Mitglied: Larz
03.11.2009 um 13:26 Uhr
Hallo,

Na, die Benutzer werden sich bedanken
Habe das immer ohne den Parameter gemacht, damit die nichts davon mitbekommen...

In Verbindung mit einem Wake-on-LAN-Script aber eine gute Ergänzung falls man das bei nicht produktiv genutzten PCs oder am Wochenende macht.

Gruß
Larz
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(1)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Windows Netzwerk
USB-Gerät ins Netzwerk (Domäne) einbinden (4)

Frage von griss0r zum Thema Windows Netzwerk ...

Windows Netzwerk
gelöst Mehrere Windows PCs gleichzeitig zur Domäne (4)

Frage von PharIT zum Thema Windows Netzwerk ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...