NUC, OpenBSD, sysupgrade, vmd villámpróba.

Mini PC NUC11PHKi7C. Került bele 32GB RAM, 1TB SSD.

Nosztalgia, régebben volt Puffy desktopom egy bő évig. Most OpenBSD 7.3, gnome3, sysupgrade 7.4-re (az upgrade ugye félévente esedékes), vmd gyors kipróbálás. Aztán megy rá Ubuntu, vagy dual boot, kialakul.

Ubuntu Linux alatt, egy laptopon:
wget https://cdn.openbsd.org/pub/OpenBSD/7.3/amd64/install73.img
sudo dd if=install73.img of=/dev/sdb

A hoston a BIOS-ban beállítottam a pontos időt, és kikapcsoltam a secure bootot. F10 a boot menu, F2 a BIOS. Az OpenBSD installerben ahol nincs semmi a kérdés után, ott a [default] maradt, egy enterrel elfogadva. sd1 a pendrive, sd0 az NVMe SSD.

Welcome to the OpenBSD/amd64 7.3 installation program.
(I)nstall, (U)pgrade, (A)utoinstall or (S)hell? I

Choose your keyboard layout ('?' or 'L' for list) [default] hu
System hostname? (short form, e.g. 'foo') bar
(A NIC konfigokat itt kihagyom. A wifi nem fog működni fw_update előtt, a LAN-t később is használhatom.)
DNS domain name? (e.g. 'example.com') [my.domain] home
DNS nameservers? (IP address list or 'none') [none]

Password for root account? (will not echo) ********
Password for root account? (again) ********
Start sshd(8) by default? [yes]
Do you want the X Windows System configured to be started by xenodm(1)? [no] yes
Setup a user? (enter a lower-case loginname, or 'no') [no] foo
Full name for user foo? [foo]
Password for user foo? (will not echo) ********
Password for root account? (again) ********
WARNING: root is targeted by password guessing attacks, pubkeys are safer.
Allow root ssh login? (yes, no, prohibit-password) [no]

Available disks are: sd0 sd1.
Encrypt the root disk? (disk, 'no' or '?' for details) [no] sd0
(Régebben "bioctl -c C -l sd0a softraid0" stb. mókolás volt itt. Csináltam is anno, működött szépen, egy ideje nem kell. Tudja az installer.)

No valid MBR or GPT.
Use (W)hole disk MBR, whole disk (G)PT or (E)dit? [gpt]
Setting OpenBSD GPT partition to whole sd0...done.
New passphrase: ********
Re-type passphrase: ********
Available disks are: sd1 sd2.
Which disk is the root disk? ('?' for details) [sd1] sd2
No valid MBR or GPT.
Use (W)hole disk MBR, whole disk (G)PT or (E)dit? [gpt]
Setting OpenBSD GPT partition to whole sd2...done.
The auto-allocated layout for sd2 is:
...
Use (A)uto layout, (E)dit auto layout, or create (C)ustom layout? [a] C
Label editor (enter '?' for help at any prompt)
sd2> p
sd2> d i
sd2> a a
offset: [532544]
size: [1999343582] 32G
FS type: [4.2BSD]
mount point: [none] /
sd2> a b
offset: [67649696]
size: [1932226430] 1G
FS type: [swap]
sd2> a d
offset: [69754230]
size: [1930121896] *
FS type: [4.2BSD]
mount point: [none] /home
sd2> p
sd2> q
...
Available disks are: sd1
Which disk do you wish to initialize? (or 'done') [done]

Let's install the sets!
Location of sets? (disk http nfs or 'done') [http] disk
Is the partition already mounted? [yes] no
Available disks are: sd0 sd1 sd2.
Which disk contains the install media? (or 'done') [sd1]
Which sd1 partition has the install sets? (or 'done') [a]
Pathname to sets? (or 'done') [7.3/amd64]

Set names(s)? (or 'abort' or 'done') [done]
Directory does not contain SHG256.sig. Continue without verification? [no] yes
Installing...
Extracting...
Location of sets? (disk http nfs or 'done') [done]

What timezone are you in? ('?' for list) [Canada/Mountain] Europe/
What sub-timezone of 'Europe' are you in? ('?' for list) Budapest
...
Multiprocessor machine, using bsd.mp instead of bsd.
...
fw_update: added none; updated none; kept none
...
Exit to (S)hell, (H)alt or (R)eboot? [reboot]

probing: ...
disk: ...
>> OpenBSD/amd64 BOOTX64 3.63
Passphrase: ********
boot>
Booting...
A disk passphrase beírással jó 20 sec. a boot. Az X full HD-ben indul (a monitor olyan), majd lesz gnome3 is, xenodmmel. A tty szép, élsimított(nak tűnő) karaktereket mutat.

root userrel:
bar# echo "permit nopass foo as root" > /etc/doas.conf
bar# exit # Innentől foo user, doas.

bar$ ps ax | wc -l # crond, ntpd, xenodm, Xorg, minden benne van.
      40
foo userrel váltunk rootra: doas su -

LAN madzag bedug.
bar# dhclient igc0 # Get IP, DEFGW, DNS for wired LAN. Will be forgotten after reboot.
bar# fw_update
fw_update: added intel,inteldrm,iwx,vmm; updated none, kept none

