Immer wenn ich OpenBSD in VirtualBox installiere, muss ich vor der Installation die CPU-Anzahl festlegen, da eine spätere Änderung der Anzahl die neuen Kerne nicht sichtbar macht. Gibt es einen Befehl, mit dem ich diese Anzahl zurücksetzen und erneut prüfen kann?
Antwort1
Standardmäßig installiert OpenBSD zwei Kernel: bsd.sp
und bsd.mp
. Der erste für Einzelprozessormaschinen ( sp
), der zweite für Mehrprozessormaschinen ( mp
). Das Installationsprogramm wählt den geeigneteren aus und installiert ihn als /bsd
, der dann standardmäßig gebootet wird. Der andere wird ebenfalls installiert (entweder als /bsd.sp
oder /bsd.mp
), sodass er verfügbar ist, aber nicht standardmäßig gebootet wird.
Wenn Sie bei der Installation von OpenBSD nur eine CPU hatten, wird Ihre VM als sp
Maschine erkannt, /bsd.sp
in umbenannt /bsd
, sodass diese standardmäßig bootet, und der mp
Kernel wird als belassen /bsd.mp
. Wenn Sie wirklich sichergehen möchten, was was ist, strings
wird Ihnen Folgendes angezeigt:
# strings /bsd.mp | grep ^OpenBSD
...
OpenBSD 6.9-current (GENERIC.MP) #12: Mon May 10 14:33:52 MDT 2021
# strings /bsd | grep ^OpenBSD
...
OpenBSD 6.9-current (GENERIC) #12: Mon May 10 14:22:32 MDT 2021
Ein einfacher Multiprozessorkernel heißt also GENERIC.MP
, ein Einzelprozessorkernel nur GENERIC
. Welchen Sie derzeit verwenden, können Sie mit sehen sysctl kern.osversion
.
Wenn Sie einen anderen Kernel booten möchten, geben Sie ihn einfach am Boot-Prompt ein:
boot> boot /bsd.mp
Und der Multiprozessor-Kernel wird gebootet. Sie können dann überprüfen, ob dmesg
alles wie geplant funktioniert (d. h. ein GENERIC.MP
Kernel wurde gebootet und es werden mehrere cpu*
Zeilen angezeigt).
Wenn Sie dies als neue Standardeinstellung festlegen möchten, benennen Sie es einfach /bsd
in /bsd.sp
und dann /bsd.mp
in /bsd
(oder ändern Sie /etc/boot.conf
).