======Overview======
gnu.offbyone.lan is a LAIR pod X network resource, an attempt to replace the flakey wildebeast.
^ hostname ^ RAM ^ disk ^ swap ^ OS ^ Kernel ^
| wildebai.offbyone.lan | 512MB | 4GB (/) | 256MB | Debian 6.0 "Squeeze" (AMD64) | 2.6.32-5-xen-amd64 |
| antelope.offbyone.lan | 512MB | 4GB (/) | 256MB | ::: | ::: |
| gnu.offbyone.lan | 512MB | 4GB (/) | 256MB | ::: | ::: |
| wildgoat.offbyone.lan | 512MB | 4GB (/) | 256MB | ::: | ::: |
======News======
* 02/05/2010 - gnu.offbyone.lan created.
* 02/07/2010 - wildebai, antelope, and wildgoat created (duplicates of gnu)
* 02/11/2011 - gnu.offbyone.lan recreating running Debian squeeze.
* 02/19/2011 - all wildebeest herd are now squeeze-based VMs (duplicates of gnu)
======TODO======
* Lots to do
* finish setting up X config (Xresources)
* connect with Xnest
* set up user menu
======Network Configuration======
^ Machine ^ Interface ^ IP Address ^ MAC Address ^
| antelope.offbyone.lan | eth0 | 10.80.2.30 | 00:16:3e:2e:d0:1e |
| wildgoat.offbyone.lan | eth0 | 10.80.2.31 | 00:16:3e:2e:d0:1f |
| gnu.offbyone.lan | eth0 | 10.80.2.32 | 00:16:3e:2e:d0:20 |
| wildebai.offbyone.lan | eth0 | 10.80.2.33 | 00:16:3e:2e:d0:21 |
======Packages======
The following packages have been installed on gnu:
* lair-std lair-vm lair-nfs lair-ldap lair-autofs lair-mail lair-backup
* xpdf xterm rxvt-unicode build-essential dump fluxbox iceweasel imagemagick
* oneko xbase-clients lyx openoffice.org-calc openoffice.org-writer
* xdm xfonts-utils xfonts-scalable xfonts-encodings xfonts-75dpi xfonts-100dpi
* xautomation xpaint xscreensaver xwit x11vnc tightvncserver a2ps gs mpage
* recode enscript xvnc4viewer openoffice.org-writer2latex chromium-browser
======Xen Configuration======
gnu is a Xen virtual machine. Pertinent configuration information follows:
=====Creation=====
gnu.offbyone.lan recreated on sokraits on 02/11/2011:
sokraits:~$ sudo xen-create-image --hostname=gnu --mac 00:16:3E:2E:d0:20 --role=udev
=====Configuration=====
The Xen config file for this VM is as follows:
##########################################################################
# LAIR Xen VM configuration file (gnu.offbyone.lan)
##########################################################################
#################################################
# Kernel + memory size
#
bootloader = '/usr/lib/xen-default/bin/pygrub'
vcpus = '2'
memory = '512'
#################################################
# Disk device(s).
#
root = '/dev/xvda1 ro'
disk = [ 'file:/xen/images/gnu.disk,xvda1,w',
'file:/xen/images/gnu.swap,xvda2,w' ]
#################################################
# Hostname
#
name = 'gnu'
#################################################
# Networking
#
dhcp = 'dhcp'
vif = [ 'mac=00:16:3E:2E:d0:20' ]
#################################################
# Behaviour
#
on_poweroff = 'destroy'
on_reboot = 'restart'
on_crash = 'restart'
======Invalid Data below======
The information that follows is a combination of invalid data-- ie it does not pertain to the wildebeest machines, or is in need of updating (ie the xdm stuff).
=====initrd=====
In /root/initrd, it looks like we have to make the following change:
server=10.80.2.3 # nfs serves the client image via nfs
As it was set to wildebeast--- so after all that effort, the initrd the clients pulled down pointed them back at wildebeast.
====building the gnu initrd====
Run /root/doinitrd.sh
This will recreate it, and copy it into /export/tftpboot, allowing for clients to utilize it.
=====X config bits=====
In /export/client/etc/rc.local on gnu, there's a line nearly at the end of this file that needs to be changed:
FLAKEID="`ifconfig eth0|grep 'inet addr'|cut -d':' -f2|cut -d' ' -f1|cut -d'.' -f4`"
XHOSTID="`echo $(($FLAKEID % 4))`"
if [ "$XHOSTID" -eq 0 ]; then
XRESHOST="wildebai"
elif [ "$XHOSTID" -eq 1 ]; then
XRESHOST="antelope"
elif [ "$XHOSTID" -eq 2 ]; then
XRESHOST="gnu"
else
XRESHOST="wildgoat"
fi
X -ac -query ${XRESHOST}.offbyone.lan :0 vt7 &
As it was set to wildebeast.
====xdm config====
All these are in /etc/X11/xdm/ on gnu..
===xdm-config===
In /etc/X11/xdm/xdm-config, the very last line in the file needs to be commented out (! is the comment character here), so:
DisplayManager.requestPort: 0
Needs to become:
!DisplayManager.requestPort: 0
===Xaccess===
In /etc/X11/xdm/Xaccess, have a line to uncomment:
* #any host can get a login window
===Xservers===
In /etc/X11/xdm/Xservers, we need to comment out everything... in our setup, we don't run an X server locally (on gnu), the clients run their own X servers (ie on the flakes), so this file is empty.
===Xsetup===
In /etc/X11/xdm/Xsetup, establishing some polish (background and power saving):
xset +dpms dpms 600 0 0
#xsetroot -solid rgb:8/8/8
xsetroot -solid black
===Xresources===
The file /etc/X11/xdm/Xresources is where the bulk of the xdm appearance customization takes place.
Here it is (obviously subject to change as new tweaks make their way into it):
xlogin*login.translations: #override \
CtrlR: abort-display()\n\
F1: set-session-argument(failsafe) finish-field()\n\
Delete: delete-character()\n\
Left: move-backward-character()\n\
Right: move-forward-character()\n\
Home: move-to-begining()\n\
End: move-to-end()\n\
CtrlKP_Enter: set-session-argument(failsafe) finish-field()\n\
KP_Enter: set-session-argument() finish-field()\n\
CtrlReturn: set-session-argument(failsafe) finish-field()\n\
Return: set-session-argument() finish-field()
xlogin*greeting: Classroom Linux Terminal (CLIENTHOST)
xlogin*namePrompt: Lab46 Login:\040
xlogin*fail: Login incorrect (Please use your Lab46 login)
#if WIDTH >= 1024
xlogin*greetFont: -adobe-helvetica-bold-o-normal--25-180-100-100-p-138-iso8859-1
xlogin*font: -adobe-helvetica-medium-r-normal--20-140-100-100-p-100-iso8859-1
xlogin*promptFont: -adobe-helvetica-bold-r-normal--20-140-100-100-p-105-iso8859-1
login*failFont: -adobe-helvetica-bold-r-normal--20-140-100-100-p-105-iso8859-1
#if PLANES >= 8
xlogin*logoFileName: /usr/share/X11/xdm/pixmaps/lair.xpm
#else
xlogin*logoFileName: /usr/share/X11/xdm/pixmaps/debianbw.xpm
#endif
#else
xlogin*greetFont: -adobe-helvetica-bold-o-normal--14-140-75-75-p-82-iso8859-1
xlogin*font: -adobe-helvetica-medium-r-normal--12-120-75-75-p-67-iso8859-1
xlogin*promptFont: -adobe-helvetica-bold-r-normal--12-120-75-75-p-70-iso8859-1
xlogin*failFont: -adobe-helvetica-bold-r-normal--12-120-75-75-p-70-iso8859-1
#endif
#ifdef COLOR
xlogin*borderWidth: 1
xlogin*frameWidth: 5
xlogin*innerFramesWidth: 2
xlogin*shdColor: grey30
xlogin*hiColor: grey90
xlogin*background: grey
!xlogin*foreground: darkgreen
xlogin*greetColor: Blue3
xlogin*failColor: red
*Foreground: black
*Background: #fffff0
#else
xlogin*borderWidth: 3
xlogin*frameWidth: 0
xlogin*innerFramesWidth: 1
xlogin*shdColor: black
xlogin*hiColor: black
#endif
xlogin*useShape: true
xlogin*logoPadding: 10
XConsole.text.geometry: 480x130
XConsole.verbose: true
XConsole*iconic: true
XConsole*font: fixed
Chooser*geometry: 700x500+300+200
Chooser*allowShellResize: false
Chooser*viewport.forceBars: true
Chooser*label.font: *-new century schoolbook-bold-i-normal-*-240-*
Chooser*label.label: XDMCP Host Menu from CLIENTHOST
Chooser*list.font: -*-*-medium-r-normal-*-*-230-*-*-c-*-iso8859-1
Chooser*Command.font: *-new century schoolbook-bold-r-normal-*-180-*
Note the existence of the lair.xpm file in /usr/share/X11/xdm/pixmaps, this needs to be put there (as I originally put it there on wildebeast).
=====Printing=====
gnu:~$ wget http://pdq.sourceforge.net/ftp/pdq-2.2.1.tgz
...
gnu:~$ tar -zxf pdq-2.2.1.tgz
gnu:~$ cd pdq-2.2.1
gnu:~/pdq-2.2.1$ ./configure
...
checking for glib-config... /usr/bin/glib-config
checking for GLIB - version >= 1.2.0... yes
checking for gtk-config... /usr/bin/gtk-config
checking for GTK - version >= 1.2.0... yes
updating cache ./config.cache
creating ./config.status
creating Makefile
creating src/Makefile
creating lpd/Makefile
creating doc/Makefile
creating doc/pdq.1
creating doc/printrc.5
creating doc/xpdq.1
creating etc/Makefile
creating etc/printrc.example
Setting pdq resource directory to /etc/pdq
Setting global pdq configuration file to /etc/pdq/printrc
Now do
% make
# make install
# cp /etc/pdq/printrc.example /etc/pdq/printrc
gnu:~/pdq-2.2.1$ make
...
gnu:~/pdq-2.2.1$ sudo make install
...
gnu:~/pdq-2.2.1$
=====References=====
* [[http://www.faqs.org/docs/Linux-mini/XDM-Xterm.html|XDM Xterm Mini-HOWTO]]