bar# cat /etc/hostname.iwx0
join SSIDNAME wpakey WIFIPASSWORD
dhcp
up
bar# chmod 640 /etc/hostname.iwx0
bar# sh /etc/netstart
LAN madzag kihúz, innentől wifi.

bar$ cat .profile
export PKG_PATH=http://ftp.eu.openbsd.org/pub/OpenBSD/$(uname -r)/packages/$(uname -p)
HISTFILE=$HOME/.sh-history
HISTSIZE=1024
PS1="\u@\h $ "

PATH=$HOME/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin:/usr/local/bin:/usr/local/sbin
export PATH HOME TERM
bar$ exit

foo@bar $ doas pkg_add wget
...
wget-1.21.3: ok
foo@bar $ wget $PKG_PATH/index.txt # List of available packages.
foo@bar $ doas pkg_add curl nmap cmatrix c3270 tn5250
foo@bar $ doas pkg_add gnome-43.3p2
foo@bar $ doas pkg_add firefox-esr vlc
foo@bar $ doas rcctl enable multicast messagebus avahi_daemon
foo@bar $ echo "exec /usr/local/bin/gnome-session" > .xsession # Csak foo usernek. De globálisan is lehet.
foo@bar $ doas shutdown -r now
Stock gnome3 a xenodm-ből. A magyar billentyűzetet még hozzá kell adni a gnome belépés után. A shutdown, restart non-root session-ből nem működik a power gomb alatt, nyilván. Régebben megoldottam, perpill nem tölteném vele az időt. (Meg amúgy is terminal, doas.) A xenodm testreszabással (színek, welcome üzenet, xclock stb.) sem tölteném most az időt, régen jó móka volt az is.

System upgrade, kezesbárány.
foo@bar $ uname -r
7.3
foo@bar $ doas sysupgrade # Reboots twice. fw_upgrade runs.
foo@bar $ doas pkg_add -Uu
foo@bar $ doas sysmerge -d
foo@bar $ doas syspatch
foo@bar $ doas shutdown -r now
foo@bar $ uname -r
7.4

vmd:
Network szempontból bridge-eltem volna, azaz a virtuális gépek valódi hostként látszódtak volna a hálózaton.
DHCP-vel a WIFI routertől stb. Persze nem tudtam működésre bírni. Mindegy, telepíteni azért tudtam a VM-re, mást nem is akartam perpill. Majd egyszer újra nekiugrok, ha lesz több időm rá.

echo 'add iwx0' > /etc/hostname.bridge0
chmod 640 /etc/hostname.bridge0
sh /etc/netstart bridge0

bar# rcctl enable vmd
bar# rcctl start vmd
vmd(ok)

vi /etc/vm.conf
switch "wifi_switch" {
    interface bridge0
}

vm "vm1" {
    enable
    memory 1G
    cdrom "/root/install74.iso"
    disk "/var/vm/vm1.qcow2"
    interface { switch "wifi_switch" }
}

bar# wget https://cdn.openbsd.org/pub/OpenBSD/7.4/amd64/install74.iso
bar# mkdir /var/vm
# vmctl create -s 4G /var/vm/vm1.qcow2
vmctl: qcow2 imagefile created

bar# vmctl start vm1
bar# vmctl show
   ID   PID VCPUS  MAXMEM  CURMEM     TTY        OWNER    STATE NAME
    1 65761     1    1.0G    179M   ttyp1         root  running vm1

bar# vmctl console vm1
Connected to /dev/ttyp1 (speed 115200) # Előfordulhat, hogy itt egy entert kell ütni.
...
Welcome to the OpenBSD/amd64 7.4 installation program.
(I)nstall, (U)pgrade, (A)utoinstall or (S)hell? I

Terminal type? [vt220]
...
Innentől a szokásos telepítés. A következő boot már a diskről indul, a cdrom sort lehet is törölni a vm.conf-ból. A host OS boot elindítja a VM-eket is.

Hirtelen ennyi, poweroff.
foo@bar $ doas shutdown -ph now

Hozzászólások

De miért 7.3-at telepítesz 7.4-re sysupgrade-elve, ha egyszer kint van már a 7.4-es lemezkép is? Arra még figyelj, hogy érdemes a dd parancsnak bs= paraméterrel megadni a blokkméretet, jóval meg tudja gyorsítani a pendrive-ra kiírást. Én pendrive-oknál bs=8M paramétert használtam, de már ilyen célra külső (használt, olcsó, kisebb méretű) SSD-ket használok, azoknál a bs=64M is bőven jó, pikk-pakk megvan egy kiírás, és ezekről a telepítés is gyorsabb (mivel SSD-ről SSD-re történik).

Az OpenBSD-nél különösen gyors a telepítés, mivel kicsi, meg a telepítője is elég jó default-okat ajánlgat, szinte majdnem minden kérdésnél rá lehet feküdni az Enter-re, elfogadva az alapértelmezett beállítást. Nyilván nem mindenhol, host, username, timezone, stb.. Plusz én is hozzád hasonlóan járok el, kézi particionálást választok, mert alapértelmezésben a BSD-k (nem csak az Open) 600 felé akarják a lemezt osztani, hogy minden rendszermappa külön partíción legyen, ami agyrém. Én is egyre rakok mindent, kivéve a boot és a /home.

Ha csak VM-eket szolgáltat a rendszer, akkor nem kell a X, xenodm sem, azok mennek anélkül is.

Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”