zenhost is a Xen dom0 (hosted by bddebian) which is hosting several domUs (see the table on public hurd boxen for a list).
listing running domUs
$ sudo xm list
$ sudo xm top
handling running domUs
Forcefully killing a domU (that has crashed or is busy-looping, etc.):
$ sudo xm destroy [domU]
As for (re-)starting a domU, read below in domU consoles.
Using xm shutdown [domU] to gracefully shut down a running domU does not yet
work -- this is not yet implemented in the Xen port of GNU
Mach (open issue xen).
domU consoles
To avoid any complications with people trying to use the same console at the same time, please use this command for attaching to a domU's console (this command line will also start the domU in case that it isn't running already):
$ host=[domU] && sudo screen -DRRS console-$host sh -c "xm console $host || xm create -c $host"
Otherwise, if one attaches to the same console twice, the second instance will in fact forward input to the domU (possibly infering with what the person is doing on the first instance), but the output won't be sent back to the second instance.
After having typed this once, Bash's reverse-search-history (C-r), followed
by typing in host=flubber, for example, will be enough to get access to
that machine's console.
TODO: How does one get the environment variables COLUMNS and LINES set
properly when using xm console? This is relevant for everything using
(n)curses -- for interactive console applications. Using export COLUMNS=143
LINES=44 does work, but is a manual process.
Installing
Enable loggin with screen (
C-a H).lvcreate ...
~tschwinge/machines/MACHINE
~tschwinge/install_system
MACHINE
/dev/zenhost/...-root
/etc/xen/MACHINE
xm create -c MACHINE
/install
If needed:
cd /dev/ && ./MAKEDEV hd2
mkdir /media/data && settrans /media/data /hurd/ext2fs /dev/hd2
rmdir /home && ln -s media/data/home /
If needed: restore (parts of) some files
/etc/fstab
/etc/{passwd,shadow,group,gshadow}
adduser ... sudo
passwd root
/etc/ssh/ssh_host_*key*
Can do this here or have to move after install_packages due to the files being overwritten again (don't think so)?
syncfs -s; halt
xm create -c MACHINE
- /install_packages
TODO
crosshurd
I: Extracting /var/cache/apt/archives/dash_0.5.5.1-3_hurd-i386.deb...
tar: ./bin/sh: Cannot create symlink to `dash': File exists
tar: ./usr/share/man/man1/sh.1.gz: Cannot create symlink to `dash.1.gz': File exists
tar: Exiting with failure status due to previous errors
Ignore?
/install
Unpacking debconf (from .../debconf_1.5.28_all.deb) ...
+ debconf-set-selections
warning: Unknown type error, skipping line 7
Fix.
Configuring dash
----------------
The system shell is the default command interpreter for shell scripts.
Using dash as the system shell will improve the system's overall performance. It
does not alter the shell presented to interactive users.
Use dash as the default system shell (/bin/sh)? yes
Automate.
Configuring libpam-runtime
--------------------------
Pluggable Authentication Modules (PAM) determine how authentication,
authorization, and password changing are handled on the system, as well as
allowing configuration of additional actions to take when starting user
sessions.
Some PAM module packages provide profiles that can be used to automatically
adjust the behavior of all PAM-using applications on the system. Please
indicate which of these behaviors you wish to enable.
1. Unix authentication
(Enter the items you want to select, separated by spaces.)
PAM profiles to enable: 1
Automate.
+---------------------------Configuring grub-pc------------------------------+
Add grub*- somewhere.
+---------------------ca-certificates configuration------------------------+
| Trust new certificates from certificate authorities? |
Used to be configured later -- move seeding forward.
