Seite 1 von 1
Beschreibung im AD aktualisieren
Verfasst: 01 Mär 2022, 08:15
von max_daniel
Guten Morhen an alle,
wir richten die Rechner mit Windows 10 ein und werden diese Rechner dann dem DC mit einer Beschreibung hinzugefügt, das Problem ist, wenn ein Mitabreiter danach die Beschreibung eines PC in OPSI ändert, bleibt die alte Beschreibung in AD, deshalb wollte ich fragen, wie kann ich die Beschreibung im AD auch automatisch ändern lassen, wenn die in OPSI geändert wurde? Natürlich ohne den DC erneut beizutreten!
Vielen Dank!
Daniel Max
Re: Beschreibung im AD aktualisieren
Verfasst: 01 Mär 2022, 10:00
von Jan.Schmidt
moin,
hast du sql als opsi backend?
Keine Angst vor scripten?
Dann kann ich dir helfen.
Das hab ich für uns umgesetzt
Re: Beschreibung im AD aktualisieren
Verfasst: 02 Mär 2022, 08:41
von max_daniel
Guten Morgen, Danke für die Antwort, ich freue mich wenn du mir dabei helfen kannst, wir haben schon sql als opsi backend und keine Angst vor Skripten
Viele Grüße
Daniel Max
Re: Beschreibung im AD aktualisieren
Verfasst: 02 Mär 2022, 17:01
von Jan.Schmidt
Das ist ein zusammengekürzter und damit ungetesteter Ansatz.
Das Script (das auf dem OPSI läuft) macht deutlich mehr, aber durch das zusammenkürzen auf die Funktion kann ich was unterschlagen haben.
Dann mag da "krude" zusammengezimmert aussehen, das weiß ich - diesen Weg habe ich aber absichtlich gewählt um Spuren zu hinterlassen, was hat das eine Script ausgeworfen und das andere verarbeitet.
Im groben brauchst du eine Freigabe - ich hab die auf dem OPSI Server gemacht - da schreibt der OPSI die Infos für die AD.
Da stehen keine "geheimnisse" drin und daher darf gast da rw
Dürfte der da nur lesen - hätte ich mir die Möglichkeit genommen den Import auf mehrern AD Servern zu machen - denn doppelte imports der gleichen Daten sind nicht mein Steil. Da nehme ich das rwin kauf - das mußt du selber entscheiden.
Der Gast hat leider auch den Vorteil, dass das script als system auf den AD Servrn laufen kann und ich keine Anmeldedaten irgendwo hinterlegen muss.
Ja Teufel -> Belzebub - einen Tod müssen wir alle sterben....
Sei also gewarnt
"Meine" OPSI Server heissen srv-f-opsixx oder srv-b-opsixx und sind nicht in der Domain -daher werden die per regex unten ausgeklemmt.
OPSI Sever
/etc/fstab hat geschrieben:
/etc/samba/smb.conf hat geschrieben:
Code: Alles auswählen
[tools]
admin users = @pcpatch
comment = tools
create mask = 0660
directory mask = 0770
force user = tools
guest ok = Yes
path = /mnt/tools
read only = No
write list = @pcpatch tools
Das mußt du anpassen und via crontab auf dem OPSI laufen lassen
/usr/local/bin/opsi2ad.sh hat geschrieben:Code: Alles auswählen
#/bin/sh
export MYSQL_PWD=DEINOPSIMYSQLPASSWORD
share=/mnt/tools
echo 'select hostId,description from HOST where not hostId REGEXP "srv-[b-f]-opsi";'|mysql -u 'opsi' opsi --skip-column-names>/tmp/opsi_desc.csv
awk '{printf "%s\r\n", $0}' /tmp/opsi_desc.csv > /home/opsi/opsi_desc.ini
sed -i 's|.dipf-intern.de||g' /home/opsi/opsi_desc.ini
sed -i 's|ä|ae|g' /home/opsi/opsi_desc.ini
sed -i 's|ö|oe|g' /home/opsi/opsi_desc.ini
sed -i 's|ü|ue|g' /home/opsi/opsi_desc.ini
sed -i 's|ß|ss|g' /home/opsi/opsi_desc.ini
cp /home/opsi/opsi_desc.ini $share/opsi_desc.ini
Der / Die AD Server - Das da per Aufgabenplanung
ich rate dir -mach ein rem vor die zeile if exist C:\script\opsi2ad\import.cmd call C:\script\opsi2ad\import.cmd und führe die beim ersten mal in einer eigenen dosbox aus, nachdem du dir die cmd mal angeschaut hast - andernfalls kommt eine Waschmaschine bei mir an und deine Firma bekommt die Rechnung!!!
C:\script\opsi2ad\import_computer_desc.cmd hat geschrieben:Code: Alles auswählen
net use a: \\srv-f-opsi01\tools /user:gast
if exist C:\script\opsi2ad\import.cmd del C:\script\opsi2ad\import.cmd
for /f "tokens=1,*" %%a in ('type A:\opsi_desc.ini') do call :get_cn %%~a "%%b"
cd /d C:\script\opsi2ad
if exist C:\script\opsi2ad\import.cmd call C:\script\opsi2ad\import.cmd
if %time:~0,2% leq 1 del A:\_snipe_it_2_opsi\opsi_desc.ini
net use a: /d /y
goto eof
:get_cn
for /f "delims=" %%a in ('dsquery computer domainroot -name %1') do set cn=%%a
findstr /c:"%cn%" C:\script\opsi2ad\import.cmd || echo dsmod computer %cn% -desc %2>>C:\script\opsi2ad\import.cmd
findstr /c:"%1 %~2" A:\_snipe_it_2_opsi\opsi_desc.ini>A:\_snipe_it_2_opsi\opsi_desc.tmp
move /y A:\opsi_desc.tmp A:\opsi_desc.ini
:eof
Re: Beschreibung im AD aktualisieren
Verfasst: 03 Mär 2022, 09:25
von max_daniel
Vielen Dank! Ich werde dies testen.
Re: Beschreibung im AD aktualisieren
Verfasst: 03 Mär 2022, 19:27
von Jan.Schmidt
In Wahrheit landet der ganze Kram auf einem Unterorder A:\_snipe_it_2_opsi\ - da ich vom Snipeit in den opsi und vom opsi in xyz abgleiche
zumindestens in dem windows cmd hab ich den an einer Stelle NICHT von A:\_snipe_it_2_opsi\ zu A:\ umgeändert !!!
Da->
Code: Alles auswählen
findstr /c:"%1 %~2" A:\_snipe_it_2_opsi\opsi_desc.ini>A:\_snipe_it_2_opsi\opsi_desc.tmp
Re: Beschreibung im AD aktualisieren
Verfasst: 06 Mär 2022, 15:57
von Jan.Schmidt
Jan.Schmidt hat geschrieben: ↑02 Mär 2022, 17:01
Das ist ein zusammengekürzter und damit ungetesteter Ansatz.
... und ich hab den nächsten "klopper" gefunden...
Ich mounte das garnicht als gast, sondern als benutzer tools, einen lokalen Benutzer im opsi Server der nix darf, außer rw auf den Ordner...