Porn for Sysadmins

Having a perverse interest in all things sysadmin I sometimes go on google.ca enduced journeys in search of sysadmin blogs/pictures/info etc. I find it’s a neat way to see what my peers are up too, hopefully picking up some new tricks along the way. One of the most openly documented HA website’s I’ve seen in recent memory is wikipedia. They have hours worth of reading regarding their setup as well as admin blogs to detail the day to day problems they encounter. Here are some links to get your reading binge started.

Wikimedia Servers
Server Admin log
Wikimedia NOC
Wikitech

Simple HTTP mp3 server

Looking for a simple mp3 server for your home network? Check out GNUmp3d! I run one at home to stream my CD collection (which I’ve converted to mp3’s) to all the systems in my house. It’s platform agnostic, simple, and light weight. Pretty much any pentium with 32+ mb ram and a nice sized disk can act as a gnump3d server.

SSH key authentication made easy…

If you’re using openssh to connect to remote unix hosts the best way to handle authentication in most cases is with ssh keys. On windows you can use putty for ssh and pageant to manage your ssh keys. You can even create a shortcut in the startup folder with the following contents in the target box:

"C:\Program Files\PuTTY\pageant.exe" "c:\documents and settings\username\keys\id_rsa.ppk"

This will load pageant when windows starts and automatically prompt you for your passphrase. This is very convenient if you do a lot of ssh’ing to different machines since you never have to type another password or passphrase once pageant is loaded.

On a linux workstation you can have similar ssh key management with a tool called keychain. Keychain will allow you to load your ssh keys once and have them availible to all your open terminals. Normally you would have to type “ssh-agent bash && ssh-add” to have your key loaded, and this would only work in the current terminal window, something that can be quite frustrating.

On ubuntu you can install keychain with the following commands in a terminal window:

sudo apt-get install keychain

Then add the following lines to either your ${HOME}/.bashrc or /etc/bash.bashrc file.

keychain keyfilename
. ~/.keychain/`uname -n`-sh

Replace keyfilename with the name of your private keyfile, usually id_rsa or id_dsa. Now when you open a terminal you’ll be prompted with a passphrase dialog once. After that all your terminals should allow you to ssh without your passphrase or password.

Something else I would suggest is putting the following lines in your ${HOME}./ssh/config file.

Host *
ForwardAgent yes
ForwardX11 yes

This will enable ssh key forwarding from your host to the remote host, allowing you to use your key on any host from the remote host. It also enables X11 forwarding, something that’s nice if you want to use an X app on a remote machine and have it appear on your local display. A little slow but very nice to have sometimes.

Dual Head on linux Redux

So after a 6 month hiatus away from the dual head desktop setup I’ve decided to venture that way again. Nvidia has excellent linux driver support (what’s up ATI?) and using their binary X windows driver it’s really quite simple to implement dual head support. I simply added the following lines to my screen config in /etc/X11/xorg.conf file and restarted the X server.

Section "Screen"
Identifier "Default Screen"
Device "NVIDIA0"
Monitor "BENQ P992"
DefaultDepth 24
Option "TwinView " "on"
Option "TwinViewOrientation" "RightOf"
Option "MetaModes" "1280x1024,1280x1024;1024x768,1024x768;1280x1024,NULL"
Option "SecondMonitorHorizSync" "30 - 96.0"
Option "SecondMonitorVertRefresh" "50 - 120"
SubSection "Display"
Depth 24
Modes "1280x1024" "1024x768"
EndSubSection
EndSection

With twinview enabled X is unaware that there are two display devices and two monitors, this is all done by the binary Nvidia driver. So far it’s working great, the xinerama extensions in the Nvidia driver are allowing most apps to start in one window even though the virtual screen is 2560 (1280 + 1280) pixels wide. There’s nothing more annoying than having applications constantly centered in between both monitors.