STATUS updates
======TODO======
* the formular plugin is giving me errors, need to figure this out (email assignment form)
* update grade not-z scripts to handle/be aware of winter terms
* update system page for (new)www
* redo DSLAB tweedledee/tweedledum with squeeze rebuilt tweedledee, tweedledum on the way
* rebuild DSLAB www, irc, auth as squeeze VMs
* load balance/replicate www/wiki content between LAIR and DSLAB
* adapt LAIR irc and lab46 to use self-contained kernels (how to do this?)
* update system page for db
* migrate nfs1/nfs2 system page to current wiki
* update nfs1/nfs2 to squeeze
* flake* multiseat page
======URLs======
Some links of interest:
* [[http://www.llvm.org/|LLVM]]
* [[http://www.reocities.com/harpin_floh/glglobe_page.html|GLglobe]]
* [[http://www.heavens-above.com/|Heavens Above]]
* http://wiki.debian.org/kristian_jerpetjoen
* http://www.webupd8.org/2010/11/alternative-to-200-lines-kernel-patch.html
* http://myproxylists.com/nix-brute-force
* [[haas/docs/plan9|My Plan9 Documentation page]]
* [[haas/system/sokraits_halfadder.offbyone.lan|The Sokraits/Halfadder System Documentation page]]
* http://www.egghelp.org/commands/channels.htm
* http://stackoverflow.com/questions/470617/get-current-date-and-time-in-php
* http://www.rjsystems.nl/en/2100.php
* [[http://bitsavers.trailing-edge.com/pdf/|BitSavers]]
* [[http://mir.aculo.us/2010/06/04/making-an-ipad-html5-app-making-it-really-fast/|Time Zone HTML5 app]]
* http://toic.org/2009/01/18/reverse-ssh-port-forwarding/
* Divergent Thinking
* http://en.wikipedia.org/wiki/Divergent_thinking
* http://faculty.washington.edu/ezent/imdt.htm
* https://help.ubuntu.com/community/Installation/QemuEmulator
* Socket Programming
* http://www.linuxhowtos.org/C_C++/socket.htm
* http://www.few.vu.nl/~jms/socket-info.html
* http://www.lowtek.com/sockets/
* http://www.tenouk.com/Module40.html
* http://www.tenouk.com/Module42.html
* http://www.tenouk.com/Module43a.html
* ALIX
* http://markshroyer.com/guides/router/
* http://markshroyer.com/2010/12/openbsd-alix-via-ubuntu/
* http://www.martinmellor.com/freebies/pinouts/IDE44_2_5_pinout.htm (IDE 44-pin pin-out)
* BeagleBoard
* http://elinux.org/BeagleBoardDebian
* Xen
* http://www.tumfatig.net/20110125/running-openbsd-on-xen/ (OpenBSD HVM)
* https://wiki.debian.org/Xen
* http://www.mydigitallife.info/fix-gmail-imap-invalid-credentials-or-web-login-requires-failure-error/
* http://manoharvanga.com/hackme/
* http://chneukirchen.github.com/sabotage/
* http://www.linusakesson.net/programming/pipelogic/index.php
* Free Data Structures eBook: http://dotnetslackers.com/Community/files/folders/data-structures-and-algorithms/entry30283.aspx
* Polyphasic Sleep and Napping
* http://priceonomics.com/the-nasa-studies-on-napping/
* http://www.opinionspost.com/longevity-greek-island-way/
* http://io9.com/the-science-behind-power-naps-and-why-theyre-so-damne-1401366016
* Brain Hacks
* http://www.cracked.com/article_20166_5-brain-hacks-that-give-you-mind-blowing-powers.html?wa_user1=4&wa_user2=Science&wa_user3=article&wa_user4=recommended
* BASH sockets
* http://hacktux.com/bash/socket
* http://terminallinux.org/p/69/
* Debian Jessie daily builds (June 25th): http://d-i.debian.org/daily-images/amd64/20140625-00:18/netboot/gtk/debian-installer/amd64/
* NFSv4: https://help.ubuntu.com/community/NFSv4Howto
* Nettle/libhogweed crypto: http://www.lysator.liu.se/~nisse/nettle/nettle.html#Example
* Debian RAMdisks: http://reboot.pro/topic/14547-linux-load-your-root-partition-to-ram-and-boot-it/
* Zeo
* https://forum.quantifiedself.com/showthread.php?tid=1421
* http://www.cpaptalk.com/viewtopic/t98659/New-Zeo-Sleep-Monitor-for-Bedside-Units.html
* https://github.com/zeoeng/zeo-android-api
* http://eric-blue.com/2013/06/09/life-beyond-zeo/
======Other Days======
======August 9th, 2014======
=====tune2fs to make Xen ext4 domU work with writeback=====
Simple fix, but otherwise aggravating to the uninitiated. Because I have heavily tweaked the mount options, den-create-image apparently doesn't know to set a particular filesystem option on creation, so we need to take care of it manually.
Basically, run on the VM server, on the domU disk image file:
sokraits:/xen/images# tune2fs -o journal_data_writeback ./my_vm.disk
Bam! Done. Good to go.
Useful URL: http://www.linuxquestions.org/questions/linux-general-1/data%3Dwriteback-in-fstab-mounts-root-partition-as-read-only-916031/
=====RAMdisk fun=====
I discovered a new method for pulling off a RAMdisk-based system:
* http://reboot.pro/topic/14547-linux-load-your-root-partition-to-ram-and-boot-it/
debirf.
=====LDAP redo=====
Looks like I may have to spend some quality time on LDAP; in the meantime, here are some potentially useful links:
* http://www.zytrax.com/books/ldap/ch14/#slapadd
* http://www.rjsystems.nl/en/2100-d6-openldap-consumer.php
* http://bacedifo.blogspot.com/2013/07/openldap-ldap-backend-as-proxy.html
* https://help.ubuntu.com/12.04/serverguide/openldap-server.html#ldap-backup
* https://help.ubuntu.com/community/OpenLDAPServer#Populating_the_Directory
======August 13, 2014======
=====RAMdisk fun=====
I finally took the plunge and explored configuring various systems on boot to copy from the boot drive into a tmpfs ramdisk. Turns out it was incredibly easy.
Followed the instructions located here:
* http://reboot.pro/topic/14547-linux-load-your-root-partition-to-ram-and-boot-it/
And have successfully switched over sokraits, halfadder, data1, and data2 to this configuration.
====rsync preservation of ramdisk data====
As a further step, I have already looked into and implemented a solution using rsync to copy changed data back to the boot drive every so often (currently every 4 hours) from a cron job.
crontab logic (on all converted systems) is as follows:
12 */4 * * * (mkdir -p /tmp/sda1; mount /dev/sda1 /tmp/sda1; rsync -av --one-file-system / /tmp/sda1/; umount /tmp/sda1)
Very impressed, and pleased (this has been a long-standing feature I've wanted to see implemented).
=====HA-ish NFS=====
URL: https://help.ubuntu.com/community/HighlyAvailableNFS
Also rigged up the following symlinks on data1/data2:
* /etc/exports -> /export/lib/exports
* /var/lib/nfs -> /export/lib/nfs
So we're a step closer to high availability.
The /etc/rc.local files on both systems appears as follows:
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
#/sbin/drbdadm up lair_data
#/sbin/drbdadm primary lair_data
#/sbin/ifconfig eth0:1 inet 10.80.1.3 netmask 255.255.255.0 up
#/sbin/ifconfig eth1:1 inet 10.80.2.3 netmask 255.255.255.0 up
#/etc/init.d/nfs-kernel-server stop
#/etc/init.d/nfs-common stop
#/bin/mount -t ext4 /dev/drbd0 /export
#/etc/init.d/nfs-common start
#/etc/init.d/nfs-kernel-server start
exit 0
The big remaining TODO on data1/data2 is to rig up the repository web server so mirror can be back online for both LAIR-local packages, and also to serve apt-mirror copies of the debian repository (need to start resyncing that too).
======August 17th, 2014======
=====kernel update grub issue=====
I discovered a potential snag with my RAMdisk operations: kernel updates. Specifically, they try to update grub, and update-grub is none too pleased with the root device not being the hard drive.
So, I hacked up a manual work around (hopefully grub is smart enough to "just work"-- note that any significant kernel changes will require more editing of the grub config, as the entries will not be going in automatically anymore):
In **/etc/kernel/postinst.d/zz-update-grub**, I simply add the following line near the top (before any real processing takes place):
exit 0
Simple and effective.
Then, to clear up any package update errors, I just run **dpkg -a --configure** and they iron themselves out.
The other trick is I re-generate the RAMdisk initrd:
halfadder:~# cd /usr/share/initramfs-tools/scripts
halfadder:/usr/share/initramfs-tools/scripts# cp -f local.ramdisk local
halfadder:/usr/share/initramfs-tools/scripts# mkinitramfs -o /boot/initrd.img-ramboot
halfadder:/usr/share/initramfs-tools/scripts# cp -f local.bak local
halfadder:/usr/share/initramfs-tools/scripts#
Again, if it is just a minor version bump (this case was 3.14.13 to 3.14.15, which doesn't impact the current kernel/initrd file naming), it will hopefully "just work"... if it is a more significant update (3.14 to 3.15, for example), we will have to edit the grub config and add pertinent entries.
=====nullmailer package now in jessie=====
To by delight, someone has ported nullmailer to jessie! So I can now resume collecting cron job outputs from all my systems.
======August 26th, 2014======
=====semester bootstrap=====
Once again I found myself rediscovering the process of starting a new semester. Following will be an attempt at documenting the necessary steps:
* Before gn is kicked over to the new semester, remove old LDAP group associations: **ldaptool flush | ldapmodify -x -W -D "cn=admin,dc=lair,dc=bits"**
* Next, after you've verified the class lists are correct, generate the new user list: **genuserlist** (this functionality might be incorporated into **gn**).
* Copy the **~/bin/tmp/newuser.list** file over to lab46db and run the **newuserbatch** script (needed a few updates since the NFS upgrade).
* Populate LDAP groups: **ldaptool populate | ldapmodify -x -W -D "cn=admin,dc=lair,dc=bits"**
* Create Opii: **mkopus** (on www)
* Create Portfolios: **mkportfolio** (on www)
* Create custom wiki sidebar: **gn sidebar** (on www)
At this point we should be all set.
======August 28th, 2014======
=====Sokraits/Halfadder DRBD=====
Seems I had the node-to-node authentication wrong, which was preventing the establishment of communications. I commented it out and things lit up just fine.
=====sokraits/Xen 4.4=====
A recent **aptitude upgrade** brought in Xen 4.4... among other things, 'xm' has been disabled, and although I could re-enable it, 'xl' is purportedly the future, so I am going to take the opportunity and start using that.
So far, the only file of note I have changed (and I'm actually not even sure it was necessary), was **/etc/default/xen**, which I have as follows:
sokraits:~# cat /etc/default/xen
# Configuration for Xen system
# ----------------------------
# There exists several tool stacks to configure a Xen system.
# …
# Attention: You need to reboot after changing this!
TOOLSTACK=xl
I also added (again, is it necessary? It claims to be the default) the following to **/etc/xen/xl.conf**:
device_model_version="qemu-xen"
====qemu-system-x86-64====
I did have to install **qemu-system-x86-64** in order to get VMs up and running on the Xen 4.4 server. Without it, I was experiencing:
libxl: error: libxl_dm.c:1233:libxl__spawn_local_dm: device model /usr/lib/xen-4.4/bin/qemu-dm is not executable: No such file or directory
libxl: error: libxl_dm.c:1371:device_model_spawn_outcome: (null): spawn failed (rc=-3)
libxl: error: libxl_create.c:1186:domcreate_devmodel_started: device model did not start: -3
I found this link to be marginally helpful in solving the issue:
* https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=733865
======August 29th, 2014======
=====certs for client web access on lab46=====
Some students were experiencing issues when dealing with secure http (https), some messages were claiming some lack of certificates.
After some checking, it seemed I was indeed lacking some common certs. I installed the **ca-certificates** package and this seemed to resolve the issue.
I also installed openssl on lab46.
=====aptitude auto-remount of /tmp for no exec=====
Seems a config change I made a while back is actually working...
lab46:/etc/apt/apt.conf.d# cat 73_tmp
DPkg::Pre-Invoke {"mount -o remount,exec /tmp";};
DPkg::Post-Invoke {"mount -o remount /tmp";};
lab46:/etc/apt/apt.conf.d#
^ [[haas/status/status_201407|Previous Month]] | ^ [[:haas:status|Current Month]] | ^ [[haas/status/status_201409|Next Month]] |