Linbo regpatcher ab 4.0.13

Hallo,

ich habe mit Linbo 4.0.16 heute auch einen Laptop Lenovo ThinkBook 14s Yoga erfolgreich geheilt.

VG Buster

2 „Gefällt mir“

Danke für die Rückmeldung. Warten wir noch ab, was @baumhof meldet.

VG, Thomas

Hallo Thomas,

ich habe letzte Nacht von 4.0.12 auf 4.0.16 upgedatet und das in meiner
VM getestet.
Bisher kann ich sagen; die VM hat problemlos gebootet, ich konnte mich
anmelden, die Netzlaufwerke waren da und die relevanten Stellen in der
Registry waren gepatched.
Das war mit dem Regpatch aus den examples.
Ich werde das Heute noch mit meinem alten Regpatch testen (nur aus
Neugierde: der examples Regpatch tut es ja auch).

Morgen wird da auf meinen ca. 60 Clients in 2 Computerräumen getestet:
danach melde ich mich noch einmal.

LG
Holger

2 „Gefällt mir“

Hallo,

hier das Ergebnis des Ausrollens.

Es hat Problemfrei funktioniert.
60 Rechner wurden versorgt.

Der Ablauf war so:
warmstart=no steht in der start.conf (ich finde ja, das sollte Default
sein und man sollte das per warmstart=yes aufheben können, weil es doch
mehrere Clients gibt, wo warmstart nicht so richtig klappt … das ist
aber eine andere Baustelle).
Die Clietns wurden gebootet (zum Großteil mittels linbo-remote -w …
Sie booten 4.0.12 und aktualisieren sich, dann machen sie einen reboot.
Nach dem reboot erscheint kein splash und keine GUI, man kann also weiß
auf schwarz sehen, was passiert: sie syncen, wie sie es sollen.
Danach machen sie einen reboot und starten Windows.
Alles gut.
Startet man sie wieder neu, dann ist auch die gui da, wie sie es sein soll.

Von meiner Warte aus: alles super, Danke :slight_smile:

LG

Holger

3 „Gefällt mir“

Hallo Holger,

super, danke. Dann gibt es jetzt gleich ein Paket.

VG, Thomas

3 „Gefällt mir“

Hallo Holger, Hallo all,

unsere gegenwärtigen Version, siehe hier:
https://ask.linuxmuster.net/t/ln7-1-nach-upgrade-windows-bluescreen/8746

könnt Ihr mir bitte noch mal helfen, welcher reg-patch jetzt der richtige ist?
wir haben uns an diese Anleitung gewendet:
https://docs.linuxmuster.net/de/v7.1/clients/client_templates/os_installation/windows10clients/index.html

Mit der Info und aus der aktuellen examples Vorlage, haben wir händisch folgenden win.image.reg erstellt, der dann passend zum Win10 Image sich zB so darstellt:
Nr. 1

 cat /srv/linbo/images/win_10_v4/win_10_v4.reg

Windows Registry Editor Version 5.00

; linuxmuster.net 7

; patches hostname, to be applied after every image sync

[HKEY_LOCAL_MACHINE\System\ControlSet001\Control\ComputerName\ActiveComputerName\]
"ComputerName"="{$HostName$}"

[HKEY_LOCAL_MACHINE\System\ControlSet001\Control\ComputerName\ComputerName\]
"ComputerName"="{$HostName$}"

[HKEY_LOCAL_MACHINE\System\ControlSet001\Services\Tcpip\Parameters\]
"Hostname"="{$HostName$}"
"NV Hostname"="{$HostName$}"

; add your custom registry patches below
:setzt den Domänennamen richtig
[HKEY_LOCAL_MACHINE\System\ControlSet001\Services\Tcpip\Parameters]
"Domain" = "BS-WIZ"

Der Kollege hat einen direkt per Linbo4 unter Lmn71 erstellen lassen, der ganz anders aussieht.
Kann das so sein? Bzw. welcher ist dann der richtige?
Nr. 2

 cat /srv/linbo/images/win10_v2/win10_v2.reg

Windows Registry Editor Version 5.00

; setzt den Computernamen richtig
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ActiveComputerName\]
"ComputerName"="{$HostName$}"

