Linbo regpatcher ab 4.0.13

Hallo Thomas,

es ist wie verhext: in der Schule klappt es noch immer nicht.
Der Client bleibt beim Patchen hängen: beim ersten boot (nach reboot durchlinbo wegen update von 4.0.12 auf 4.0.15 und warmstart=no) ohne Grafische Oberfläche:

Danach hab ich reset „gedrückt“ (vmclient unter KVM) und konnte über linbo windows booten: Domainanmeldung geht und alle Werte korrekt gepatched.
Regpatch war dieser:

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"="BZPF"

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

Dann habe ich den regpatch aus examples hinkopiert und den Client neugestartet und mit neu+start syncen lassen (während des syncs hab ich kontrolliert, ob der richtige regpatch auf dem Client auch wirklich angekommen ist).
Der Regpatch war also dieser:

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

Der Client bleibt wieder an der selben Stelle hängen (diesmal mit Grafischer Oberfläche):

Hier ist noch das patchlog des Clients vom ersten und zweiten Versuch:

## Log session begin: Mi 23. Mär 18:48:35 CET 2022 ##
reged version 0.1 140201, (c) Petter N Hagen
--- Import KEY <\ControlSet001\Control\ComputerName\ActiveComputerName\> 
END OF IMPORT, file </tmp/reg.2502.00>, operation SUCCEEDED!
1 keys
0 new keys added
1 values total


Hives that have changed:
 #  Name
 0  </mnt/Windows/System32/config/SYSTEM> - OK 
reged version 0.1 140201, (c) Petter N Hagen
--- Import KEY <\ControlSet001\Control\ComputerName\ComputerName\> 
END OF IMPORT, file </tmp/reg.2502.01>, operation SUCCEEDED!
1 keys
0 new keys added
1 values total


Hives that have changed:
 #  Name
 0  </mnt/Windows/System32/config/SYSTEM> - OK 
reged version 0.1 140201, (c) Petter N Hagen
--- Import KEY <\ControlSet001\Services\Tcpip\Parameters\> 
END OF IMPORT, file </tmp/reg.2502.02>, operation SUCCEEDED!
1 keys
0 new keys added
2 values total


Hives that have changed:
 #  Name
 0  </mnt/Windows/System32/config/SYSTEM> - OK 
reged version 0.1 140201, (c) Petter N Hagen
--- Import KEY <\Microsoft\Windows\CurrentVersion\Policies\System\> 
END OF IMPORT, file </tmp/reg.2502.03>, operation SUCCEEDED!
1 keys
0 new keys added
1 values total


Hives that have changed:
 #  Name
 0  </mnt/Windows/System32/config/SOFTWARE> - OK 
reged version 0.1 140201, (c) Petter N Hagen
--- Import KEY <\ControlSet001\Services\Tcpip\Parameters> 
END OF IMPORT, file </tmp/reg.2502.04>, operation SUCCEEDED!
1 keys
0 new keys added
4 values total


Hives that have changed:
 #  Name
 0  </mnt/Windows/System32/config/SYSTEM> - OK 
## Log session end: Mi 23. Mär 18:48:35 CET 2022 ##
## Log session begin: Mi 23. Mär 19:53:58 CET 2022 ##
reged version 0.1 140201, (c) Petter N Hagen
--- Import KEY <\ControlSet001\Control\ComputerName\ActiveComputerName\> 
END OF IMPORT, file </tmp/reg.2504.00>, operation SUCCEEDED!
1 keys
0 new keys added
1 values total


Hives that have changed:
 #  Name
 0  </mnt/Windows/System32/config/SYSTEM> - OK 
reged version 0.1 140201, (c) Petter N Hagen
--- Import KEY <\ControlSet001\Control\ComputerName\ComputerName\> 
END OF IMPORT, file </tmp/reg.2504.01>, operation SUCCEEDED!
1 keys
0 new keys added
1 values total


Hives that have changed:
 #  Name
 0  </mnt/Windows/System32/config/SYSTEM> - OK 
reged version 0.1 140201, (c) Petter N Hagen
--- Import KEY <\ControlSet001\Services\Tcpip\Parameters\> 
END OF IMPORT, file </tmp/reg.2504.02>, operation SUCCEEDED!
1 keys
0 new keys added
2 values total


Hives that have changed:
 #  Name
 0  </mnt/Windows/System32/config/SYSTEM> - OK 
reged version 0.1 140201, (c) Petter N Hagen
--- Import KEY <\Microsoft\Windows\CurrentVersion\Policies\System\> 
END OF IMPORT, file </tmp/reg.2504.03>, operation SUCCEEDED!
1 keys
0 new keys added
1 values total


Hives that have changed:
 #  Name
 0  </mnt/Windows/System32/config/SOFTWARE> - OK 
