ich bin aktuell dabei, das win11-x64 Paket auf mehreren Rechnern (UEFI) per PXE-Boot über das opsi-linux-bootimage zu installieren. In seltenen Fehlern schlägt das Erzeugen der WinPE-Partition in /dev/sda4 fehl. In meinem Fall habe ich 8 völlig identische Acer Travelmate Spin B3 Geräte, wo zwei den Fehler hatten. Aber auch auf anderen Computern, wenn auch deutlich seltener, habe ich das Fehlerbild gesehen.
Auf einem der 8 Geräte habe ich die Installation mehrfach neugestartet und es hat nicht funktioniert. Auch ein vorheriges löschen der Partitionstabelle mit dd if=/dev/zero of=/dev/sda hat nicht geholfen. Was am Ende funktioniert hat, war sich per SSH mit dem Bootimage zu verbinden und manuell den Befehl "master" auszuführen (obwohl /dev/sda4 schon existierte). Dann lief die Installation einwandfrei durch.
Das Fehlerbild wirkt wie eine merkwürdige Race-Condition, die nur in bestimmten Fällen aufzutreten scheint.
Soweit ich das sehe ist der Source-Code des linux-bootimages nicht öffentlich, oder? Ansonsten könnte ich hier ggf. noch tiefer reinschauen, was hier passiert.
Code: Alles auswählen
OPSIConfd: 4.3.33.9 [python-opsi-common=4.3.31.3]
opsi-server-1:~# apt-cache policy opsi-linux-bootimage
opsi-linux-bootimage:
Installed: 20250422-1
Candidate: 20250422-1
Version table:
*** 20250422-1 500
500 https://download.opensuse.org/repositories/home:/uibmz:/opsi:/4.3:/stable/xUbuntu_24.04 Packages
100 /var/lib/dpkg/status
Code: Alles auswählen
(4724) [6] [2025-08-02 10:11:40.658] [ ] JSONRPC request to https://opsi-server-1.int.XXX:4447: id='e9d20a35-7b4a-4856-9ea7-060ef6581e2f', method=productOnClient_getObjects, Content-Type=application/msgpack, Content-Encoding=lz4, timeout=300.0 (opsiservice.py:1337)
(4725) [7] [2025-08-02 10:11:40.659] [ ] Resetting dropped connection: opsi-server-1.int.XXX (connectionpool.py:291)
(4726) [7] [2025-08-02 10:11:40.696] [ ] https://opsi-server-1.int.XXX:4447 "POST /rpc HTTP/11" 200 7261 (connectionpool.py:546)
(4727) [6] [2025-08-02 10:11:40.697] [ ] Got response status=200, id='e9d20a35-7b4a-4856-9ea7-060ef6581e2f', method=productOnClient_getObjects, Content-Type=application/msgpack, Content-Encoding=, duration=0.039s (opsiservice.py:1360)
(4728) [6] [2025-08-02 10:11:40.698] [ ] JSONRPC request to https://opsi-server-1.int.XXX:4447: id='5f1fc2cd-9e20-4381-a0bd-a6722573aa8e', method=productOnClient_deleteObjects, Content-Type=application/msgpack, Content-Encoding=lz4, timeout=300.0 (opsiservice.py:1337)
(4729) [7] [2025-08-02 10:11:40.707] [ ] https://opsi-server-1.int.XXX:4447 "POST /rpc HTTP/11" 200 62 (connectionpool.py:546)
(4730) [6] [2025-08-02 10:11:40.708] [ ] Got response status=200, id='5f1fc2cd-9e20-4381-a0bd-a6722573aa8e', method=productOnClient_deleteObjects, Content-Type=application/msgpack, Content-Encoding=, duration=0.010s (opsiservice.py:1360)
(4731) [5] [2025-08-02 10:11:40.708] [ ] Create system partition on /dev/sda3 start: 0M, size: 117104M (<string>:263)
(4732) [7] [2025-08-02 10:11:40.709] [ ] Removing LD_LIBRARY_PATH from env for subprocess (Posix.py:854)
(4733) [6] [2025-08-02 10:11:40.710] [ ] Executing: /usr/sbin/sgdisk --new 3::+117104M -c 3:"WINDOWS" --attributes 3:set:63 -t 3:0700 -p /dev/sda (Posix.py:944)
(4734) [6] [2025-08-02 10:11:40.711] [ ] Using encoding 'UTF-8' (Posix.py:970)
(4735) [7] [2025-08-02 10:11:41.850] [ ] >>> Setting name! (Posix.py:1016)
(4736) [7] [2025-08-02 10:11:41.850] [ ] >>> partNum is 2 (Posix.py:1016)
(4737) [7] [2025-08-02 10:11:41.851] [ ] >>> Disk /dev/sda: 250069680 sectors, 119.2 GiB (Posix.py:1016)
(4738) [7] [2025-08-02 10:11:41.851] [ ] >>> Model: KINGSTON RBUSNS8 (Posix.py:1016)
(4739) [7] [2025-08-02 10:11:41.851] [ ] >>> Sector size (logical/physical): 512/512 bytes (Posix.py:1016)
(4740) [7] [2025-08-02 10:11:41.851] [ ] >>> Disk identifier (GUID): 6A3640C2-37BF-4DDA-8B32-F2168336A848 (Posix.py:1016)
(4741) [7] [2025-08-02 10:11:41.851] [ ] >>> Partition table holds up to 128 entries (Posix.py:1016)
(4742) [7] [2025-08-02 10:11:41.851] [ ] >>> Main partition table begins at sector 2 and ends at sector 33 (Posix.py:1016)
(4743) [7] [2025-08-02 10:11:41.851] [ ] >>> First usable sector is 34, last usable sector is 250069646 (Posix.py:1016)
(4744) [7] [2025-08-02 10:11:41.851] [ ] >>> Partitions will be aligned on 2048-sector boundaries (Posix.py:1016)
(4745) [7] [2025-08-02 10:11:41.851] [ ] >>> Total free space is 9161324 sectors (4.4 GiB) (Posix.py:1016)
(4746) [7] [2025-08-02 10:11:41.851] [ ] >>> (Posix.py:1016)
(4747) [7] [2025-08-02 10:11:41.851] [ ] >>> Number Start (sector) End (sector) Size Code Name (Posix.py:1016)
(4748) [7] [2025-08-02 10:11:41.851] [ ] >>> 1 2048 819200 399.0 MiB EF00 EFI system partition (Posix.py:1016)
(4749) [7] [2025-08-02 10:11:41.851] [ ] >>> 2 821248 1083391 128.0 MiB 0C01 MS reserved (Posix.py:1016)
(4750) [7] [2025-08-02 10:11:41.851] [ ] >>> 3 1083392 240912383 114.4 GiB 0700 WINDOWS (Posix.py:1016)
(4751) [7] [2025-08-02 10:11:41.852] [ ] >>> The operation has completed successfully. (Posix.py:1016)
(4752) [7] [2025-08-02 10:11:41.852] [ ] >>> (Posix.py:1016)
(4753) [7] [2025-08-02 10:11:41.852] [ ] Exit code: 0 (Posix.py:1023)
(4754) [7] [2025-08-02 10:11:41.852] [ ] Removing LD_LIBRARY_PATH from env for subprocess (Posix.py:854)
(4755) [6] [2025-08-02 10:11:41.852] [ ] Executing: /bin/sleep 2 (Posix.py:944)
(4756) [6] [2025-08-02 10:11:41.853] [ ] Using encoding 'UTF-8' (Posix.py:970)
(4757) [7] [2025-08-02 10:11:43.857] [ ] Exit code: 0 (Posix.py:1023)
(4758) [7] [2025-08-02 10:11:43.858] [ ] Removing LD_LIBRARY_PATH from env for subprocess (Posix.py:854)
(4759) [6] [2025-08-02 10:11:43.858] [ ] Executing: /usr/sbin/sgdisk -p /dev/sda (Posix.py:944)
(4760) [6] [2025-08-02 10:11:43.858] [ ] Using encoding 'UTF-8' (Posix.py:970)
(4761) [7] [2025-08-02 10:11:43.889] [ ] >>> Disk /dev/sda: 250069680 sectors, 119.2 GiB (Posix.py:1016)
(4762) [7] [2025-08-02 10:11:43.890] [ ] >>> Model: KINGSTON RBUSNS8 (Posix.py:1016)
(4763) [7] [2025-08-02 10:11:43.890] [ ] >>> Sector size (logical/physical): 512/512 bytes (Posix.py:1016)
(4764) [7] [2025-08-02 10:11:43.890] [ ] >>> Disk identifier (GUID): 6A3640C2-37BF-4DDA-8B32-F2168336A848 (Posix.py:1016)
(4765) [7] [2025-08-02 10:11:43.890] [ ] >>> Partition table holds up to 128 entries (Posix.py:1016)
(4766) [7] [2025-08-02 10:11:43.890] [ ] >>> Main partition table begins at sector 2 and ends at sector 33 (Posix.py:1016)
(4767) [7] [2025-08-02 10:11:43.890] [ ] >>> First usable sector is 34, last usable sector is 250069646 (Posix.py:1016)
(4768) [7] [2025-08-02 10:11:43.890] [ ] >>> Partitions will be aligned on 2048-sector boundaries (Posix.py:1016)
(4769) [7] [2025-08-02 10:11:43.890] [ ] >>> Total free space is 9161324 sectors (4.4 GiB) (Posix.py:1016)
(4770) [7] [2025-08-02 10:11:43.890] [ ] >>> (Posix.py:1016)
(4771) [7] [2025-08-02 10:11:43.890] [ ] >>> Number Start (sector) End (sector) Size Code Name (Posix.py:1016)
(4772) [7] [2025-08-02 10:11:43.890] [ ] >>> 1 2048 819200 399.0 MiB EF00 EFI system partition (Posix.py:1016)
(4773) [7] [2025-08-02 10:11:43.890] [ ] >>> 2 821248 1083391 128.0 MiB 0C01 MS reserved (Posix.py:1016)
(4774) [7] [2025-08-02 10:11:43.890] [ ] >>> 3 1083392 240912383 114.4 GiB 0700 WINDOWS (Posix.py:1016)
(4775) [7] [2025-08-02 10:11:43.891] [ ] >>> (Posix.py:1016)
(4776) [7] [2025-08-02 10:11:43.891] [ ] Exit code: 0 (Posix.py:1023)
(4777) [5] [2025-08-02 10:11:43.897] [ ] /dev/sda3 exists as device - fine (<string>:248)
(4778) [5] [2025-08-02 10:11:44.063] [ ] Partition /dev/sda3 has a correct block alignment (<string>:154)
(4779) [7] [2025-08-02 10:11:44.065] [ ] Removing LD_LIBRARY_PATH from env for subprocess (Posix.py:854)
(4780) [6] [2025-08-02 10:11:44.065] [ ] Executing: /usr/sbin/sgdisk --info=3 /dev/sda (Posix.py:944)
(4781) [6] [2025-08-02 10:11:44.066] [ ] Using encoding 'UTF-8' (Posix.py:970)
(4782) [7] [2025-08-02 10:11:44.075] [ ] >>> Partition GUID code: EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 (Microsoft basic data) (Posix.py:1016)
(4783) [7] [2025-08-02 10:11:44.076] [ ] >>> Partition unique GUID: 77C16BFD-98FE-483C-A8E8-86ADE332145E (Posix.py:1016)
(4784) [7] [2025-08-02 10:11:44.076] [ ] >>> First sector: 1083392 (at 529.0 MiB) (Posix.py:1016)
(4785) [7] [2025-08-02 10:11:44.076] [ ] >>> Last sector: 240912383 (at 114.9 GiB) (Posix.py:1016)
(4786) [7] [2025-08-02 10:11:44.076] [ ] >>> Partition size: 239828992 sectors (114.4 GiB) (Posix.py:1016)
(4787) [7] [2025-08-02 10:11:44.076] [ ] >>> Attribute flags: 8000000000000000 (Posix.py:1016)
(4788) [7] [2025-08-02 10:11:44.076] [ ] >>> Partition name: 'WINDOWS' (Posix.py:1016)
(4789) [7] [2025-08-02 10:11:44.076] [ ] >>> (Posix.py:1016)
(4790) [7] [2025-08-02 10:11:44.076] [ ] Exit code: 0 (Posix.py:1023)
(4791) [5] [2025-08-02 10:11:44.076] [ ] Create file system ntfs on partition system (/dev/sda3) (<string>:339)
(4792) [7] [2025-08-02 10:11:44.077] [ ] Removing LD_LIBRARY_PATH from env for subprocess (Posix.py:854)
(4793) [6] [2025-08-02 10:11:44.077] [ ] Executing: sync (Posix.py:944)
(4794) [6] [2025-08-02 10:11:44.078] [ ] Using encoding 'UTF-8' (Posix.py:970)
(4795) [7] [2025-08-02 10:11:44.082] [ ] Exit code: 0 (Posix.py:1023)
(4796) [7] [2025-08-02 10:11:45.149] [ ] Ping message received (opsiservice.py:1621)
(4797) [7] [2025-08-02 10:11:54.082] [ ] Removing LD_LIBRARY_PATH from env for subprocess (Posix.py:854)
(4798) [6] [2025-08-02 10:11:54.083] [ ] Executing: /sbin/mkfs.ntfs -F --fast -L "WINDOWS" /dev/sda3 (Posix.py:944)
(4799) [6] [2025-08-02 10:11:54.083] [ ] Using encoding 'UTF-8' (Posix.py:970)
(4800) [7] [2025-08-02 10:11:54.717] [ ] >>> Cluster size has been automatically set to 4096 bytes. (Posix.py:1016)
(4801) [7] [2025-08-02 10:11:54.717] [ ] >>> Creating NTFS volume structures. (Posix.py:1016)
(4802) [7] [2025-08-02 10:11:54.717] [ ] >>> mkntfs completed successfully. Have a nice day. (Posix.py:1016)
(4803) [7] [2025-08-02 10:11:54.717] [ ] >>> (Posix.py:1016)
(4804) [7] [2025-08-02 10:11:54.717] [ ] Exit code: 0 (Posix.py:1023)
(4805) [7] [2025-08-02 10:11:54.717] [ ] Removing LD_LIBRARY_PATH from env for subprocess (Posix.py:854)
(4806) [6] [2025-08-02 10:11:54.717] [ ] Executing: blkid (Posix.py:944)
(4807) [6] [2025-08-02 10:11:54.718] [ ] Using encoding 'UTF-8' (Posix.py:970)
(4808) [7] [2025-08-02 10:11:54.903] [ ] >>> /dev/sda2: PARTLABEL="MS reserved" PARTUUID="00000000-0000-0000-0000-000000000000" (Posix.py:1016)
(4809) [7] [2025-08-02 10:11:54.903] [ ] >>> /dev/sda3: LABEL="WINDOWS" BLOCK_SIZE="512" UUID="582588C7779A52B6" TYPE="ntfs" PARTLABEL="WINDOWS" PARTUUID="77c16bfd-98fe-483c-a8e8-86ade332145e" (Posix.py:1016)
(4810) [7] [2025-08-02 10:11:54.904] [ ] >>> /dev/sda1: SEC_TYPE="msdos" UUID="45B9-96CE" BLOCK_SIZE="512" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="00000000-0000-0000-0000-000000000000" (Posix.py:1016)
(4811) [7] [2025-08-02 10:11:54.904] [ ] >>> (Posix.py:1016)
(4812) [7] [2025-08-02 10:11:54.904] [ ] Exit code: 0 (Posix.py:1023)
(4813) [7] [2025-08-02 10:12:00.156] [ ] Sending ping (_logging.py:85)
(4814) [7] [2025-08-02 10:12:00.158] [ ] Pong message received (opsiservice.py:1625)
(4815) [5] [2025-08-02 10:12:00.191] [ ] /dev/sda3 exists as device - fine (<string>:329)
(4816) [5] [2025-08-02 10:12:00.191] [ ] /dev/sda3 created and formated (<string>:365)
(4817) [5] [2025-08-02 10:12:00.192] [ ] Check winpe partition (setup.py:1122)
(4818) [5] [2025-08-02 10:12:00.193] [ ] Check winpe partition at number 4 (setup.py:1124)
(4819) [5] [2025-08-02 10:12:00.196] [ ] Create winpe partition on /dev/sda4 start: 118104M, size: 4000M (<string>:263)
(4820) [7] [2025-08-02 10:12:00.197] [ ] Removing LD_LIBRARY_PATH from env for subprocess (Posix.py:854)
(4821) [6] [2025-08-02 10:12:00.197] [ ] Executing: /usr/sbin/sgdisk --new 4::+4000M -c 4:"WINPE" -t 4:0b00 -p /dev/sda (Posix.py:944)
(4822) [6] [2025-08-02 10:12:00.198] [ ] Using encoding 'UTF-8' (Posix.py:970)
(4823) [7] [2025-08-02 10:12:01.229] [ ] >>> Setting name! (Posix.py:1016)
(4824) [7] [2025-08-02 10:12:01.230] [ ] >>> partNum is 3 (Posix.py:1016)
(4825) [7] [2025-08-02 10:12:01.230] [ ] >>> Disk /dev/sda: 250069680 sectors, 119.2 GiB (Posix.py:1016)
(4826) [7] [2025-08-02 10:12:01.230] [ ] >>> Model: KINGSTON RBUSNS8 (Posix.py:1016)
(4827) [7] [2025-08-02 10:12:01.230] [ ] >>> Sector size (logical/physical): 512/512 bytes (Posix.py:1016)
(4828) [7] [2025-08-02 10:12:01.230] [ ] >>> Disk identifier (GUID): 6A3640C2-37BF-4DDA-8B32-F2168336A848 (Posix.py:1016)
(4829) [7] [2025-08-02 10:12:01.230] [ ] >>> Partition table holds up to 128 entries (Posix.py:1016)
(4830) [7] [2025-08-02 10:12:01.230] [ ] >>> Main partition table begins at sector 2 and ends at sector 33 (Posix.py:1016)
(4831) [7] [2025-08-02 10:12:01.230] [ ] >>> First usable sector is 34, last usable sector is 250069646 (Posix.py:1016)
(4832) [7] [2025-08-02 10:12:01.230] [ ] >>> Partitions will be aligned on 2048-sector boundaries (Posix.py:1016)
(4833) [7] [2025-08-02 10:12:01.230] [ ] >>> Total free space is 969324 sectors (473.3 MiB) (Posix.py:1016)
(4834) [7] [2025-08-02 10:12:01.230] [ ] >>> (Posix.py:1016)
(4835) [7] [2025-08-02 10:12:01.230] [ ] >>> Number Start (sector) End (sector) Size Code Name (Posix.py:1016)
(4836) [7] [2025-08-02 10:12:01.230] [ ] >>> 1 2048 819200 399.0 MiB EF00 EFI system partition (Posix.py:1016)
(4837) [7] [2025-08-02 10:12:01.231] [ ] >>> 2 821248 1083391 128.0 MiB 0C01 MS reserved (Posix.py:1016)
(4838) [7] [2025-08-02 10:12:01.231] [ ] >>> 3 1083392 240912383 114.4 GiB 0700 WINDOWS (Posix.py:1016)
(4839) [7] [2025-08-02 10:12:01.231] [ ] >>> 4 240912384 249104383 3.9 GiB 0700 WINPE (Posix.py:1016)
(4840) [7] [2025-08-02 10:12:01.231] [ ] >>> The operation has completed successfully. (Posix.py:1016)
(4841) [7] [2025-08-02 10:12:01.231] [ ] >>> (Posix.py:1016)
(4842) [7] [2025-08-02 10:12:01.231] [ ] Exit code: 0 (Posix.py:1023)
(4843) [7] [2025-08-02 10:12:01.231] [ ] Removing LD_LIBRARY_PATH from env for subprocess (Posix.py:854)
(4844) [6] [2025-08-02 10:12:01.231] [ ] Executing: /bin/sleep 2 (Posix.py:944)
(4845) [6] [2025-08-02 10:12:01.232] [ ] Using encoding 'UTF-8' (Posix.py:970)
(4846) [7] [2025-08-02 10:12:03.237] [ ] Exit code: 0 (Posix.py:1023)
(4847) [7] [2025-08-02 10:12:03.237] [ ] Removing LD_LIBRARY_PATH from env for subprocess (Posix.py:854)
(4848) [6] [2025-08-02 10:12:03.237] [ ] Executing: /usr/sbin/sgdisk -p /dev/sda (Posix.py:944)
(4849) [6] [2025-08-02 10:12:03.238] [ ] Using encoding 'UTF-8' (Posix.py:970)
(4850) [7] [2025-08-02 10:12:03.259] [ ] >>> Disk /dev/sda: 250069680 sectors, 119.2 GiB (Posix.py:1016)
(4851) [7] [2025-08-02 10:12:03.259] [ ] >>> Model: KINGSTON RBUSNS8 (Posix.py:1016)
(4852) [7] [2025-08-02 10:12:03.259] [ ] >>> Sector size (logical/physical): 512/512 bytes (Posix.py:1016)
(4853) [7] [2025-08-02 10:12:03.260] [ ] >>> Disk identifier (GUID): 6A3640C2-37BF-4DDA-8B32-F2168336A848 (Posix.py:1016)
(4854) [7] [2025-08-02 10:12:03.260] [ ] >>> Partition table holds up to 128 entries (Posix.py:1016)
(4855) [7] [2025-08-02 10:12:03.260] [ ] >>> Main partition table begins at sector 2 and ends at sector 33 (Posix.py:1016)
(4856) [7] [2025-08-02 10:12:03.260] [ ] >>> First usable sector is 34, last usable sector is 250069646 (Posix.py:1016)
(4857) [7] [2025-08-02 10:12:03.260] [ ] >>> Partitions will be aligned on 2048-sector boundaries (Posix.py:1016)
(4858) [7] [2025-08-02 10:12:03.260] [ ] >>> Total free space is 969324 sectors (473.3 MiB) (Posix.py:1016)
(4859) [7] [2025-08-02 10:12:03.260] [ ] >>> (Posix.py:1016)
(4860) [7] [2025-08-02 10:12:03.260] [ ] >>> Number Start (sector) End (sector) Size Code Name (Posix.py:1016)
(4861) [7] [2025-08-02 10:12:03.260] [ ] >>> 1 2048 819200 399.0 MiB EF00 EFI system partition (Posix.py:1016)
(4862) [7] [2025-08-02 10:12:03.260] [ ] >>> 2 821248 1083391 128.0 MiB 0C01 MS reserved (Posix.py:1016)
(4863) [7] [2025-08-02 10:12:03.260] [ ] >>> 3 1083392 240912383 114.4 GiB 0700 WINDOWS (Posix.py:1016)
(4864) [7] [2025-08-02 10:12:03.261] [ ] >>> 4 240912384 249104383 3.9 GiB 0700 WINPE (Posix.py:1016)
(4865) [7] [2025-08-02 10:12:03.261] [ ] >>> (Posix.py:1016)
(4866) [7] [2025-08-02 10:12:03.261] [ ] Exit code: 0 (Posix.py:1023)
(4867) [5] [2025-08-02 10:12:03.266] [ ] /dev/sda4 exists as device - fine (<string>:248)
(4868) [5] [2025-08-02 10:12:03.441] [ ] Partition /dev/sda4 has a correct block alignment (<string>:154)
(4869) [3] [2025-08-02 10:12:03.447] [ ] could not find /dev/sda4 - giving up (<string>:244)
(4870) [3] [2025-08-02 10:12:04.449] [ ] Error checking /dev/sda4. partition (master.py:2035)
(4871) Traceback (most recent call last):
(4872) File "opsibootimage/master.py", line 1985, in <module>
(4873) File "/tmp/setup.py", line 1236, in <module>
(4874) testPartitionEx(disk.device, winpePartitionNumber, useGpt)
(4875) File "<string>", line 246, in testPartitionEx
(4876) Exception: Error checking /dev/sda4. partition