; setzt den Computernamen richtig
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ComputerName\]
"ComputerName"="{$HostName$}"

; setzt den Computernamen richtig
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\services\Tcpip\Parameters\]
"Hostname"="{$HostName$}"
"NV Hostname"="{$HostName$}"

; setzt den Domainnamen richtig
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System\]
"DefaultLogonDomain"="BS-WIZ"

; setzt den Computernamen und Domainnamenrichtig
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters]
"Domain"="BS-WIZ"
"NV Hostname"="{$HostName$}"
"Hostname"="{$HostName$}"
"NV Domain"="BS-WIZ"

„Es kann nur einen geben“ der hier richtig ist. Eigentlich doch Nr. 1 oder? Aber Nr. 2 ist gerade erfolgreich gebootet - ich bin verwirrt.
Beim zweiten Prüfen, sehe ich, dass Nr. 2 wohl aus der Vorlage von win7.image.reg entstanden ist. Also muss ich jetzt rausfinden, ob es doch von unsererseits ein Fehler war, oder … ?
Könnt Ihr bitte mal schauen, wie das bei euch aussieht, bzw. mir mitteilen, wie der richtige W10 Patch bei lmn71 und Linbo4 aussehen soll?

Grüße,
Gerd

Hallo Gerd,

meiner sieht, nach vielen Tests, inzwischen nurnoch so aus:

Windows Registry Editor Version 5.00

; linuxmuster.net 7

; patches hostname, to be applied after every image sync

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ActiveComputerName\]
"ComputerName"="{$HostName$}"

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ComputerName\]
"ComputerName"="{$HostName$}"

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters\]
"Hostname"="{$HostName$}"
"NV Hostname"="{$HostName$}"

; add your custom registry patches below

das ist der seit mehreren Wochen in der Schule produktiv verwendete
regpatch (da läuft gerade linbo 4.0.17)

LG

Holger

Hi Holger,

ich glaub’ ich bin heute nicht mehr aufnahmefähig …
der Patch entspricht dann auch dem, der bei meinem letzten Test Lmn71, Linbo4.0.23 funktionierte, meiner Nr. 2.
ABER diese Einträge entsprechen bei uns der Vorlage für windows 7, nicht 10 siehe
cat /srv/linbo/examples/win7.image.reg
Der für Win10 hat nur solche Einträge für
HKEY_LOCAL_MACHINE\System\ControlSet001\
Wir sprechen beide von Windows 10 Clients?


EDIT: und den echten Domain Namen schreibst du nicht mehr da rein?

Zitat aus der aktuellen Anleitung:
https://docs.linuxmuster.net/de/v7.1/clients/client_templates/os_installation/windows10clients/index.html

  1. Alternativ in der Server-Shell aus /srv/linbo/exmaples die richtige Vorlage in /srv/linbo kopieren. Die Datei trägt dann den Namen <imagename>.reg - also in o.g. Beispiel win10.reg.
  2. In Zeile 22 musst du noch Folgendes ergänzen:

:setzt den Domänennamen richtig [HKEY_LOCAL_MACHINE\System\ControlSet001\Services\Tcpip\Parameters] „Domain“ = „“

Hier durch den zuvor festgelegten Namen der Samba_Domäne ersetzen. Hattest du z.B. während der Installation gshoenningen.linuxmuster.lan gewählt, so gibst du hier nur gshoeningen an.


Hmmm - ich mach’ erst mal schluss und drink’n Bier.
Grüße und frohe bunte Eier,
gerd

Hallo Gerd,

:setzt den Domänennamen richtig
[HKEY_LOCAL_MACHINE\System\ControlSet001\Services\Tcpip\Parameters]
„Domain“ = „“

Hier durch den zuvor festgelegten Namen der Samba_Domäne ersetzen.
Hattest du z.B. während der Installation gshoenningen.linuxmuster.lan
gewählt, so gibst du hier nur gshoeningen an.

