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

Batch - Automatisiert den Computername ändern und anschließend in die Domäne aufnehmen

Anleitung Entwicklung Batch & Shell

Mitglied: Dani

Dani (Level 5) - Jetzt verbinden

28.04.2007, aktualisiert 02.12.2007, 79621 Aufrufe, 4 Kommentare, 3 Danke

Änderungen:
28.04.2007 19:21
Grammatik / Rechtschreibfehler beseitigt.

29.04.2007 10:32
Text wurde von "bastla" und mir nochmal verfeinert.

30.05.2007 13:06
Der User -151kg- hat einen Fehler im meinem Script gefunden. Vielen Dank für den Hinweis...Das Problem habe ich eben gefixt.

02.12.2007
Erweiterung - Handling mehrerer MAC-Adressen in der IPConfig-Ausgabe Major0190/Biber.
Hallo zusammen,
auf Wunsch von "Biber" habe ich aus einem meiner Kommentaren ein Tutorial erzeugt. Diese Frage taucht in letzter Zeit einfach öfters auf.

Situation
Wer kennt es nicht: Man betreut ein Netzwerk mit mehreren Clients und ist es Leid, immer nach dem Image-Verteilen bzw. nach einer Neuinstallation zu jedem Rechner zu laufen, um den Computernamen zu ändern und danach in die Domäne einzubinden. Aber dafür gibt es eine Lösung!

Grundlagen im LAN (Allgemein)
Voraussetzung für dieses Vorhaben ist, dass sich mindestens eine Domäne im Netzwerk (LAN) befindet. Zusätzlich zum AD (Active Directory) muss ein DHCP - Server und ein RIS - Server laufen. Diese Dienste können entweder auf der gleichen Maschine laufen oder aber auf einzelne verteilt werden, je nach Auslastung und Clientanzahl!

Ab wann lohnt sich der Aufwand?
Also das kann man allgemein nicht sagen, aber ich denke, so ab 10 Clients würde ich den Aufwand treiben. Nach oben hin sehe ich keine Grenzen. Dort wird es dann eher eine Frage der Hardwarebegrenzung sein.

Wie wird der entsprechende Computername zugeordnet?
Als Grundlage dient die MAC – Adresse der Netzwerkkarte (NIC), da diese weltweit einmalig und somit prima als Basis für die Problemlösung geeignet ist.

Wo wird der Computername und die MAC - Adresse hinterlegt (+ Vorteile / Nachteile)?
Hier gibt es 2 Möglichkeiten: Grundsätzlich kann so was immer mit einer Datei (z.B. Textdatei) gelöst werden. Somit reicht ein einfacher Editor aus und die Datei ist später auch sehr anwenderfreundlich. Doch bei mehreren Computern (so ab 100 Clients) könnte die Datei unübersichtlich werden. Nicht nur das, wenn mehrere Leute an der Datei arbeiten, könnten unter bestimmten Umständen irgendwann mal mehrere Dateien existieren, und dann ist das Chaos vorprogrammiert.
Daher habe ich noch ein anderes Verfahren (war wahrscheinlich der 1000. Mensch, der auf die Idee gekommen ist) entwickelt. Voraussetzung ist ein Webserver (mit PHP Unterstützung) und ein MySQL-Server. Und zwar habe ich in einer SQL-Tabelle den Computer mit dazugehöriger MAC - Adresse gespeichert. Dadurch hat man die Chance, sich ein Webinterface zu programmieren. Dies setzt jedoch einige Kenntnisse in PHP und SQL voraus. Aber über diese Webanwendung können Datensätze hinzugefügt / geändert / gesucht / gelöscht werden. Je nach Belieben!

Vorbereitungen auf dem Server
Für das Aufnehmen eines Computers in die Domäne würde ich einen extra AD - Benutzer anlegen. Danach sollte der Benutzer noch der Gruppe „Kontooperatoren“ hinzugefügt werden.
Im Profil zusätzlich den Haken setzen, dass das Passwort nicht geändert werden kann! Somit wird die Sicherheit nicht ganz vernachlässigt!