reged version 0.1 140201, (c) Petter N Hagen
--- Import KEY <\ControlSet001\Services\Tcpip\Parameters> 
END OF IMPORT, file </tmp/reg.2504.04>, operation SUCCEEDED!
1 keys
0 new keys added
4 values total


Hives that have changed:
 #  Name
 0  </mnt/Windows/System32/config/SYSTEM> - OK 
## Log session end: Mi 23. Mär 19:53:58 CET 2022 ##

Jetzt teste ich noch, was passiert, wenn im Vorlagenpatch nur ControlSet001 steht, statt CurrentControlSet

LG
Holger

Hallo,

… Mist: die beiden Tests mit dem examples Regpatch muss ich
wiederholen: da steht das „Services“ mit kleinem „s“ drin …
Jetzt hab ich es korrigiert und teste nochmal.

Ich habs gemerkt, wegen dem Patchlog.
Da stand wieder

Hives that have changed:
  #  Name
  0  </mnt/Windows/System32/config/SYSTEM> - OK
reged version 0.1 140201, (c) Petter N Hagen
--- 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.2519.02>, operation FAILED!
1 keys
0 new keys added
0 values total

drin.

LG

Holger

Hallo, Holger,

keine Lösung, aber im Quelltext von chntpw, das die zusammen mit reged arbeitet, finde ich folgendes:

if (key->id != 0x6b6e) {
    printf("trav_path: Error: Not a 'nk' node!\n");
    return(0);
  }

und auch die anderen Fehlermeldungen.
Der Code 0x6b6e bedeutet, dass an dieser Stelle eine ID (DWord) erwartet wird -
hier wird das erklärt:

https://www.fileformat.info/format/ms-registry/spec/a8f9970283de4f04a632c44d1cad7b04/view.htm

Und anscheinend findet sich aber diese ID hier nicht.
Entweder, weil vielleicht versucht wurde, eine Aktion doppelt auszuführen (siehe Deine Fehlermeldung oberhalb) oder, weil sich der Pointer vertut - vielleicht ein Fehler, den man mit einem vorherigen Check der Struktur abfangen könnte.
Dies würde auch erklären, warum bei scheinbar gleicher Ausgangslage unterschiedliche Ergebnisse herauskommen.

Liebe Grüße
Christoph

Hallo Christoph,

die Fehlermeldung mit dem „nk“ haben wir auf das kleingeschriebene s von Service im Registrypfad zurückführen können.
Den Fehler hab ich weg und im patchlog stehen nurnoch SUCSESS Meldungen: der Client bleibt aber trotzdem am Ende vom Patchen stehen.
Zuhause in der VM (gleiches Image, gleicher regpatch und ebenfalls linbo 4.0.15) passiert das nciht: es wird gepatched und Windows wird gestartet.
Es ist sehr seltsam.

Vielleicht schaffe ich es Morgen mal während der Schulzeit auf 4.0.15 upzudaten um festzustellen ob auch ein „echter“ Client das Verhalten zeigt, oder nur mein VM Client (der aber mit 4.0.12 ohne Probleme arbeitet).

Jetzt bin ich erstmal auf 4.0.12 zurück, damit Morgen alles klappt.

LG

Holger

Moin!

Dopplung gibt es schon, da CurrentControlSet in ControlSet001 umgewandelt wird. Ich untersuch jetzt noch mal Varianten mit Groß/Kleinschreibung.

VG Thomas

Moin!

Allerdings sollte Dopplung kein Problem sein, wird halt 2x hintereinander dasselbe gepatcht.
Werde jetzt nochmal ein Paket machen mit verbessertem linbo_patch_registry, das die Schreibweise von diesen Regstrings korrigiert:

            HKEY_LOCAL_MACHINE
            ActiveComputerName
            ComputerName
            Control
            HardenedPaths
            Microsoft
            Netlogon
            NetworkProvider
            Parameters
            Policies
            Printers
            PointAndPrint
            Services
            Session+Manager
            Software
            System
            Tcpip
            Windows
            Windows+NT

Plus wird vom Skript durch Leerzeichen ersetzt.

VG, Thomas

Moin,

evtl. habe ich die Lösung. reged produziert Outputzeilen, die mit --- beginnen. So wie es aussieht ‚verschluckt‘ sich der Plymouth-Bootsplash daran und bleibt hängen. Wenn ich --- rausfiltere, bleibt es nicht mehr hängen. linuxmuster-linbo7 v4.0.16 mit dem Fix ist in ca. 40 Min. online. Es enthält außerdem den Fix, der die Schreibweise von bekannten Registrystrings korrigiert (s. Linbo regpatcher ab 4.0.13 - #10 von thomas).

VG, Thomas

3 „Gefällt mir“

Moinsen!

Habe verschiedene Varianten Sync+Regpatch durchgetestet:

  • Gui
  • Onboot per linbo-remote
  • Konsole per linbo_wrapper

Hat jedesmal fehlerfrei geklappt. :slight_smile:

VG, Thomas

1 „Gefällt mir“

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