hatte ich früher drin.
Inzwischen (bei den Tests zum regpatcher ab linbo 4.0.12 (oder so) hab
ich aber bemerkt, dass dieser Wert in der Registry unabhängig vom
Regpatch stimmt: das wird wohl bei der Domänenaufnahme reingeschrieben:
also ist diese Patchzeile überflüssig, also lasse ich es weg.

LG

Holger

Hallo Hollger,
okay,

So genau kenne ich die Systematik der Windwos Registry nicht, aber, wenn ich zB folgendes richtig verstehe:
https://renenyffenegger.ch/notes/Windows/registry/tree/HKEY_LOCAL_MACHINE/System/CurrentControlSet/
und noch mal in anderen Worten:

Yes, you only need to update the CurrentControlSet key…
ControlSet001 and ControlSet002 are alternating backups of CurrentControlSet, you don’t need to update them.
Edit: As K noted, CurrentControlSet is an alternating symbolic link to either ControlSet001 or ControlSet002. The other key is kept as a backup for the Load Last Known Good Configuration boot option.

Bedeutet, dass bei Windows 7 und Windows 10 im Prinzip doch das gleiche angesprochen wird.
Bei dem win10.image.reg wurde sich für die direktere Variante entschieden, bei win7.image.reg für die verlinkte Variante.
Und die von dir gewählte (win7) Variante deckt sich mit Aussagen anderer Foren, wie zB hier am Ende:
https://stackoverflow.com/questions/291519/how-does-currentcontrolset-differ-from-controlset001-and-controlset002

The most valuable and reliable control set is CurrentControlSet . If you need to modify system settings in the Registry, CurrentControlSet is the best subkey to choose because you know that it is the correct control set.

Ich werde mal beide Varianten über Ostern testen und wieder berichten.
Für jede weitere Hinweise dankbar …

Grüße,
gerd

Nur wenn man mit Underscore arbeitet :wink:. Ansonsten setzt man das einmal per global.reg, macht die Domänenaufnahme und dann das Image.

VG, Thomas

Hallo Thomas, hallo Holger,

gerade erst gesehen, dass obiges Thema anscheint im folgenden Thread fortgesetzt und ausführlich behandelt wurde.
https://ask.linuxmuster.net/t/lmn-7-1-probleme-mit-regpatches-fuer-windows/8656
Ich lese da noch mal drüber und schaue mal, ob ich mit neinen Tests die Tage noch was beitragen kann.

Grüße,
gerd

Hallo Gerd,

schau nochmal in den von dir angesprochenen Thread: da hab ich das ja
alles durchgetestet.

Schau auch in das issue zum Regpatch.
Ich meine linbo nimmt jetzt ControlSetXXX Einträge und schreibt sie
einfach nach CurrentControlSet (so irgend was war da).

Aber eigentlich ist es wurscht: nimm den abgespeckten RegPatch von mir
und gut ist.
Thomas hat ja schon gesagt, dass der Domain Eintrag durch den global.reg
gemacht wurde.

LG

Holger

Das hat jetzt auch bei uns an den ersten drei HW-Gruppen funktioniert.
Die Schritte waren folgende:

  • backup per zfs Snapshot
  • Upgrade auf diese Versionen von lmn71 und Linbo 4.0.23
  • umwandeln der cloop Images per
  • root@server:/srv/linbo# linbo-cloop2qcow2 metall_w10.cloop
  • im neu erstellen Verzeichnis, den vorhandenen Reg-Patch durch obigen ersetzt (natürlich ohne den Namen zu ändern)
  • da bisher beim Starten der Clients Linbo nicht selbständig ein Upgrade von Vers. 2.4 auf 4.x durchführt, immer jeweils 1x unter Vers. 2.4 partitioniert, Reboot, ein zweites mal unter der dann neu gezogenen Linbo Vers. 4.0.23 partitioniert, Reboot
  • erst nach diesen Prozessen per roten neuinstallieren Schaltfläche Windows 10 neu aufgespielt
  • bei den anschließenden Tests funktionierte der Domain Login und der Hostsname war der, den dieser Client per devices.csv bekommen soll

EDIT: Teil 2 meiner ToDo Liste:

  • nacheinander sämtliche cloop Images umwandeln
  • da ich hier von einer großen Schule mit zu vielen HW-Gruppen und noch mehr cloop Images spreche, brauchte ich eine Calc-Tabelle zum „abhaken“ und Dokumentieren
  • alle *.reg Datein neu schreiben, nach dem Schema:
    cat mustervorlage.reg > /srv/linbo/images/fujitsu_p900/fujitsu_p900.reg
  • sämtliche start.conf.HW-Gruppe Datein Umgeschrieben, „cloop“ in „qcow2“ geändert und evtl. den Autostart je nach Vorhaben, erst mal auf „no“
  • Aufgefallen ist mir dabei, dass der Server vor allem wegen der ganzen /usr/bin/ctorrent prozesse eine hohe Systemlast zeigte, auch noch mit vielen cloop prozessen
  • also aufräumen:
  • Verzeichnis „MÜLL“ erstellt und mit Befehlen wie den folgenden alles, was nicht mehr benötigt wird, also zB alles mit „cloop“ im Namen, dorthin verschoben
find /srv/linbo/ -name '*HW-Gruppe*' -exec mv -v -t /srv/linbo/MÜLL/ {} +
find /srv/linbo/ -name '*cloop*' -exec mv -v -t /srv/linbo/MÜLL/ {} +
  • Ebenfalls wieder per copy&past Dokumentiert
  • Da sich das Verzeichnis /srv/linbo langsam leert, bekommt man hier allmählich den Überblick was weg sollte und was nicht, dann noch mal:
linuxmuster-import-devices
systemctl restart linbo-torrent.service
update-linbofs
reboot
  • dann waren auch bei uns die letzten cloop Prozesse weg, siehe:

    Die Last der qcow2.torrent’s ist, weil sie neu sind, das lässt nach ein paar Minuten nach

Die nächsten Tage geht’s ans Verteilen an grob 600 Clients :wink:

OT: noch ein unbedingter Tipp für Leute, die per Remote unter Linux auf alles zugreifen können wollen, seit kurzen und nach einigen Posts mit einem der Entwickler, auch Multiuserfähig, in diesem Bereich klar das Beste: Ásbrú Connection Manager

Danke und Grüße,
gerd

2 „Gefällt mir“

Hallo Gerd,

Danke für die Zusammenfassung.
Jetzt wo du es sagst, erinnere ich auch Probleme mit dem upgrade von 2.4 auf 4.x am Client.
Ich meine, ich mußte auch unter 2.4 partitionieren (während schon 4 auf dem Server war).
Es hat aber auch gereicht einmal den Inhalt der Cachpartition per linbo-ssh komplett zu löschen.

rm -r /cache/*

LG

Hogler

nur eine kurze vielleicht abschließende Rückmeldung:
wir haben jetzt grob 95% der Clients, ganz grob ca. 500, nach obigem Schema umgestellt bekommen.
Die ein zwei Hand voll, die blöd gemacht haben, haben nichts mit dem Upgrade zu tun.
Wir mussten so gut wie alle -wie oben beschrieben- manuell zum Ziehen der 4er LINBO Version überreden, das funktinierte bei fast allen auch nach zwei Reboots nicht von allein.
Sprich: Gute Arbeit! Bei uns hat der Upgrade auf 7.1 sehr gut funktioniert, den Produktiven Test im Einsatz folgt ab Monatg :wink:

Grüße,
gerd

Hallo zusammen,
leider muss ich diesen Threat noch einmal hervor holen.
Ich habe gerade das Problem, dass alle Rechner (Win7 pro) eines Typs die Vertrauensstellung zur Domäne verloren haben.

Die Rechner wurden auf cqow2 umgestellt und sie laufen mit dem neuen Linbo. Danach sind sie noch gelaufen.

Nach ewigen suchen bin ich darauf gestoßen: Die image.reg sieht aus, wie oben, also z. B.
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters]
„Hostname“=„{$HostName$}“
„NV Hostname“=„{$HostName$}“

Ursprünglich war hier das s von services klein geschrieben. Übrigens: Ich glaube, klein ist richtig. In der Registry ist services klein geschrieben. Nun habe ich genau das Problem, dass die o. g. Fehlermeldung beim Durchlaufen des reg Patches kommt:

— Import KEY <\ControlSet001\Services\Tcpip\Parameters> add_key: key Services already exists!
trav_path: Error: Not a ‚nk‘ node!
add_key: current ptr not ‚nk‘
trav_path: Error: Not a ‚nk‘ node!
add_key: current ptr not ‚nk‘

END OF IMPORT, file </tmp/reg.2674.02>, operation FAILED!
1 keys
0 new keys added
0 values total

Dabei ist es völlig egal, ob s klein oder groß ist. Wozu führt das nun? Der Rechner hat an manchen Stellen den richtigen Namen. Ich kann mich z. B. mit 304-pc12\admin lokal anmelden. Wenn man aber in die Systemsteuerung schaut, dann ist der Computername der Computer, der das Image gebaut hat. In meinem Fall 304-pc01. Damit ist klar, wo mein Problem plötzlich herkommt. 42 Rechner, darunter 304-pc01 laufen mittlerweile auf Win 11 pro. D. h. er versucht, sich mit dem Konto eines Rechners anzumelden, den es „so“ nicht mehr gibt. Sprich: Unter Win11 hat er ein anderes Konto.

Wenn ich in der Registry in Tcpip\Parameters den Rechnernamen 2x ändere, dann klappt wieder mit der Anmeldung.

Als workarround baue ich gerade ein Image mit einem Rechner, den es noch gibt und hoffe, dass sich dann alle anderen Rechner mit dessen Konto an der Domäne anmelden.

Kann es evtl. so gelaufen sein: Unter Win 7 schreibt man services klein. Unter Win 10 groß. Damit dass mit den alten reg Files klappt, wird das s im Hintergrund nun immer groß gemacht, obwohl es für Win 7 klein sein müsste.

Kann ich evtl. im postsync etwas machen, damit diese beiden Hostnamen wieder gesetzt werden?
Gruß,
Markus

Hallo Markus,

ersetz doch mal deine image.reg durch eine frische aus der Vorlage …

LG

Holger

H Holger,
ich habe doch die obige reg. (mit diff überprüft) Ok, mit einem Zusatz am Ende.

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation]
„RealTimeIsUniversal“=dword:00000001

In der Vorlage in meinem linbo/examples ist …services… klein geschrieben und war es bei mir auch. Egal ob klein oder groß: Wie bei Dir damals klappt alles. Ich habe heute jeden Eintrag nach dem Hochfahren überprüft. Nur die beiden Hostnamen im …services… Pfad werden mit genau der Fehlermeldung die Du auch hattest nicht gesetzt.

Meine Theorie: Im Hintergrund guckt ein Programm, dass Services groß geschrieben ist, was bei Win 10 auch richtig ist, aber eben bei Win7 nicht. Irgendwie lese ich das bei Thomas zwischen den Zeilen. Ich kann mich natürlich irren und das Problem sitzt wo anders.

Eine andere win7 reg habe ich nicht in linbo/examples.

Gruß,
Markus

Liebe Kollegen, Hallo Thomas,
meine Vermutung war richtig:

Thomas hat es ja oben angedeutet:
Auf den Clients gib es in Linbo /usr/ die Datei linbo_patch_registry

Offensichtlich wird dort geprüft, ob in der .reg Datei auf dem Server diverse Namen groß geschrieben sind. Aus services wird Services.

Wir haben noch weit über 100 Rechner mit Win 7, die natürlich nun Stück für Stück ersetzt werden. Aber bei diesen Rechnern ist in der Registry services klein geschrieben und nicht wie bei Windows 10 groß.

Daher meine Bitte an Thomas: Diese Korrektur für Services muss raus. Ich habe es gerade probiert. Wenn ich diese eine Zeile (Services) in linbo_patch_registry lösche, dann wird der Patch ausgeführt.

Der obige Fehler ist dann weg und die Rechner haben den richtigen Namen. So haben sie nun in der Domäne alle den gleichen Namen, der vom Musterrechner stammt.

Wie gesagt es geht um …CurrentControlSet\services\Tcpip.… für Win 7.

Gruß,
Markus

P. S. Liest Thomas automatisch mit, oder muss ich ihn direkt anschreiben?