Vorbereitungen auf dem Server für die Datei-Variante
Am einfachsten ist es vom Clientzugriff her gesehen, extra eine verstecke Freigabe zu erstellen, auf die „JEDER“ => „Lesezugriff“ hat (sowohl Freigaberechte als auch NTFS - Rechte). Damit ist die Freigabe vor Veränderungen aus dem Netzwerk geschützt! Dort kann nun eine Datei mit dem Namen „xyz.txt“ anlegt werden. Beim Eintragen von MAC – Adresse und dem dazugehörigen Computernamen genau ein Leerzeichen dazwischen lassen. Dadurch gibt es später beim Suchen keine Probleme. Für jede MAC - Adresse muss eine extra Zeile benutzt werden.
Beispiel:
01.
00-cd-34-56-78-r0-1a TEST01 
02.
34-32-vc-5b-42-33-5h TEST02
Bitte diese Schreibweise beibehalten, da sonst der Batch (unten) das falsche Ergebnis ausgibt!

Vorbereitungen auf dem Server für die Datenbank-Variante
Zuerst sollten auf einem x-beliebigen Server ein Webserver mit PHP und ein MySQL-Server laufen. Zum Verwalten des MySQL-Servers eignet sich am Besten „phpMyAdmin“.

Downloads:
PHP http://www.php.net/downloads.php
MySQL http://dev.mysql.com/downloads/mysql/5.0.html#win32
phpMyAdmin http://www.phpmyadmin.net/home_page/index.php

Für das Einrichten von PHP und MySQL gibt es genügend Tutorials im Internet.

Nun muss zuerst eine Datenbank erstellt werden. „DATENBANKNAME“ könnt Ihr durch Euren Wunschnamen ersetzen. Das SQL – Statement zum Erstellen der Datenbank sieht wie folgt aus:
01.
CREATE DATABASE 'DATENBANKNAME';
Danach muss in der Datenbank noch eine Tabelle erstellt werden. In dieser werden dann später die entsprechenden Daten gespeichert. In einer Datenbank können beliebig viele Tabellen erstellt werden. „mac-adressen“ ist der Tabellename und kann von Euch beliebig verändert werden. Hier das SQL – Statement für das Erstellen der Tabelle:
01.
CREATE TABLE 'mac_adressen' ( 
02.
'id' INT( 255 ) NOT NULL AUTO_INCREMENT PRIMARY KEY , 
03.
'mac' TEXT NOT NULL , 
04.
'pc_name' TEXT NOT NULL  
05.
) ENGINE = MYISAM ;
Da später eine Tabellenabfrage (Datenbankabfrage) stattfindet, wird ein Benutzer benötigt. Nun könnte man sagen: „Ich benutze den MySQL root – Benutzer“, jedoch steht das PW später in der Batchdatei im Klartext drin!! Eine bessere Lösung ist, einen weiteren Benutzer anzulegen, der NUR Leserechte auf die Tabelle hat.
Dazu den phpMyAdmin aufrufen und als „root“ einloggen. Auf der Übersichtsseite den Punkt „Rechte“ (Mitte unten) anklicken.

bef6990564315eb0be8fe973e3d77fe0-rechte - Klicke auf das Bild, um es zu vergrößern

Nun erscheint eine Übersicht mit den vorhandenen Benutzern. Darunter gibt es die Option, einen neuen Benutzer einzurichten => anklicken. Im darauf erscheinenden Formular die entsprechenden Daten eingeben und auf „OK“ klicken. Den Rest braucht Ihr zu diesem Zeitpunkt nicht beachten!
Auf der darauf erscheinenden Seite können nun Berechtigungen (global und / oder lokal) vergeben werden. In unserem Fall interessieren uns nur die Lokalen Berechtigungen! Dazu ungefähr in die Mitte scrollen (Datenbankspezifische Rechte) und im DropDown – Menü die Datenbank angeben, die vorher oben erstellt wurde. Nach der Auswahl wird automatisch die nächste Seite geladen. Hier muss der vorherige Schritt wiederholt werden, nur muss dieses Mal die vorher erstellte Tabelle ausgewählt werden. Die nächste Seite wird wieder automatisch geladen. Jetzt erscheint eine Übersicht mit „SELECT“ / „INSERT“… Bei „SELECT“ bitte alle Einträge markieren (SHIFT – Taste gedrückt halten) und dann mit „OK“ abschicken.

