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

Mit psexec Gruppe der localgroup hinzufügen wie bekomme ich eine vernünftige Kontrolle?

Frage Microsoft Windows Tools

Mitglied: llaprosper

llaprosper (Level 1) - Jetzt verbinden

15.04.2009, aktualisiert 11:25 Uhr, 4994 Aufrufe, 19 Kommentare

Hallo,

ich möchte eine bestimmte Dömanengruppe der lokalen Administratorengruppe auf unsere Clients verteilen.
Dies funktioniert auch tadellos mit dem Befehl:
psexec.exe @pcs.txt net localgroup administratoren Gruppe /add.

Jetzt bräuchte ich aber eine vernünftige Output-Liste, wo ich erkennen kann, auf welchen Clients es geklappt hat und wo nicht!

Wenn ich hinten noch ein >PfadzurTextDatei\Ergebniss.txt anhänge, bekomme ich eine Liste mit folgendem Inhalt.

Der Befehl wurde erfolgreich ausgeführt.

Der Befehl wurde erfolgreich ausgeführt.

\\Rechner1:
\\Rechner2:
\\Rechner3:

Bei Rechner 2 hat es übrigens(extra) nicht geklappt.
Daraus kann man natürlich nichts erkennen!

Habt Ihr da eine Idee?

Es gibt übrigens Gründe, warum ich es so mache. Also bitte keine Hinweise auf Loginscript ect. auch wenn es nnett gemeint ist
Ich muss es auf jeden Fall "händisch machen, indem ich eine PC-Liste vorgebe und es dann per batch, Script oder so mache.

Vielen Dank schon ´mal
Mitglied: 60730
15.04.2009 um 11:46 Uhr
Servus,

Mach doch aus dem einzeiler einen Zweizeiler:

01.
psexec.exe @pcs.txt net localgroup administratoren Gruppe /add 
02.
psexec.exe @pcs.txt net localgroup Gruppe |find /i "Administratoren" && echo %computername%, ok>>\\server\freigabe\logfile || echo badnews from %computername% >>\\server\freigabe\badlogfile
Gruß
Bitte warten ..
Mitglied: llaprosper
15.04.2009 um 12:09 Uhr
Was meinst du denn in Zeile 2 mit net localgroup Gruppe? Welche Gruppe ist denn da nun gemeint?
Die Domänen oder die Lokale?
Bitte warten ..
Mitglied: 60730
15.04.2009 um 12:12 Uhr
Zitat von llaprosper:
Was meinst du denn in Zeile 2 mit net localgroup Gruppe?
naja - ich hab nichts weiter gemacht, als deiner erste Zeile zu kopieren und zu ändern.

Welche Gruppe ist denn da nun gemeint?
"natürlich" diejenige welche du in der Zeile vorher angelegt hast.

Sorry, ich dachte das wäre selbsterklärend

Um "sicher" zu sein, das eine Gruppe angelegt wurde und dort auch die Gruppe Admins drin ist - "einfach" per Net localgroup Gruppennamen...

a) herausfinden, ob diese existiert
b) herausfinden, ob tasächlich die Admins - wie gewünscht - Mitglieder sind.

Gruß
Bitte warten ..
Mitglied: llaprosper
15.04.2009 um 12:19 Uhr
War auch eigentlich selbsterklärend
Hatte es zu früh losgeschickt.
ok>>c:\logfile.txt || echo badnews from %computername% >>c:\badlogfile.txt
Hmm, das Badlogfile ist nicht da!?
Und im logfile zeigt er mir nur den ersten PC als OK an, dafür 2 mal!

Edit:
Ne, klappt irgendwie nicht.
Die Gruppen werden hinterlegt, im logfile steht aber nur mein eigener Rechnername (und ja, ich bin Admin auf allen Clients. Hab also die Rechte)
weder, der 2.te wo es geklappt hat, steht drin, noch der, wo es nicht geklappt hat.
Bitte warten ..
Mitglied: LotPings
15.04.2009 um 13:35 Uhr
Das kann meiner Meinung nach auch nicht klappen.
Du kriegst doch vom psexec Befehl nur eine Fehlerrückgabe.
Du wirst statt @pcs.txt eine "For /F" Schleife zum einzeln Ausführen nehmen müssen.
01.
for /F "delims=" %%A in (pcs.txt) do psexec.exe \\%%A net ....
Bitte warten ..
Mitglied: llaprosper
15.04.2009 um 13:38 Uhr
alter Schwede, das übersteigt leider meine Kenntnisse. BIn absoluter Newbie in dieser Materie.
Das er mir nur meinen Rechnernamen anzeigt, scheint mir klar, weil,

echo badnews from %computername% >>c:\badlogfile.txt
bezieht sich ja nicht mehr auf meine Liste pcs.txt.

Aber was genau muss ich denn schreiben? Kannst Du das mal ausführen?
Bitte warten ..
Mitglied: 60730
15.04.2009 um 13:48 Uhr
Zitat von LotPings:
Das kann meiner Meinung nach auch nicht klappen.

Womit ich dir recht gebe

