In this guide, we will install Plan 9 4th edition with some patches for vmd.
A patched, working ISO of Plan 9 4th edition can be fetched from:
https://ircnow.org/software/plan9.iso
Please note that the following Plan 9 4th edition ISOs do *not* run on OpenBSD VMM 7.7:
http://ftp.osuosl.org/pub/plan9/history/plan9-4e-latest.iso.bz2 http://9p.io/plan9/download/plan9.iso.bz2
On the OpenBSD host, we first get serial console into the virtual machine:
host$ vmctl console $USER Connected to /dev/ttyp3 (speed 115200) Boot failed: not a bootable disk PBSR...0000 07B1 0000 00B5 Plan 9 from Bell Labsi8042: kbdinit failed no vga; serial console only disk loader cpu0: 6132MHz GenuineIntel Core i7/Xeon (cpuid: AX 0x206C2 DX 0x78BA97F) ELCR: 02E8 497M memory: 497M kernel data, 0M user, 18M swap found partition #S/sdC0/data 0 41,943,040 found partition #S/sdD0/data 0 147,164 found partition #S/sdD0/data!9fat; 59050+2949120 disks: sdC0 sdD0 trying sdC0...dosinit: can't open #S/sdC0/9fat dosinit #S/sdC0/9fat failed trying sdD0.... Plan 9 Startup Menu: ==================== 1. Install Plan 9 from this CD 2. Boot Plan 9 from this CD Selection: 1
We choose 1 to Install Plan 9 from CD:
found 9pcflop.gz .gz........................................................................................................................................................1225840 => 781908+1043156+390320=2215384 entry: 0xf0100020 Plan 9 i8042: kbdinit failed E820: 00000000 0009f800 memory E820: 0009f800 000a0000 reserved E820: 000f0000 00100000 reserved E820: 00100000 7fffa000 memory E820: 7fffa000 80000000 reserved E820: f0000000 100000000 reserved cpu0: 6128MHz GenuineIntel Core i7/Xeon (cpuid: AX 0x206C2 DX 0x78BA97F) ELCR: 02E8 intrenable: nil handler for 5, tbdf 0xC001000 for ether0 #l0: virtio: 1Gbps port 0x2000 irq 5: fee1bad5cc02 2048M memory: 256M kernel data, 1791M user, 2416M swap pickmethod...read #e/nobootprompt...pickmethod done bind #æ...bind #S...partinit...auth...mount usbd...boot: can't open /srv/usb: '/srv/usb' file does not exist kfs...version...time... can't stat /srv/partfs.sdXX: '/srv/partfs.sdXX' file does not exist init: starting /bin/rc /bin/dossrv: serving #s/dos use DMA for ide drives[yes]: echo: write error: bad process or channel control request echo: write error: bad process or channel control request mouseport is (ps2, ps2intellimouse, 0, 1, 2)[ps2]: vgasize [640x480x8]: text monitor is [xga]:
Press enter to use DMA for ide drives, then press enter again for ps2. We select text for vgasize, and for monitor, choose the default.
i8042: aux init failed i8042: aux init failed i8042: aux init failed i8042: 00 returned to the ea command /bin/aux/vga: vbecheck: VBE error 0x4f00 rio: can't open display: initdisplay: /dev/draw/new: no frame buffer failed to start rio. you can start a text-based installation by running inst/textonly init: starting /bin/rc % inst/textonly
Since we don't have any VGA display on OpenBSD VMM, we run inst/textonly:
Sun Mar 1 12:35:07 EST 2026 Installation process started -------------------------------------- Preparing menu... The following unfinished tasks are ready to be done: configfs - choose the type of file system to install Task to do [configfs]:
Type enter to select configfs:
-------------------------------------- You can install the following types of file systems: fossil the new Plan9 fileserver fossil+venti fossil + a archival dump server File system (fossil, fossil+venti)[fossil]:
Type enter to select fossil:
-------------------------------------- Preparing menu... The following tasks are done: configfs - choose the type of file system to install The following unfinished tasks are ready to be done: partdisk - edit partition tables (e.g., to create a plan 9 partition) Task to do [partdisk]:
Type enter to select partdisk:
-------------------------------------- The following disk devices were found. sdC0 - sdD0 - OpenBSD VMM CD-ROM 001 Disk to partition (sdC0, sdD0)[no default]: sdC0
Choose the disk that isn't the CD-ROM, in this case, sdC0:
The disk you selected HAS NO master boot record on its first sector. (Perhaps it is a completely blank disk.) You need a master boot record to use the disk. Should we install a default master boot record? Install mbr (y, n)[no default]: y
Type y for yes:
This is disk/fdisk; use it to create a Plan 9 partition. If there is enough room, a Plan 9 partition will be suggested; you can probably just type 'w' and then 'q'. cylinder = 8225280 bytes '* p1 0 2610 (2610 cylinders, 19.99 GB) PLAN9 >>> w >>> q
Enter w and q to write the partitions and quit:
-------------------------------------- Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition tables (e.g., to create a plan 9 partition) The following unfinished tasks are ready to be done: prepdisk - subdivide plan 9 disk partition Task to do [prepdisk]:
Type enter to subdivide the partition:
-------------------------------------- The following Plan 9 disk partitions were found. /dev/sdC0/plan9 empty 0 41929587 (41929587 sectors, 19.99 GB) Plan 9 partition to subdivide (/dev/sdC0/plan9)[/dev/sdC0/plan9]:
Press enter to select the default Plan 9 partition:
This is disk/prep; use it to subdivide the Plan 9 partition. If it is not yet subdivided, a sensible layout will be suggested; you can probably just type 'w' and then 'q'. no plan9 partition table found 9fat 204800 nvram 1 fossil 40676210 swap 1048576 ' 9fat 0 204800 (204800 sectors, 100.00 MB) ' nvram 204800 204801 (1 sectors, 512 B ) ' fossil 204801 40881011 (40676210 sectors, 19.39 GB) ' swap 40881011 41929587 (1048576 sectors, 512.00 MB) >>> w >>> q
Enter w and q to write and quit:
-------------------------------------- Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition tables (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition The following unfinished tasks are ready to be done: fmtfossil - initialize disks for a fossil server Task to do [fmtfossil]:
Press enter to format the disk for fossil.
-------------------------------------- You have the following fossil partitions. Fossil partition to format (/dev/sdC0/fossil)[/dev/sdC0/fossil]: Done. -------------------------------------- Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition tables (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition fmtfossil - initialize disks for a fossil server The following unfinished tasks are ready to be done: mountfs - choose and mount file system partition Task to do [mountfs]:
Type enter to mount the filesystem partition.
-------------------------------------- The following partitions named fossil* were found. Please choose one to use as the installation file system for your Plan 9 installation. --rw-r----- S 0 glenda glenda 20826219520 Jun 9 2024 /dev/sdC0/fossil Fossil partition (/dev/sdC0/fossil)[/dev/sdC0/fossil]:
Select the correct partition (in this case /dev/sdC0/fossil).
-------------------------------------- Preparing menu...% fossil/fossil -c . /env/fossilconf prompt: % mount -c /srv/fossil /n/newfs fsys main create /active/adm adm sys d775 prompt: fsys main create /active/adm/users adm sys 664 prompt: uname upas :upas prompt: users -w nuser 6 len 96 prompt: fsys main create /active/dist sys sys d775 prompt: fsys main create /active/dist/replica sys sys d775 prompt: fsys main create /active/dist/replica/client sys sys d775 prompt: fsys main create /active/dist/replica/client/plan9.db sys sys 664 prompt: fsys main create /active/dist/replica/client/plan9.log sys sys a664 prompt: The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition tables (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition fmtfossil - initialize disks for a fossil server mountfs - choose and mount file system partition The following unfinished tasks are ready to be done: configdist - choose the source of the distribution archive download - download or continue to download the distribution archives Task to do [configdist]:
Press enter to choose the source of the distribution archive.
-------------------------------------- Are you going to download the distribution from the internet or do you have it on local media? Distribution is from (local, net)[local]:
On OpenBSD VMM, the ISO should be loaded in CD-ROM, so press enter for local.
-------------------------------------- Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition tables (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition fmtfossil - initialize disks for a fossil server mountfs - choose and mount file system partition configdist - choose the source of the distribution archive The following unfinished tasks are ready to be done: mountdist - locate and mount the distribution download - download or continue to download the distribution archives Task to do [mountdist]:
Press enter to mount the distribution.
-------------------------------------- Please wait... Scanning storage devices... /dev/sdC0/9fat /dev/sdC0/data /dev/sdC0/fossil /dev/sdC0/nvram /dev/sdC0/swap /dev/sdD0/9fat /dev/sdD0/data The following storage media were detected. Choose the one containing the distribution. /dev/sdC0/fossil (plan9 fossil) /dev/sdD0/9fat (microsoft fat) /dev/sdD0/data (iso9660 cdrom) Distribution disk [no default]: /dev/sdD0/data
Enter the path for the CD-ROM, in this case /dev/sdD0/data.
% 9660srv /bin/9660srv 2688: serving /srv/9660 % mount /srv/9660 /n/distmedia /dev/sdD0/dataWhich directory contains the distribution? Any of the following will suffice (in order of preference): - the root directory of the cd image - the directory containing plan9.iso - the directory containing plan9.iso.bz2 Typing `browse' will put you in a shell that you can use to look for the directory. Location of archives [browse]:
Type enter to browse for the root directory of the CD image.
This is a simple shell. Commands are: cd directory - change to directory lc - list contents of current directory exit - exit shellMove to the directory containing the distribution and then exit. /% lc
Type lc to list contents:
386 NOTICE bootdisk.img lp power64 9load NOTICE.old cfg mail rc LICENSE README cron mips sparc LICENSE.afpl acme dist mnt sys LICENSE.gpl adm env n tmp LICENSE.lucida amd64 fd pbsraw usr LICENSE.old arm lib power /% exit
Once you've confirmed this is the CD-ROM, type exit:
-------------------------------------- Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition tables (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition fmtfossil - initialize disks for a fossil server mountfs - choose and mount file system partition configdist - choose the source of the distribution archive mountdist - locate and mount the distribution The following unfinished tasks are ready to be done: copydist - copy the distribution into the file system Task to do [copydist]:
Type enter to copy the distribution:
------------------------------------------------------ |############################################################| 100% ------------------------------------------------------ Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition tables (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition fmtfossil - initialize disks for a fossil server mountfs - choose and mount file system partition configdist - choose the source of the distribution archive mountdist - locate and mount the distribution copydist - copy the distribution into the file system The following unfinished tasks are ready to be done: bootsetup - create a boot floppy or configure hard disk to boot plan 9 Task to do [bootsetup]:
Type enter to configure the hard disk to boot Plan 9.
-------------------------------------- Initializing Plan 9 FAT configuration partition (9fat) Initializing Plan 9 FAT partition. add 9load at clust 2 Initializing FAT file system type hard, 100 tracks, 64 heads, 32 sectors/track, 512 bytes/sec Adding file /n/newfs/386/9load, length 369368 add 9load at clust 2 used 372736 bytes % cp /n/newfs/386/9load /n/9fat/9load % cp /n/newfs/386/9pcf /n/9fat/9pcf There are myriad ways to boot a Plan 9 system. You can use any of the following. floppy - create a boot floppy plan9 - make the plan 9 disk partition the default for booting win9x - add a plan 9 option to windows 9x boot menu winnt - add a plan 9 option to windows nt/2000/xp boot manager If you are upgrading an extant third edition installation and booting from something other than a floppy, you needn't run anything here. Just type ctl-d. Enable boot method (floppy, plan9, win9x, winnt)[no default]: Enable boot method (floppy, plan9, win9x, winnt)[no default]: plan9 If you use the Windows NT/2000/XP master boot record or a master boot record from a Unix clone (e.g., LILO or FreeBSD bootmgr), it is probably safe to continue using that boot record rather than install the Plan 9 boot record. Install the Plan 9 master boot record (y, n)[no default]: y
Type y to install the Plan 9 master boot record.
Setting Plan 9 partition active.The Plan 9 partition is now marked as active. -------------------------------------- Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition tables (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition fmtfossil - initialize disks for a fossil server mountfs - choose and mount file system partition configdist - choose the source of the distribution archive mountdist - locate and mount the distribution copydist - copy the distribution into the file system bootsetup - create a boot floppy or configure hard disk to boot plan 9 The following unfinished tasks are ready to be done: finish - finish the installation and reboot Task to do [finish]:
Press enter to finish the installation.
-------------------------------------- Congratulations; you've completed the install. Halting file systems...fsys all halt prompt: done Remember to take the install disk out of the drive. Feel free to turn off your computer.
Escape the serial console by typing ~~., then stop and restart the virtual machine:
$ vmctl stop $USER $ vmctl start -c $USER Connected to /dev/ttyp3 (speed 115200) MBR...PBS2... Plan 9 from Bell Labsi8042: kbdinit failedno vga; serial console only disk loader cpu0: 6130MHz GenuineIntel Core i7/Xeon (cpuid: AX 0x206C2 DX 0x78BA97F) ELCR: 02E8 497M memory: 497M kernel data, 0M user, 18M swap found partition #S/sdC0/data 0 41,943,040 found partition #S/sdD0/data 0 147,164 found partition #S/sdD0/data!9fat; 59050+2949120 disks: sdC0 sdD0 trying sdC0....found 9pcf .1131572..........................................................................................................................................+2018112......................................................................................................................................................................................................................................................+457544=3607228 entry: 0xf0100020 Plan 9 i8042: kbdinit failed E820: 00000000 0009f800 memory E820: 0009f800 000a0000 reserved E820: 000f0000 00100000 reserved E820: 00100000 7fffa000 memory E820: 7fffa000 80000000 reserved E820: f0000000 100000000 reserved cpu0: 6132MHz GenuineIntel Core i7/Xeon (cpuid: AX 0x206C2 DX 0x78BA97F) ELCR: 02E8 intrenable: nil handler for 5, tbdf 0xC001000 for ether0 #l0: virtio: 1Gbps port 0x2000 irq 5: fee1bad5cc02 2048M memory: 256M kernel data, 1791M user, 2416M swap usbinit...usbd.../boot/usbd: /dev/usb: no hubs no /srv/usb...no usb disk...pickmethod...read #e/nobootprompt...read #e/bootargs...outin...root is from (tcp, local)[local!#S/sdC0/fossil]:
Press enter to boot from local!#S/sdC0/fossil.
pickmethod done bind #æ...bind #S...partinit...auth...user[none]: glenda
Type glenda to run as user glenda.
usbinit...usbd.../boot/usbd: /dev/usb: no hubs no /srv/usb...no usb disk...mount usbd...boot: can't open /srv/usb: '/srv/usb' file does not existtime... fossil(#S/sdC0/fossil)...version...can't stat /srv/partfs.sdXX: '/srv/partfs.sdXX' file does not exist init: starting /bin/rc i8042: aux init failed i8042: aux init failed i8042: aux init failed i8042: 00 returned to the ea command aux/vga: vbecheck: VBE error 0x4f00 rio: can't open display: initdisplay: /dev/draw/new: no frame buffer init: rc exit status: rio 30: display open init: starting /bin/rc term%
Congratulations, you now have a working Plan 9 installation. You can type ~~. to exit the serial console. Before leaving the serial console, consider setting up a cpu server.
In this guide, we will install Plan 9 4th edition with some patches for vmd.
A patched, working ISO of Plan 9 4th edition can be fetched from:
https://ircnow.org/software/plan9.iso
Please note that the following Plan 9 4th edition ISOs do *not* run on OpenBSD VMM 7.7:
http://ftp.osuosl.org/pub/plan9/history/plan9-4e-latest.iso.bz2 http://9p.io/plan9/download/plan9.iso.bz2
On the
OpenBSD host, we first get serial console into the virtual machine:host$ vmctl console $USER Connected to /dev/ttyp3 (speed 115200) Boot failed: not a bootable diskPBSR...0000 07B1 0000 00B5 Plan 9 from Bell Labsi8042: kbdinit failed no vga; serial console only disk loader cpu0: 6132MHz GenuineIntel Core i7/Xeon (cpuid: AX 0x206C2 DX 0x78BA97F) ELCR: 02E8 497M memory: 497M kernel data, 0M user, 18M swap found partition #S/sdC0/data 0 41,943,040 found partition #S/sdD0/data 0 147,164 found partition #S/sdD0/data!9fat; 59050+2949120 disks: sdC0 sdD0 trying sdC0...dosinit: can't open #S/sdC0/9fat dosinit #S/sdC0/9fat failed trying sdD0.... Plan 9 Startup Menu: ==================== 1. Install Plan 9 from this CD 2. Boot Plan 9 from this CD Selection: 1
We choose 1 to Install Plan 9 from CD:
found 9pcflop.gz .gz........................................................................................................................................................1225840 => 781908+1043156+390320=2215384 entry: 0xf0100020Plan 9 i8042: kbdinit failed E820: 00000000 0009f800 memory E820: 0009f800 000a0000 reserved E820: 000f0000 00100000 reserved E820: 00100000 7fffa000 memory E820: 7fffa000 80000000 reserved E820: f0000000 100000000 reserved cpu0: 6128MHz GenuineIntel Core i7/Xeon (cpuid: AX 0x206C2 DX 0x78BA97F) ELCR: 02E8 intrenable: nil handler for 5, tbdf 0xC001000 for ether0 #l0: virtio: 1Gbps port 0x2000 irq 5: fee1bad5cc02 2048M memory: 256M kernel data, 1791M user, 2416M swap pickmethod...read #e/nobootprompt...pickmethod done bind #æ...bind #S...partinit...auth...mount usbd...boot: can't open /srv/usb: '/srv/usb' file does not exist kfs...version...time... can't stat /srv/partfs.sdXX: '/srv/partfs.sdXX' file does not exist init: starting /bin/rc /bin/dossrv: serving #s/dos use DMA for ide drives[yes]: echo: write error: bad process or channel control request echo: write error: bad process or channel control request mouseport is (ps2, ps2intellimouse, 0, 1, 2)[ps2]: vgasize [640x480x8]: text monitor is [xga]:
Press enter to use DMA for ide drives, then press enter again for ps2. We select text for vgasize, and for monitor, choose the default.
i8042: aux init failed i8042: aux init failed i8042: aux init failed i8042: 00 returned to the ea command /bin/aux/vga: vbecheck: VBE error 0x4f00 rio: can't open display: initdisplay: /dev/draw/new: no frame bufferfailed to start rio. you can start a text-based installation by running inst/textonly init: starting /bin/rc % inst/textonly
Since we don't have any VGA display on OpenBSD
VMM, we run inst/textonly:Sun Mar 1 12:35:07 EST 2026 Installation process started-------------------------------------- Preparing menu... The following unfinished tasks are ready to be done: configfs - choose the type of file system to install Task to do [configfs]:
Type enter to select configfs:
-------------------------------------- You can install the following types of file systems: fossil the new Plan9 fileserver fossil+venti fossil + a archival dump server File system (fossil, fossil+venti)[fossil]:
Type enter to select fossil:
-------------------------------------- Preparing menu... The following tasks are done: configfs - choose the type of file system to install The following unfinished tasks are ready to be done: partdisk - edit partition tables (e.g., to create a plan 9 partition) Task to do [partdisk]:
Type enter to select partdisk:
-------------------------------------- The following disk devices were found. sdC0 - sdD0 - OpenBSD VMM CD-ROM 001 Disk to partition (sdC0, sdD0)[no default]: sdC0
Choose the disk that isn't the CD-ROM, in this case, sdC0:
The disk you selected HAS NO master boot record on its first sector. (Perhaps it is a completely blank disk.) You need a master boot record to use the disk. Should we install a default master boot record?Install mbr (y, n)[no default]: y
Type y for yes:
This is disk/fdisk; use it to create a Plan 9 partition. If there is enough room, a Plan 9 partition will be suggested; you can probably just type 'w' and then 'q'. cylinder = 8225280 bytes '* p1 0 2610 (2610 cylinders, 19.99 GB) PLAN9 >>> w >>> q
Enter w and q to write the partitions and quit:
-------------------------------------- Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition tables (e.g., to create a plan 9 partition) The following unfinished tasks are ready to be done: prepdisk - subdivide plan 9 disk partition Task to do [prepdisk]:
Type enter to subdivide the
partition:-------------------------------------- The following Plan 9 disk partitions were found./dev/sdC0/plan9 empty 0 41929587 (41929587 sectors, 19.99 GB) Plan 9 partition to subdivide (/dev/sdC0/plan9)[/dev/sdC0/plan9]:
Press enter to select the default Plan 9 partition:
This is disk/prep; use it to subdivide the Plan 9 partition. If it is not yet subdivided, a sensible layout will be suggested; you can probably just type 'w' and then 'q'. no plan9 partition table found 9fat 204800 nvram 1 fossil 40676210 swap 1048576 ' 9fat 0 204800 (204800 sectors, 100.00 MB) ' nvram 204800 204801 (1 sectors, 512 B ) ' fossil 204801 40881011 (40676210 sectors, 19.39 GB) ' swap 40881011 41929587 (1048576 sectors, 512.00 MB) >>> w >>> q
Enter w and q to write and quit:
-------------------------------------- Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition tables (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition The following unfinished tasks are ready to be done: fmtfossil - initialize disks for a fossil server Task to do [fmtfossil]:
Press enter to format the disk for fossil.
-------------------------------------- You have the following fossil partitions. Fossil partition to format (/dev/sdC0/fossil)[/dev/sdC0/fossil]: Done. -------------------------------------- Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition tables (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition fmtfossil - initialize disks for a fossil server The following unfinished tasks are ready to be done: mountfs - choose and mount file system partition Task to do [mountfs]:
Type enter to mount the filesystem partition.
-------------------------------------- The following partitions named fossil* were found. Please choose one to use as the installation file system for your Plan 9 installation. --rw-r----- S 0 glenda glenda 20826219520 Jun 9 2024 /dev/sdC0/fossil Fossil partition (/dev/sdC0/fossil)[/dev/sdC0/fossil]:
Select the correct partition (in this case /dev/sdC0/fossil).
-------------------------------------- Preparing menu...% fossil/fossil -c . /env/fossilconf prompt: % mount -c /srv/fossil /n/newfs fsys main create /active/adm adm sys d775 prompt: fsys main create /active/adm/users adm sys 664 prompt: uname upas :upas prompt: users -w nuser 6 len 96 prompt: fsys main create /active/dist sys sys d775 prompt: fsys main create /active/dist/replica sys sys d775 prompt: fsys main create /active/dist/replica/client sys sys d775 prompt: fsys main create /active/dist/replica/client/plan9.db sys sys 664 prompt: fsys main create /active/dist/replica/client/plan9.log sys sys a664prompt: The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition tables (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition fmtfossil - initialize disks for a fossil server mountfs - choose and mount file system partition The following unfinished tasks are ready to be done: configdist - choose the source of the distribution archive download - download or continue to download the distribution archives Task to do [configdist]:
Press enter to choose the source of the distribution archive.
-------------------------------------- Are you going to download the distribution from the internet or do you have it on local media? Distribution is from (local, net)[local]:
On OpenBSD
VMM, the ISO should be loaded in CD-ROM, so press enter for local.-------------------------------------- Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition tables (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition fmtfossil - initialize disks for a fossil server mountfs - choose and mount file system partition configdist - choose the source of the distribution archive The following unfinished tasks are ready to be done: mountdist - locate and mount the distribution download - download or continue to download the distribution archives Task to do [mountdist]:
Press enter to mount the distribution.
-------------------------------------- Please wait... Scanning storage devices... /dev/sdC0/9fat /dev/sdC0/data /dev/sdC0/fossil /dev/sdC0/nvram /dev/sdC0/swap /dev/sdD0/9fat /dev/sdD0/data The following storage media were detected. Choose the one containing the distribution. /dev/sdC0/fossil (plan9 fossil) /dev/sdD0/9fat (microsoft fat) /dev/sdD0/data (iso9660 cdrom) Distribution disk [no default]: /dev/sdD0/data
Enter the path for the CD-ROM, in this case /dev/sdD0/data.
% 9660srv /bin/9660srv 2688: serving /srv/9660 % mount /srv/9660 /n/distmedia /dev/sdD0/data
Which directory contains the distribution? Any of the following will suffice (in order of preference): - the root directory of the cd image - the directory containing plan9.iso - the directory containing plan9.iso.bz2 Typing `browse' will put you in a shell that you can use to look for the directory.
Location of archives browse:
Type enter to browse for the root directory of the CD image.
This is a simple shell. Commands are: cd directory - change to directory lc - list contents of current directory exit - exit shell
Move to the directory containing the distribution and then exit.
Type lc to list contents:
/% lc
386 NOTICE bootdisk.img lp power64 9load NOTICE.old cfg mail rc LICENSE README cron mips sparc LICENSE.afpl acme dist mnt sys LICENSE.gpl adm env n tmp LICENSE.lucida amd64 fd pbsraw usr LICENSE.old arm lib power
Once you've confirmed this is the CD-ROM, type exit:
/% exit
The following unfinished tasks are ready to be done: copydist - copy the distribution into the file system
Task to do copydist:
Type enter to copy the distribution:
Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition tables (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition fmtfossil - initialize disks for a fossil server mountfs - choose and mount file system partition configdist - choose the source of the distribution archive mountdist - locate and mount the distribution copydist - copy the distribution into the file system
The following unfinished tasks are ready to be done: bootsetup - create a boot floppy or configure hard disk to boot plan 9
Task to do bootsetup:
Type enter to configure the hard disk to boot Plan 9.
Initializing Plan 9 FAT partition. add 9load at clust 2 Initializing FAT file system type hard, 100 tracks, 64 heads, 32 sectors/track, 512 bytes/sec Adding file /n/newfs/386/9load, length 369368 add 9load at clust 2 used 372736 bytes % cp /n/newfs/386/9load /n/9fat/9load % cp /n/newfs/386/9pcf /n/9fat/9pcf
There are myriad ways to boot a Plan 9 system. You can use any of the following.
floppy - create a boot floppy plan9 - make the plan 9 disk partition the default for booting win9x - add a plan 9 option to windows 9x boot menu winnt - add a plan 9 option to windows nt/2000/xp boot manager
If you are upgrading an extant third edition installation and booting from something other than a floppy, you needn't run anything here. Just type ctl-d. Enable boot method (floppy, plan9, win9x, winnt)no default: plan9
Type plan9 to have plan 9 boot by default.
If you use the Windows NT/2000/XP master boot record or a master boot record from a Unix clone (e.g., LILO or FreeBSD bootmgr), it is probably safe to continue using that boot record rather than install the Plan 9 boot record.
Install the Plan 9 master boot record (y, n)no default: y
Type y to install the Plan 9 master boot record.
Setting Plan 9 partition active.
The Plan 9 partition is now marked as active.
The following unfinished tasks are ready to be done: finish - finish the installation and reboot
Task to do finish:
Press enter to finish the installation.
Halting file systems...fsys all halt prompt: done
Remember to take the install disk out of the drive. Feel free to turn off your computer.
At this point, we escape the serial console by typing ~~., then stop and restart the virtual machine:
$ vmctl stop $USER $ vmctl start -c $USER
Connected to /dev/ttyp4 (speed 115200)
Plan 9 from Bell Labsi8042: kbdinit failed
no vga; serial console only disk loader
cpu0: 4604MHz GenuineIntel Core i7 (cpuid: AX 0x206D7 DX 0x79BA97F)
497M memory: 497M kernel data, 0M user, 18M swap found partition #S/sdC0/data 0 41,943,040 found partition #S/sdD0/data 0 147,164 found partition #S/sdD0/data!9fat; 59050+2949120 disks: sdC0 sdD0 trying sdC0....found 9pcf .1131572..........................................................................................................................................+2018112......................................................................................................................................................................................................................................................+457544=3607228 entry: 0xf0100020
Plan 9 i8042: kbdinit failed E820: 00000000 0009f800 memory E820: 0009f800 000a0000 reserved E820: 000f0000 00100000 reserved E820: 00100000 3fffa000 memory E820: 3fffa000 40000000 reserved E820: f0000000 100000000 reserved cpu0: 4599MHz GenuineIntel Core i7 (cpuid: AX 0x206D7 DX 0x79BA97F)
intrenable: nil handler for 5, tbdf 0xC001000 for ether0 #l0: virtio: 1Gbps port 0x2000 irq 5: aabbccdded54 1024M memory: 256M kernel data, 767M user, 1392M swap usbinit...usbd.../boot/usbd: /dev/usb: no hubs no /srv/usb...no usb disk...pickmethod...read #e/nobootprompt...read #e/bootargs...outin...root is from (tcp, local)local!#S/sdC0/fossil:
Press enter to boot from local!#S/sdC0/fossil.
pickmethod done bind #æ...bind #S...partinit...auth...usernone: glenda
Type glenda to run as user glenda.
usbinit...usbd.../boot/usbd: /dev/usb: no hubs no /srv/usb...no usb disk...mount usbd...boot: can't open /srv/usb: '/srv/usb' file does not exist time... fossil(#S/sdC0/fossil)...version...can't stat /srv/partfs.sdXX: '/srv/partfs.sdXX' file does not exist
init: starting /bin/rc i8042: aux init failed i8042: aux init failed i8042: aux init failed i8042: 00 returned to the ea command aux/vga: vbecheck: VBE error 0x4f00 rio: can't open display: initdisplay: /dev/draw/new: no frame buffer init: rc exit status: rio 30: display open
init: starting /bin/rc
Congrats, you now have a working Plan 9 installation. You can type ~~. to exit the serial console. Or, you can continue configuring your server. In particular, you may want to set up a cpu server.
Please note that the following Plan 9 4th edition ISOs do not run for VMM:
http://ftp.osuosl.org/pub/plan9/history/plan9-4e-latest.iso.bz2 http://9p.io/plan9/download/plan9.iso.bz2
A working ISO can be fetched from:
https://ircnow.org/software/plan9.iso
On the OpenBSD host, we first get serial console into the virtual machine:
host$ vmctl console $USER Connected to /dev/ttypq (speed 115200)
no vga; serial console only disk loader
cpu0: 4596MHz GenuineIntel Core i7 (cpuid: AX 0x206D7 DX 0x79BA97F)
497M memory: 497M kernel data, 0M user, 18M swap found partition #S/sdC0/data 0 41,943,040 found partition #S/sdD0/data 0 147,164 found partition #S/sdD0/data!9fat; 59050+2949120 disks: sdC0 sdD0 trying sdC0...dosinit: can't open #S/sdC0/9fat dosinit #S/sdC0/9fat failed trying sdD0.... Plan 9 Startup Menu: ==================== 1. Install Plan 9 from this CD 2. Boot Plan 9 from this CD Selection: 1
We choose 1 to Install Plan 9 from CD:
found 9pcflop.gz .gz........................................................................................................................................................1225840 => 781908+1043156+390320=2215384 entry: 0xf0100020
Plan 9 i8042: kbdinit failed E820: 00000000 0009f800 memory E820: 0009f800 000a0000 reserved E820: 000f0000 00100000 reserved E820: 00100000 3fffa000 memory E820: 3fffa000 40000000 reserved E820: f0000000 100000000 reserved cpu0: 4597MHz GenuineIntel Core i7 (cpuid: AX 0x206D7 DX 0x79BA97F)
intrenable: nil handler for 5, tbdf 0xC001000 for ether0 #l0: virtio: 1Gbps port 0x2000 irq 5: aabbccdded54 1024M memory: 256M kernel data, 767M user, 1392M swap pickmethod...read #e/nobootprompt...pickmethod done bind #æ...bind #S...partinit...auth...mount usbd...boot: can't open /srv/usb: '/srv/usb' file does not exist kfs...version...time... can't stat /srv/partfs.sdXX: '/srv/partfs.sdXX' file does not exist
init: starting /bin/rc /bin/dossrv: serving #s/dos use DMA for ide drivesyes: echo: write error: bad process or channel control request echo: write error: bad process or channel control request mouseport is (ps2, ps2intellimouse, 0, 1, 2)ps2: vgasize 640x480x8: text monitor is xga:
Press enter to use DMA for ide drives, then press enter again for ps2. We select text for vgasize, and for monitor, choose the default.
i8042: aux init failed i8042: aux init failed i8042: aux init failed i8042: 00 returned to the ea command /bin/aux/vga: vbecheck: VBE error 0x4f00 rio: can't open display: initdisplay: /dev/draw/new: no frame buffer
failed to start rio. you can start a text-based installation by running
inst/textonly
init: starting /bin/rc % inst/textonly
Since we don't have any VGA display on OpenBSD vmm, we run inst/textonly:
Mon Oct 7 19:26:17 EDT 2024 Installation process started
Task to do configfs:
Press enter to select configfs:
fossil the new Plan9 fileserver fossil+venti fossil + a archival dump server
File system (fossil, fossil+venti)fossil:
Press enter to select fossil:
The following unfinished tasks are ready to be done: partdisk - edit partition tables (e.g., to create a plan 9 partition)
Task to do partdisk:
Type enter to select partdisk:
sdC0 -
sdD0 - OpenBSD VMM CD-ROM 001
Disk to partition (sdC0, sdD0)no default: sdC0
Choose the disk that isn't the CD-ROM, in this case, sdC0:
The disk you selected HAS NO master boot record on its first sector. (Perhaps it is a completely blank disk.) You need a master boot record to use the disk. Should we install a default master boot record?
Install mbr (y, n)no default: y
Type y for yes:
This is disk/fdisk; use it to create a Plan 9 partition. If there is enough room, a Plan 9 partition will be suggested; you can probably just type 'w' and then 'q'.
cylinder = 8225280 bytes '* p1 0 2610 (2610 cylinders, 19.99 GB) PLAN9 >>> w >>> q
Enter w and q to write the partitions and quit:
The following unfinished tasks are ready to be done: prepdisk - subdivide plan 9 disk partition
Task to do prepdisk:
Type enter to subdivide the parttition:
/dev/sdC0/plan9 empty 0 41929587 (41929587 sectors, 19.99 GB)
Plan 9 partition to subdivide (/dev/sdC0/plan9)/dev/sdC0/plan9: This is disk/prep; use it to subdivide the Plan 9 partition. If it is not yet subdivided, a sensible layout will be suggested; you can probably just type 'w' and then 'q'.
no plan9 partition table found 9fat 204800 nvram 1 fossil 40676210 swap 1048576 ' 9fat 0 204800 (204800 sectors, 100.00 MB) ' nvram 204800 204801 (1 sectors, 512 B ) ' fossil 204801 40881011 (40676210 sectors, 19.39 GB) ' swap 40881011 41929587 (1048576 sectors, 512.00 MB) >>> w >>> q
Enter w and q to write and quit:
The following unfinished tasks are ready to be done: fmtfossil - initialize disks for a fossil server
Task to do fmtfossil:
Press enter to format the disk for fossil.
Fossil partition to format (/dev/sdC0/fossil)/dev/sdC0/fossil: Done.
The following unfinished tasks are ready to be done: mountfs - choose and mount file system partition
Task to do mountfs:
Type enter to mount the filesystem partition.
Please choose one to use as the installation file system for your Plan 9 installation.
--rw-r----- S 0 glenda glenda 20826219520 Jun 9 15:26 /dev/sdC0/fossil
Fossil partition (/dev/sdC0/fossil)/dev/sdC0/fossil:
Select the correct partition (in this case /dev/sdC0/fossil).
The following unfinished tasks are ready to be done: configdist - choose the source of the distribution archive download - download or continue to download the distribution archives
Task to do configdist:
Press enter to choose the source of the distribution archive.
Distribution is from (local, net)local:
On OpenBSD vmm, you should have the ISO loaded in CD-ROM, so press enter for local.
The following unfinished tasks are ready to be done: mountdist - locate and mount the distribution download - download or continue to download the distribution archives
Task to do mountdist:
Press enter to mount the distribution.
The following storage media were detected. Choose the one containing the distribution.
/dev/sdC0/fossil (plan9 fossil) /dev/sdD0/9fat (microsoft fat) /dev/sdD0/data (iso9660 cdrom)
Distribution disk no default: /dev/sdD0/data
Enter the path for the CD-ROM, in this case /dev/sdD0/data.
% 9660srv /bin/9660srv 2688: serving /srv/9660 % mount /srv/9660 /n/distmedia /dev/sdD0/data
Which directory contains the distribution? Any of the following will suffice (in order of preference): - the root directory of the cd image - the directory containing plan9.iso - the directory containing plan9.iso.bz2 Typing `browse' will put you in a shell that you can use to look for the directory.
Location of archives browse:
Type enter to browse for the root directory of the CD image.
This is a simple shell. Commands are: cd directory - change to directory lc - list contents of current directory exit - exit shell
Move to the directory containing the distribution and then exit.
Type lc to list contents:
/% lc
386 NOTICE bootdisk.img lp power64 9load NOTICE.old cfg mail rc LICENSE README cron mips sparc LICENSE.afpl acme dist mnt sys LICENSE.gpl adm env n tmp LICENSE.lucida amd64 fd pbsraw usr LICENSE.old arm lib power
Once you've confirmed this is the CD-ROM, type exit:
/% exit
The following unfinished tasks are ready to be done: copydist - copy the distribution into the file system
Task to do copydist:
Type enter to copy the distribution:
Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition tables (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition fmtfossil - initialize disks for a fossil server mountfs - choose and mount file system partition configdist - choose the source of the distribution archive mountdist - locate and mount the distribution copydist - copy the distribution into the file system
The following unfinished tasks are ready to be done: bootsetup - create a boot floppy or configure hard disk to boot plan 9
Task to do bootsetup:
Type enter to configure the hard disk to boot Plan 9.
Initializing Plan 9 FAT partition. add 9load at clust 2 Initializing FAT file system type hard, 100 tracks, 64 heads, 32 sectors/track, 512 bytes/sec Adding file /n/newfs/386/9load, length 369368 add 9load at clust 2 used 372736 bytes % cp /n/newfs/386/9load /n/9fat/9load % cp /n/newfs/386/9pcf /n/9fat/9pcf
There are myriad ways to boot a Plan 9 system. You can use any of the following.
floppy - create a boot floppy plan9 - make the plan 9 disk partition the default for booting win9x - add a plan 9 option to windows 9x boot menu winnt - add a plan 9 option to windows nt/2000/xp boot manager
If you are upgrading an extant third edition installation and booting from something other than a floppy, you needn't run anything here. Just type ctl-d. Enable boot method (floppy, plan9, win9x, winnt)no default: plan9
Type plan9 to have plan 9 boot by default.
If you use the Windows NT/2000/XP master boot record or a master boot record from a Unix clone (e.g., LILO or FreeBSD bootmgr), it is probably safe to continue using that boot record rather than install the Plan 9 boot record.
Install the Plan 9 master boot record (y, n)no default: y
Type y to install the Plan 9 master boot record.
Setting Plan 9 partition active.
The Plan 9 partition is now marked as active.
The following unfinished tasks are ready to be done: finish - finish the installation and reboot
Task to do finish:
Press enter to finish the installation.
Halting file systems...fsys all halt prompt: done
Remember to take the install disk out of the drive. Feel free to turn off your computer.
At this point, we escape the serial console by typing ~~., then stop and restart the virtual machine:
$ vmctl stop $USER $ vmctl start -c $USER
Connected to /dev/ttyp4 (speed 115200)
Plan 9 from Bell Labsi8042: kbdinit failed
no vga; serial console only disk loader
cpu0: 4604MHz GenuineIntel Core i7 (cpuid: AX 0x206D7 DX 0x79BA97F)
497M memory: 497M kernel data, 0M user, 18M swap found partition #S/sdC0/data 0 41,943,040 found partition #S/sdD0/data 0 147,164 found partition #S/sdD0/data!9fat; 59050+2949120 disks: sdC0 sdD0 trying sdC0....found 9pcf .1131572..........................................................................................................................................+2018112......................................................................................................................................................................................................................................................+457544=3607228 entry: 0xf0100020
Plan 9 i8042: kbdinit failed E820: 00000000 0009f800 memory E820: 0009f800 000a0000 reserved E820: 000f0000 00100000 reserved E820: 00100000 3fffa000 memory E820: 3fffa000 40000000 reserved E820: f0000000 100000000 reserved cpu0: 4599MHz GenuineIntel Core i7 (cpuid: AX 0x206D7 DX 0x79BA97F)
intrenable: nil handler for 5, tbdf 0xC001000 for ether0 #l0: virtio: 1Gbps port 0x2000 irq 5: aabbccdded54 1024M memory: 256M kernel data, 767M user, 1392M swap usbinit...usbd.../boot/usbd: /dev/usb: no hubs no /srv/usb...no usb disk...pickmethod...read #e/nobootprompt...read #e/bootargs...outin...root is from (tcp, local)local!#S/sdC0/fossil:
Press enter to boot from local!#S/sdC0/fossil.
pickmethod done bind #æ...bind #S...partinit...auth...usernone: glenda
Type glenda to run as user glenda.
usbinit...usbd.../boot/usbd: /dev/usb: no hubs no /srv/usb...no usb disk...mount usbd...boot: can't open /srv/usb: '/srv/usb' file does not exist time... fossil(#S/sdC0/fossil)...version...can't stat /srv/partfs.sdXX: '/srv/partfs.sdXX' file does not exist
init: starting /bin/rc i8042: aux init failed i8042: aux init failed i8042: aux init failed i8042: 00 returned to the ea command aux/vga: vbecheck: VBE error 0x4f00 rio: can't open display: initdisplay: /dev/draw/new: no frame buffer init: rc exit status: rio 30: display open
init: starting /bin/rc
Congrats, you now have a working Plan 9 installation. You can type ~~. to exit the serial console. Or, you can continue configuring your server. In particular, you may want to set up a cpu server.
| Last modified Thu Feb 19 16:17:43 PST 2026 | [ Current version | History | Create a new page ] |
About the server
|
|