ec898d4183df87e5b46b3b09ce3d9728-select - Klicke auf das Bild, um es zu vergrößern

Voraussetzungen auf den Clients
Leider reichen die Windowsboardmittel nicht aus (egal bei welcher Variante). Aber Gott sei Dank gibt es die Windows Supporttools von WindowsXP (Download: http://www.microsoft.com/downloads/details.aspx?FamilyID=49ae8576-9bb9- ...). Daraus wird die netdom.exe benötigt. Die heruntergeladene Datei entpacken und aus der support.cab die EXE „netdom“ extrahieren. Diese EXE ermöglicht den Domänenbeitritt per Kommandozeile.

Für die Datenbank-Variante wird noch die EXE „mysql.exe“ gebraucht. Diese befindet sich im „bin“ – Ordner von MySQL.

Beide Dateien sollten beim Client im Verzeichnis „C:\WINDOWS\system32“ liegen. Bei der Imagevariante dürfte das kein Problem sein. Bei der RIS Variante gibt es auch eine Lösung (http://www.windows-unattended.de/unattended/referenz/oem_vertriebsverze ...).

Batchdatei


1.Schritt: Einbinden der Datei
Ich habe die Variante mit dem Autostartordner gewählt. Beim Image dürfte es keine Probleme geben. Beim RIS - Server ist es etwas anders. Dazu muss in die *.sif Datei der entsprechende Eintrag getätigt werden:
01.
... 
02.
[GuiRunOnce] 
03.
%windir%\start.bat 
04.
...
Die „start.bat“ (Inhalt dieser Datei sind die folgenden Codezeilen) muss nach „$OEM$\$$“ gespeichert werden.

1e15d02595700bf299c9f5a564a5b908-oem-dir - Klicke auf das Bild, um es zu vergrößern

Nach der Installation per RIS bzw. nach dem Image wird der Rechner neugestartet. Nun wird wahrscheinlich automatisch ein Benutzer (braucht natürlich Adminrechte) angemeldet, sodass automatisch das Script gestartet wird.

2. Schritt: Dafür sorgen, dass die Batchdatei nur einmal ausgeführt wird
Dazu lasse ich eine leere Textdatei auf C: erzeugen und überprüfe dann immer, ob diese bereits existiert.
01.
@echo off & setlocal 
02.
 
03.
::Wartezeit von 2 Minuten 
04.
ping 127.0.0.1 –n 120 >nul 
05.
 
06.
if  exist "C:\computer.txt" goto domain 
07.
....
3. Schritt: Auslesen der MAC – Adresse
Nun wird mit einer einfachen FOR – Schleife die MAC – Adresse ausgelesen und in eine Variable geschrieben.
01.
... 
02.
for /f "tokens=2 delims=:" %%a in ('ipconfig /all ^| find "Physi"') do set mac=%%a 
03.
...
4a. Schritt: Auslesen des Computernamens anhand der MAC - Adresse (Dateivariante)
In der Variable "%pc%" steht nun der Computername. Der Pfad zur MAC-Datei muss natürlich durch Euren Pfad ersetzt werden.
01.
... 
02.
for /f "tokens=2 delims= " %%b in ('type "\\server\freigabe$\mac.txt" ^|findstr "%mac%"') do set pc=%%b 
03.
...
4b. Schritt: Auslesen des Computernamens an Hand der MAC - Adresse (DB - Variante)
Hier kommt nun die mysql.exe zum Einsatz. In der Variable "%pc%" steht nun der Computername, der in der MySQL – Tabelle für diese MAC – Adresse hinterlegt ist.
01.
... 
02.
for /f %%b in ('mysql.exe -h HOST -u BENUTZER -pPASSWORT -D DATENBANK --execute="select * from TABELLE where mac=trim(leading ' ' from lcase('%mac%'));" -s') DO SET pc=%%b 
03.
...
Die groß geschriebenen Wörter sind durch Eure Werte zu ersetzen!

Erweiterung Dez. 2007 - Handling mehrerer MAC-Adressen in der IPConfig-Ausgabe.
Falls mehrere MAC-Adressen je Rechner vorkommen können, statt Schritt 3 und 4b diese Mimik:
siehe Kommentar/Querverweis von Biber weiter unten.
01.
... 
02.
set "Mac=" 
03.
 
04.
:: Es werden alle MAC-Adressen des PC's ermittelt 
05.
for /f "tokens=2 delims=:" %%i in ('ipconfig /all ^| find "Physi"') do call :setmac %%i  
06.
 
07.
 
08.
:: SQL-Query wird erstellt 
09.
Set "Stmt=select inventarnummer,mac_adresse from inventar where ucase(mac_adresse) in (%mac%)" 
10.
 
11.
for /f %%b in ('mysql.exe -h localhost -u root -D LIZENZ --execute="%stmt%" -s') DO SET pc=%%b 
12.
... 
13.
.... 
14.
goto :eof 
15.
 
16.
:setmac 
17.
:: Es wird alle MAC-Adressen aneinandergereiht 'MAC1', 'MAC2', 'MAC3' usw. 
18.
:: und es wird dann wieder zum Caller-Aufruf zurückgesprungen 
19.
If "%mac%"=="" (set "Mac='%1'") else set "Mac=%mac%, '%1'" 
20.
goto :eof

5. Schritt: Computernamen ändern
Jetzt kann der Computername geändert werden. In den folgenden Zeilen braucht nichts verändert zu werden, da dort die Variable "%pc%" eingebaut ist!
01.
... 
02.
REG add "HKLM\SYSTEM\ControlSet001\Control\ComputerName\ComputerName" /v ComputerName /t REG_SZ /d %pc% /f 
03.
REG add "HKLM\SYSTEM\ControlSet001\Services\Tcpip\Parameters" /v "NV Hostname" /t REG_SZ /d %pc% /f 
04.
REG add "HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName" /v ComputerName /t REG_SZ /d %pc% /f 
05.
REG add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v "NV Hostname" /t REG_SZ /d %pc% /f 
06.
...
6. Schritt: Neustart einleiten
01.
... 
02.
echo ok >> „C:\computer.txt“ 
03.
SHUTDOWN -r -f -t 10 
04.
GOTO ende 
05.
...
7. Schritt: Überprüfung, ob Domainabschnitt schon einmal ausgeführt wurde.
01.
... 
02.
:domain 
03.
IF EXIST "C:\domain.txt" GOTO ende 
04.
...
8. Schritt: Computer in die Domäne aufnehmen
Nachdem alle Netzlaufwerke getrennt sind, wird per netdom.exe der Computer in die Domäne aufgenommen. Die entsprechenden Stellen müssen natürlich wieder durch Eure Werte ersetzt werden.
01.
... 
02.
net use * /d /y 
03.
 
04.
NETDOM join %computername% /Domain:DOMÄNE /UserD:BENUTZER /PasswordD:PASSWORT /OU:"OU=Computer,OU=TEST,DC=dt,DC=local" 
05.
...
Als Benutzer könnt ihr den oben erstellten AD - Benutzer verwenden! Zusätzlich habt Ihr die Option, den Computer gleich in eine OU zu verschieben.

9. Schritt: Ende
Nun noch die letzte Abfrage:
01.
... 
02.
echo ok >>"C:\domain.txt" 
03.
shutdown -r -f -t 10 
04.
:ende 
05.
...
Bemerkung zur Datenbank-Variante:
Hierzu lässt sich noch per PHP ein Webinterface programmieren. Leider darf ich meines nicht herausgeben.

Anmerkung:
Ich möchte mich bei „Biber“ und „bastla“ bedanken. Sie haben auch einen Teil beigetragen!


Gruß
Dani
Mitglied: kugelschreiber
11.05.2007 um 17:51 Uhr
Hallo Ihr Lieben.

Aufgrund des schönen Artikels hier, habe ich mich dazu entschlossen auch mal was vernünftiges zu tun und dachte mir, hier das Webinterface "zu programmieren", da dieses ja hier noch fehlt. Ich habe es klein und einfach gehalten.

Ausbaufähig ist ja gewöhnlich alles!

Ihr benötigt dazu wie schon oben beschrieben einen PHP und MySQL fähigen Webserver.
Für lokale Zwecke empfehle ich das XAMPP Paket welches man unter http://www.apachefriends.org erhält. (Seite manchmal recht lahm). Es geht aber auchjeder andere Kombination die PHP,Mysql fähig ist.

Dann nur noch die Datei, die ich angehangen habe entpacken und den Ordner "macadressen" auf den Server ins Verzeichnis "htdocs" kopieren. Eine Datenbank anlegen. Meine heisst hier mac_adressen wo auch gleich die Tabelle "mac_adressen" drin zu finden ist mit den drei Feldern: "id", "mac" und "pc_name" wie oben schon im Beitrag erwähnt.

Eine Vorschau des Webinterfaces erhaltet Ihr unter:
http://www.ronnydrechsler.com/macadressen

b235833cbd3bb6eab1672324ecb2fd7d-aussehen - Klicke auf das Bild, um es zu vergrößern
(Dort könnt IHr auch schon ein bissel probieren.)

UND: Für Kritik bin ich gerne zu haben!

Mit freundlichem Gruß
Der Kugelschreiber

Download
Bitte warten ..
Mitglied: Biber
02.12.2007 um 22:25 Uhr
...und noch eine Erweiterung ist hier im Forum angesprochen und ergänzt worden:

  • Der Umgang mit mehr als einer MAC-Adresse pro PC

Details siehe in diesem Beitrag: MAC auslesen und in mySQL abfragen

Grüße
Biber
Bitte warten ..
Mitglied: TobyCAD
10.03.2011 um 19:21 Uhr
Moin,

danke für die Vorarbeit - ihr habt mir hilfreiche Tipps gegeben.
Ich hab mal versucht, das Ganze (mit einer Textdatei mit den MAC-Adressen) vollautomatisiert unter Windows 7 64-bit Enterprise (32 Clients) und Windows Server 2008 R2 zum Laufen zu bringen. Das Ganze läuft nach dem Klonen (mit Acronis TrueImage) nach einem automatischen Neustart der Rechner ab, die IP-Adressen gibts über DHCP. Ziel der Aktion ist, nach jedem Klonen (Softwareverteilung) die Rechnernamen reproduzierbar zu vergeben. Außerdem wird noch ein Client-spezifisches Hintergrundbild kopiert und Windows aktiviert (wir haben einen KMS-Server in der Umgebung). Nach dem Vorgang zerstören die Rechner die Dateien mit den Passwörtern und fahren sich herunter.

Wie schon erwähnt, habe ich für die 32 Clients auf eine Textdatei mit den MAC-Adressen und Rechnernamen gesetzt, aber für alle Findigen dürfte es ja kein Problem sein, die oben gezeigte Datenbank-Variante einzubauen.

Was ich dazu brauche:
CPAU wird benötigt, um die Batch-Datei vollautomatisch als Administrator auszuführen (ich habe lange gesucht und viel probiert, das war die einzige funktionierende Lösung, die ich gefunden habe, wo man auch das Passwort hinterlegen kann)

Ablauf

  1. Zur Vorbereitung des Klonens/Image-Erstellen melde ich den Rechner von der Domäne ab und gebe ihm den Namen "NEU".
  2. Auf dem Rechner gibt es einen lokalen Admin ("ADMINLOKAL", Passwort "PASSWORTADMINLOKAL").
  3. In der Domäne "DOMÄNE" ist ein Domänencontroller "SERVER" mit der IP 111.111.111.111. Dort gibt es einen Administrator "DOMÄNENADMINUSER" mit dem Kennwort "DOMÄNENADMINPASSWORT" (Dieser muss Domänen-Administrator sein, um die Anmeldung durchführen zu können)
  4. In die Datei XYZ.TXT die MAC-Adressen und die Rechnernamen eintragen.
  5. Auf dem Client KOPIEREN.BAT ausführen:
    • Dabei wird auf den Rechner START.BAT, CPAU.EXE, XYZ.TXT, DEL.BAT kopiert in meinem Beispiel auf E:\DOM\ Es empfiehlt sich, kein Verzeichnis auf C: (oder wo sonst Windows installiert ist) zu nehmen, da es ggf. mit den Rechten Probleme gibt.
    • Außerdem müssen ein paar Registry-Einträge gesetzt werden, der eine geht leider nur per REG-Datei (wegen der Anführungszeichen), das Ganze in einer Batch-Datei sieht so aus:
  6. Jetzt nur noch den Rechner herunterfahren und das Image zum Klonen anfertigen. Nach der Verteilung des Images sollten die SIDs der Rechner geändert werden (macht bei mir Acronis True Image) und alle Rechner neu starten.
  7. Die Rechner starten ein paar Mal neu mit START.BAT, nach ca. 10-15 Minuten ist alles vorbei Dabei wird in einem
    1. Schritt als lokaler Admin angemeldet, der Rechnername an Hand der MAC-Adresse herausgefunden und geändert
    2. Schritt als lokaler Admin angemeldet, der Rechner an der Domäne angemeldet
    3. Schritt als Admin in der Domäne angemeldet, das Hintergrundbild kopiert und Windows aktiviert, schließlich die "Selbstzerstörungsroutine" gesetzt
    4. Schritt das Verzeichnis mit den ganzen Daten (u.a. Admin-Passwörter usw.!!!) gelöscht und der Rechner heruntergefahren

Die Neustarts erfolgen immer mit großer Verzögerung, damit man zur Fehlersuche auch mal noch schnell nachschauen kann, was denn jetzt nicht funktioniert hat

Und hier die Dateien:


XYZ.TXT

Die Datei mit den Mac-Adressen und Rechnernamen, getrennt mit einem Leerzeichen.
01.
00-26-55-43-AE-02 RECHNERNAME1 
02.
00-26-55-43-AE-03 RECHNERNAME2 
03.
00-26-55-43-AE-04 RECHNERNAME3

KOPIEREN.BAT

Diese Datei muss auf dem Client vor dem letzten Herunterfahren als Administrator ausgeführt werden (Kontextmenü -> Als Administrator ausführen...)
01.
md e:\dom 
02.
 
03.
copy \\server\images\dom\start.bat e:\dom /Y 
04.
copy \\server\images\dom\cpau.exe e:\dom /Y 
05.
copy \\server\images\dom\xyz.txt e:\dom /Y 
06.
copy \\server\images\dom\del.bat e:\ /Y 
07.
 
08.
REG add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v AutoAdminLogon /t REG_SZ /d "1" /f 
09.
REG add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultUserName /t REG_SZ /d "ADMINLOKAL" /f 
10.
REG add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultDomainName /t REG_SZ /d "NEU" /f 
11.
REG add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultUserPassword /t REG_SZ /d "PASSWORTADMINLOKAL" /f 
12.
REG add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultPassword /t REG_SZ /d "PASSWORTADMINLOKAL" /f 
13.
 
14.
REG import \\server\images\dom\run.reg

RUN.REG

01.
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run] 
02.
"START"="e:\\dom\\cpau.exe -u ADMINLOKAL -p PASSWORTADMINLOKAL -ex \"e:\\dom\\start.bat >> e:\\dom\\ausgabe.txt\""

START.BAT

Diese Datei wird mehrfach ausgeführt. Um Fehler zu finden und den Ablauf zu steuern, wird ein kleines Protokoll in der Datei MAC.TXT geführt. In der Datei AUSGABE.TXT findet sich dann das komplette Batch-Protokoll.
01.
set log=e:\dom\mac.txt 
02.
 
03.
 
04.
REM Fallauswahl 
05.
if exist "%log%" (for /f "tokens=1 delims=," %%s in ('type "%log%"  ^|findstr "domainbeitritt"') do goto ende) 
06.
if exist "%log%" (for /f "tokens=1 delims=," %%s in ('type "%log%"  ^|findstr "namegeaendert"') do goto domain) 
07.
 
08.
::Nameermitteln 
09.
if exist "%log%" del %log% 
10.
 
11.
echo Ping durchführen (Wartezeit 2') 
12.
::Wartezeit von 2 Minuten 
13.
ping 127.0.0.1 -n 120 >nul 
14.
REM im FOlgenden den Server anpingen zwecks Netzwerkverbindung 
15.
ping 111.111.111.111 
16.
ping SERVER 
17.
 
18.
:: Es werden alle MAC-Adressen des PC's ermittelt 
19.
for /f "tokens=2 delims=:	" %%a in ('ipconfig /all ^| find "Physi"') do echo %%a>> %log% 
20.
echo *******MAC ermitteln******** 
21.
echo alle MAC-Adressen %mac% 
22.
for /f "tokens=2 delims=:	" %%a in ('ipconfig /all ^| find "Physi"') do echo %%a 
23.
 
24.
 
25.
echo *******Rechnername ermitteln******** 
26.
for /f "tokens=1 delims=," %%s in ('type "%log%"') do (for /f "tokens=2 delims= " %%b in ('type "e:\dom\xyz.txt" ^|findstr "%%s"') do if not "%%b"=="" set pc=%%b) 
27.
if "%pc%"=="" goto macfehler 
28.
echo Rechnername ist %pc% 
29.
echo Rechnername ist %pc% >> "%log%" 
30.
 
31.
 
32.
echo *******Rechnername ändern******** 
33.
REG add "HKLM\SYSTEM\ControlSet001\Control\ComputerName\ComputerName" /v ComputerName /t REG_SZ /d %pc% /f 
34.
REG add "HKLM\SYSTEM\ControlSet001\Services\Tcpip\Parameters" /v "NV Hostname" /t REG_SZ /d %pc% /f 
35.
REG add "HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName" /v ComputerName /t REG_SZ /d %pc% /f 
36.
REG add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v "NV Hostname" /t REG_SZ /d %pc% /f 
37.
echo namegeaendert %date% %time%>> "%log%" 
38.
 
39.
 
40.
::neu starten 
41.
SHUTDOWN -r -f -t 30 
42.
GOTO :EOF 
43.
 
44.
 
45.
 
46.
:domain 
47.
REM Abschnitt für Beitritt zur Domäne 
48.
::Wartezeit von 2 Minuten 
49.
ping 127.0.0.1 -n 120 >nul 
50.
REM im FOlgenden den Server anpingen zwecks Netzwerkverbindung 
51.
ping 111.111.111.111 
52.
ping SERVER 
53.
 
54.
echo Der Domäne beitreten... 
55.
net use * /d /y 
56.
start /w pkgmgr /iu:RemoteServerAdministrationTools-Roles-AD-DS-SnapIns;RemoteServerAdministrationTools-Roles-AD-DS;RemoteServerAdministrationTools-Roles-AD;RemoteServerAdministrationTools-Roles;RemoteServerAdministrationTools 
57.
NETDOM join %computername% /Domain:DOMÄNE /UserD:DOMÄNENADMINUSER /PasswordD:DOMÄNENADMINPASSWORT 
58.
 
59.
echo domainbeitritt %date% %time%>> "%log%" 
60.
 
61.
REG add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v AutoAdminLogon /t REG_SZ /d "1" /f 
62.
REG add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v ForceAutoLogon /t REG_SZ /d "1" /f 
63.
REG add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultUserName /t REG_SZ /d "DOMÄNENADMINUSER" /f 
64.
REG add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultDomainName /t REG_SZ /d "DOMÄNE" /f 
65.
REG add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultPassword /t REG_SZ /d "DOMÄNENADMINPASSWORT" /f 
66.
REG add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultUserPassword /t REG_SZ /d "DOMÄNENADMINPASSWORT" /f 
67.
 
68.
::Autostart löschen 
69.
REG delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v START /f 
70.
REG add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v loeschen /t REG_SZ /d "e:\del.bat" /f 
71.
 
72.
 
73.
 
74.
:: ******** Hintergrundbild 
75.
copy e:\dom\desktopbilder\%computername%.bmp c:\windows\desktop.bmp 
76.
 
77.
:: ********* Windows aktivieren 
78.
cscript %windir%\system32\slmgr.vbs /ipk WINDOWS-KEY 
79.
ping 127.0.0.1 -n 5 >nul 
80.
cscript %windir%\system32\slmgr.vbs /skms KMSSERVER:1688 
81.
ping 127.0.0.1 -n 5 >nul 
82.
cscript %windir%\system32\slmgr.vbs /ato 
83.
 
84.
 
85.
 
86.
SHUTDOWN -r -f -t 30 
87.
GOTO :ende 
88.
 
89.
 
90.
 
91.
:macfehler 
92.
echo MAC wurde in Liste nicht gefunden 
93.
echo MAC wurde in Liste nicht gefunden>>%log% 
94.
goto ende 
95.
 
96.
 
97.
:ende 
98.
echo Alles erledigt!

DEL.BAT

Die Datei zum Löschen der ganzen anderen Dateien (mit den Admin-Passwörtern!!!!).
01.
rd e:\dom /S /Q 
02.
 
03.
REG add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v AutoAdminLogon /t REG_SZ /d "0" /f 
04.
REG add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v ForceAutoLogon /t REG_SZ /d "0" /f 
05.
REG add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultUserName /t REG_SZ /d "" /f 
06.
REG add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultDomainName /t REG_SZ /d "DOMÄNE" /f 
07.
REG add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultUserPassword /t REG_SZ /d "" /f 
08.
REG add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultPassword /t REG_SZ /d "" /f 
09.
 
10.
:ende 
11.
::Autostart löschen 
12.
REG DELETE "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v loeschen /f 
13.
 
14.
SHUTDOWN -s -f -t 30
Bitte warten ..
Mitglied: Ravelux
25.03.2011 um 14:32 Uhr
Habe folgendes getan:

@echo off
set /p PC="Computername eingeben:"
REG add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\ComputerName\ComputerName" /v ComputerName /t REG_SZ /d %pc% /f
REG add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters" /v "NV Hostname" /t REG_SZ /d %pc% /f
REG add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName" /v ComputerName /t REG_SZ /d %pc% /f
REG add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v "NV Hostname" /t REG_SZ /d %pc% /f
echo "Computer bitte neu starten"

Jedoch startet bei mir der PC dann nicht mehr bzw will die ganze Zeit Starthilfe ausführen.

Hat sich erledigt. Mein Computername war länger als 15 Zeichen..
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Windows Server
gelöst Windows Server 2012 R2 Kennwort ändern für Domäne (5)

Frage von Hendrik2586 zum Thema Windows Server ...

Windows 7
gelöst PC wieder in Domäne aufnehmen, lokale Anmeldung nicht möglich (2)

Frage von Bluejet zum Thema Windows 7 ...

Batch & Shell
gelöst Datum per batch ändern in Tagen (2)

Frage von crawnby zum Thema Batch & Shell ...

Windows Userverwaltung
gelöst Client in Domäne via VPN Verbindung aufnehmen (6)

Frage von Robgro zum Thema Windows Userverwaltung ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (22)

Frage von patz223 zum Thema Windows Userverwaltung ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (19)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...