denn "nur" aus einem übernommenen einzeiler einen Zweizeiler zu machen - ist tatsächlich sinnbefreit
edit
Bereinigt:

gruppen.cmd

01.
rem in die Domain Gruppe, die Admins einfügen 
02.
net localgroup administratoren domain\Gruppe /add 
03.
rem jetzt testen, ob alles geklappt hat 
04.
net localgroup Administratoren |find /i "domain\Gruppe" && echo %computername%, ok>>\\server\freigabe\logfile || echo badnews from %computername% >>\\server\freigabe\badlogfile
..und das ganze dingens nun via:
psexec.exe @pcs.txt -c gruppen.cmd
starten.

So sollte das funktionieren.

Gruß
Bitte warten ..
Mitglied: llaprosper
15.04.2009 um 14:10 Uhr
Zitat von 60730:

<code>
rem zuerst muß mal die Gruppe angelegt werden...
net localgroup Gruppe /add

Warum dieser Schritt?Sollte es denn nicht nur mit nachfolgendem Befehl reichen?
Die Domaingruppe gibt es doch schon.

rem dann in die neue Gruppe, die Admins einfügen
net localgroup administratoren Gruppe /add
Bitte warten ..
Mitglied: 60730
15.04.2009 um 14:18 Uhr
Zitat von llaprosper:
> Zitat von 60730:
> ----
Warum dieser Schritt?Sollte es denn nicht nur mit nachfolgendem
Befehl reichen?
Die Domaingruppe gibt es doch schon.

Ärgs....

weil du das so geschrieben hast

Beim nächsten Mal dann bitte:
net localgroup domain\Gruppe....
..dann kommt man[n] (speziell ich) - trotz anonymisierung auch drauf, was du willst
(obwohl es in deiner Frage ja auch beschrieben war)

mea Culpa ²
Bitte warten ..
Mitglied: llaprosper
15.04.2009 um 15:28 Uhr
Klappt leider nicht. Ich bekomme
a) nur die logfile.txt und
b) nur meinen Rechner mit einem OK drinn.

Ich teste es aber immer an 3 Rechnern. "Bei 2en wo es immer klappt. (Weil es sie gibt )
Und bei einem soll es fehlschlagen.

Wie gesagt: Mein PC wird mir im Textfile angezeigt, der andere leider nicht.
Und einen Fehler beim dritten PC wird leider auch nicht angezeigt.
Bitte warten ..
Mitglied: 60730
15.04.2009 um 17:04 Uhr
ich hab obigen letzten Schnippsel nun geändert und auch bei mir mit Werten gefüllt, die klappen.

Poste mal deinen Schnippsel - denn das funktioniert schon

Zur Sicherheit mal so herum:

01.
:parameter 
02.
Set "Log==\\server\freigabe\log.txt" 
03.
Set Gruppe==domain\gruppe" 
04.
 
05.
:Ab hier dann bitte nichts ändern 
06.
echo %date%>>%log% 
07.
if not exist %log% echo Fehler 
08.
net localgroup administratoren %Gruppe% /add 
09.
net localgroup Administratoren |find /i "%Gruppe%" && echo %computername%,ok>>%log%|| echo badnews from %computername%>>%log%
Den Abschnit :Parameter bitte anpassen und nochmal probieren.
Ich tippe ja irgendwie drauf, dass derjenige keine Rechte auf den Pfad für das Fehlerlog hat - daher alles in das gleiche Log schreiben lassen.

Gruß
Bitte warten ..
Mitglied: llaprosper
16.04.2009 um 09:51 Uhr
Also, mein Schnibsel sieht so aus:
gruppen.cmd:

net localgroup administratoren meine vorhandene Domänengruppe /add
net localgroup administratoren |find /i "meine vorhandene Domänengruppe" && echo %computername%, ok>>\\Freigabe\logfile.txt || echo badnews from %computername% >>\\Freigabe\badlogfile.txt

Auf der Feigabe hat "jeder" volle Rechte.

In meiner pcs.txt stehen 3 Rechner
meiner
vom Kollegen
ein nicht existierender

Eingabeaufforderung: (Ich habe übrigens Domainadminrechte)
psexec.exe @pc´s -c gruppen.cmd

Es wird in der Freigabe die logfile.txt erstellt mit dem Inhalt:
Mein Rechner, ok
Bitte warten ..
Mitglied: 60730
16.04.2009 um 10:18 Uhr
Moin,

dann nimm mal bitte die letzte Version.

Und zum ausprobieren (obwohl bei mir alles läuft) folgende Änderungen hintereinander:

  • Pipe nicht in \\server\freigabe - sondern direkt in c: - das muß du dann aber auf dem Client ansehen.
  • füge beim psexec Aufruf ein -i vor -c ein und eine Pause ans Ende der Gruppen.cmd.

btw: ich lese gerade in deinem ersten Post...
Wenn ich hinten noch ein >PfadzurTextDatei\Ergebniss.txt anhänge, bekomme ich eine Liste mit folgendem Inhalt.
Ich hab PsExec v1.94, ads mag das nicht.

