Custom boot messages for your Redhat Linux or CentOS-based virtual appliance
Upon boot, many
virtual appliances automagically start services, log users in, or display helpful messages beyond what a normal OS would.
After all, a primary use-case of virtual appliances is to act more like an application than a full OS, and ideally would like the user to feel like they're only interacting with an application.
One virtual appliance that I use is
MindTouch's open source
Dekiwiki appliance (btw, I fully recommend Dekiwiki, my favorite wiki software at the moment.).
The DekiWiki appliance, upon boot, without any user interaction or required login, will display something like this:

This is extremely handy. No login to Linux necessary. Just go to any web browser on your network, and go.
How to recreate the magic in CentOS/Redhat/(probably) Fedora
I'm currently making two virtual appliances based on
CentOS Linux (A clone of
RedHat Enterprise Linux ). I pretty much copied DekiWiki's rc.local, to identify and print out the current IP, whatever it may be, and direct the user to browse there, without having to login. This was partially successful. But after printing the URL and instruction to the user, the console tty was cleared prior to login prompt appeared, making it so all the helpful info was removed.
Where'd my helpful message go? It was cleared by mgetty.I had no idea why this was working fine in the Debian-based DekiWiki appliance, and less so in my CentOS-based (Piwik, coming soon!) appliance. After a bit of side-by-side comparison, I noticed that Debian's
/etc/inittab calls up
/sbin/getty, but CentOS (and Redhat)'s
/etc/inittab calls up
/sbin/mingetty.
mingetty apparently clears the screen, and
getty does not.
By adding the
--noclear option to mingetty, CentOS will stop clearing the screen, and allow your custom boot message to live on.
Notes.Here's what to edit in
/etc/inittab:
BEFORE# Run gettys in standard runlevels1:2345:respawn:/sbin/mingetty tty12:2345:respawn:/sbin/mingetty tty23:2345:respawn:/sbin/mingetty tty34:2345:respawn:/sbin/mingetty tty45:2345:respawn:/sbin/mingetty tty56:2345:respawn:/sbin/mingetty tty6AFTER# Run gettys in standard runlevels1:2345:respawn:/sbin/mingetty --noclear tty12:2345:respawn:/sbin/mingetty --noclear tty23:2345:respawn:/sbin/mingetty --noclear tty34:2345:respawn:/sbin/mingetty --noclear tty45:2345:respawn:/sbin/mingetty --noclear tty56:2345:respawn:/sbin/mingetty --noclear tty6Original rc.local that finds and prints IP in helpful message (thanks Mindtouch!):
IP=`ifconfig eth0 | grep "inet addr"|awk -F ' ' '{print $2}' | awk -F ':' '{print $2}'`echoecho -e "\033[1mTo access Deki Wiki, please launch a web browser and go to:"echoecho " http://$IP"echo -e "\033[0m"exit 0
Managing feeds. The doghouse and the kennel.
Like many of you, I have a love/hate relationship with my feeds. (Remind me one day to tell you about my feed: bottomless popcorn theory).
But today I'm here to tell you about two helpful strategies I use with my feeds.
The Doghouse.
Invented by a
friend of mine, the Doghouse is feed probation. Basically you're marking a feed, by tag, or folder, as "in the Doghouse." You're disappointed in this feed. It's not living up to expectations. There are many reasons why a feed may get sent to the Doghouse. Maybe all of a sudden it went "partial," maybe images stopped working, maybe the past 30 items have been about a topic you're not interested in and you suspect the shift is permanent. Maybe somebody just got an iphone, and ever since it's gone downhill. You don't want these feeds to get mixed in with the good feeds, but you don't want to totally fire the feed quite yet. Send it to the Doghouse.
The Kennel.
The Kennel is just a vacation for feeds. For me, the Kennel is usually when there's nothing wrong with the feed, but I need to edit stuff down either for time or focus reasons. If you have a major project due, and can't deal with distraction, you may want to move all feeds unrelated to your project, to the Kennel.
Maybe it's the week before Macworld, and you just don't feel like reading 12 posts a day about iphone video camera rumors. Maybe you're on a budget, and reading about luxury hotels hurts right now. Maybe you have a Drupal deadline, and only want to read about Drupal and Linux for two weeks.
There are plenty of reasons to drop your feeds of at the Kennel, it doesn't mean you love them any less.
Labels: atom, doghouse, feeds, Google Reader, gtd, lifehacker, lifehacking, productivity, RSS, syndication