Wenn du tatsächlich eine gefüllte Textdatei erhälst, dann mach es ganz anders...
Zeile 9:
01.
net localgroup Administratoren |find /i "%Gruppe%" && echo %computername%,ok>>%log%|| color ff
"Damit" wird der Errorlevel im nichtfall auf 1 gesetzt.

Gruß
Bitte warten ..
Mitglied: llaprosper
16.04.2009 um 12:00 Uhr
Moin,

danke, werde ich mal testen.
Ich sehe gerade bei der vorherigen Version von Dir in der Eingabeaufforderung folgendes:

Beim Versuch für die entfernten pcs etwas in die logfiles zu schreiben, kommt:
Zugriff verweigert!!!!! Hatte ich noch gar nicht gesehen.
Verstehe ich allerdings nicht, da auf dem Share "jeder" Vollzugriff hat!
Da muss also der Haken sein, mehr als freigeben kann ich allerdings nicht!?

Und egal, welchen Pfad ich für die Logs angebe und freigebe: Mein Rechnername wird immer geschrieben, bei den anderen kommt: Zugriff verweigert!
Bitte warten ..
Mitglied: 60730
16.04.2009 um 12:18 Uhr
Moin zurück,

Verstehe ich allerdings nicht, da auf dem Share "jeder" Vollzugriff hat!
Da muss also der Haken sein, mehr als freigeben kann ich allerdings nicht!?

Im zweifel sind es nicht nur die Rechte auf die Freigabe, sondern auch die im Ordner.
füge noch ein - u (domain\user) -p (Passwort) mit den jeweiligen Daten ein.

Gruß
Bitte warten ..
Mitglied: llaprosper
16.04.2009 um 12:23 Uhr
ich hab dem Kollegen sogar kurzzeitig Domainadmin-Rechte gegeben und es klappt nicht.
Raff ich nicht
Bitte warten ..
Mitglied: llaprosper
16.04.2009 um 13:33 Uhr
Zitat von 60730:


  • Pipe nicht in \\server\freigabe - sondern direkt in c: - das
muß du dann aber auf dem Client ansehen.
  • füge beim psexec Aufruf ein -i vor -c ein und eine Pause ans
Ende der Gruppen.cmd.

Das klappt einwandfrei!
Ich frage mich, warum mein Rechner sich in jede Freigabe schreibt und andere nicht, trotz Domainadminrechte!

Wenn ich jetzt nur folgendes teste:
psexec.exe @pcs.txt net localgroup Gruppe |find /i "Administratoren" && echo %computername%, ok>>\\server\freigabe\logfile || echo badnews from %computername% >>\\server\freigabe\badlogfile

und in der pc.txt nur den Rechner von meinem Kollegen habe, koomt trotzdem die Meldung: badnews from "meinem PC"!!!
Ich verstehe nun bald gar nichts mehr
Bitte warten ..
Mitglied: 60730
16.04.2009 um 14:09 Uhr
> Zitat von 60730:
> ----

>
> * Pipe nicht in \\server\freigabe - sondern direkt in c: - das
> muß du dann aber auf dem Client ansehen.
> * füge beim psexec Aufruf ein -i vor -c ein und eine Pause
ans
> Ende der Gruppen.cmd.
>
Das klappt einwandfrei!
Ich frage mich, warum mein Rechner sich in jede Freigabe schreibt und
andere nicht, trotz Domainadminrechte!

siehste mal

Aber verrat mir doch mal deine Version von PSexec
Probier das mit dem color ff aus - wenn dein PSexec die Ausgabe bei dir lokal in eine Datei pipt.

01.
:parameter 
02.
Set Gruppe==domain\gruppe" 
03.
 
04.
net localgroup administratoren %Gruppe% /add 
05.
net localgroup Administratoren |find /i "%Gruppe%" || color ff
Die erfolgreichen Systeme geben dann lokal bei dir eine 0 und die Fehlerhaften eine 1 zurück.

Gruß
Bitte warten ..
Mitglied: llaprosper
16.04.2009 um 14:18 Uhr
Die Version ist die 1.94.0.0.
Das andere teste ich mal

Edit:

Hab es jetzt mit -u -p gemacht!
FUNKTIONIERT!

Wobei ich nie gerne irgendwo ein sensibles PW in Klarschrift eingebe!
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Windows 7
AD-Benutzer einer Lokalen Gruppe hinzufügen(16Bit OU) (3)

Frage von WIZARDBOY zum Thema Windows 7 ...

Windows Server
gelöst Zusätzlichen Windows Server 2012R2 Domänencontroller hinzufügen (5)

Frage von Mar-west zum Thema Windows Server ...

Netzwerkgrundlagen
IPsec - .conf und .secret erstellen aus Gruppe und User (16)

Frage von MaxMLe zum Thema Netzwerkgrundlagen ...

Windows Userverwaltung
AD Gruppe der Domänen-Admins überwachen (5)

Frage von ThorstenRay zum Thema Windows Userverwaltung ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
M.2 SSD wird nicht erkannt (14)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...