Wednesday, August 8th, 2007
To play MP3 files in Fedora 7 you need to add software to your default installation:
- First, add Livna sources using rpm
rpm -ivh http://rpm.livna.org/livna-release-6.rpm
- Next, Install Rhythmbox using yum
- Next, Install gstreamer-plugins-ugly** using yum
yum install gstreamer-plugins-ugly
That is it, next launch Rythmbox and hello music!

Q: Hey Chris, why does the gstreamer-plugins end in “-ugly”
A: Good question, tough answer, the GStreamer is a streaming media library which contains plug-ins which cannot be shipped in gstreamer-plugins-good because the license is not LGPL. Please note the the license of the entire library is not LGPL! So of course you shouldn’t install it unless you pay the owners for licensing rights.
Tuesday, August 7th, 2007
If you make a new entry in fstab it will not auto-mount. Therefore you must reload / refresh the entries. A reboot will do this but that is not a friendly way to do it. A quick way to reload new entries in /etc/fstab (fstab) is to use the mount command:
Monday, August 6th, 2007
I use the “HTML Validator” Firefox plugin daily. I found it does not work out of the box in Linux namely Fedora Core 6 and Fedora 7. You immediately get a HTML-rendered screen that states:
FATAL ERROR : The dynamic C library contained in the extension file could not be found
Getting rid of this message took me a few minutes of research and I never found a step-by-step HOW-TO for Fedora — so here goes!
Here is how you get rid of this message and get the plugin working in Fedora Core 6 or Fedora 7:
- First, uninstall the plugin by clicking on Tools–>Add-ons and clicking uninstall

- Second, close all instances of Firefox
- Next, install three packages using yum
- compat-libstdc++-296
- compat-libstdc++-33
- tidy
yum install compat-libstdc++-296 compat-libstdc++-33 tidy
- Reinstall the HTML Validator plugin
- Restart Firefox, done!
HTML Validator should now be installed inside of Firefox on Fedora Core 6 or Fedora 7
Tuesday, July 31st, 2007
Question: I just accidentally added a misspelled word to Firefox’s built in dictionary — how do I remove it?
This is a good question! Thankfully, someone at Mozilla decided the user dictionary should be stored in plain text and newline delimited. A big thank you from Chris on this one!
The only challenge is locating your Profile and then your personal / user dictionary file. The personal dictionary is called persdict.dat and lives in your Firefox Profile folder.
The Firefox Profile Folder is located in different places depending on what Operating System you are using:
- Windows XP:
C:\Documents and Settings\%USERNAME%\Application Data\Mozilla\Firefox\Profiles\????????.default\
- Windows Vista:C:\Users\%USERNAME%\AppData\Roaming\Mozilla\Firefox\Profiles\????????.default\
- Mac OS X:
~/Library/Application Support/Firefox/Profiles/????????.default/
- Linux:
~/.mozilla/firefox/????????.default/
If you are using Windows XP or Windows Vista you can quickly jump to the directory by typing “%APPDATA%\Mozilla\Firefox\Profiles\” into the run box (click on Start–>Run).

Once you have found your profile folder you need to edit the persdict.dat file. Using your favorite text editor open up that file and edit out / add in the words you desire.
You will need to restart Firefox before it will see any words you updated.
Tuesday, July 17th, 2007
When your SSL keys and certificates fall out of sync let the headaches begin.
Here is a common error from apache:
Error: “Unable to configure RSA server private key”
Check to see if they are in sync using openssl. Compare the modulus values of both the key and the certificate. Here is how to get the modulus information out of the public key file and the certificate file:
Certificate File:
openssl x509 -noout -text -in [certificate_filename] -modulus
Public Key File:
openssl rsa -noout -text -in [public_key_filename] -modulus
Tuesday, July 17th, 2007
For users of linux and unix one command which is useful is uptime. The uptime command allows you to view the amount of time the server has been running since its last reboot or cold start. If you are administering a Windows machine there is no uptime command — however; this trick will give you a similar result!
I present “uptime” for Windows:
PS: to run this click on Start–>Run and enter CMD — hit enter and then type “net statistics server” into the MS-DOS emulated window and hit enter.
Friday, July 13th, 2007
In an attempt to add the PECL Upload Progress package, I received the following error:
[root@zebra cbschuld]# pecl install uploadprogress-beta
downloading uploadprogress-0.3.0.tgz ...
Starting to download uploadprogress-0.3.0.tgz (4,677 bytes)
.....done: 4,677 bytes
3 source files, building
running: phpize
sh: phpize: command not found
ERROR: `phpize' failed
Hmmm, it turns out I never added the package php-devel (oops). If you are missing phpize on your machine add it with:
Tuesday, July 10th, 2007
Parsing out email addresses is a tedious task. This task hits my desk on a consistent basis. Usually, in my case, the list is coming out of Outlook. If the target list is coming out of Outlook make sure you export using Tab Separated for DOS (thus, click on File–>Import/Export–>Export to a File–>Tab Separated (DOS)–>[select_the_target_folder]). Take this target file and execute this command:
cat [filename] | grep -o -P "[[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(local|aero|coop|info|museum|name|([0-9]{ 1,3})|([a-zA-Z]{2,3}))]*"
Alternatively I usually need a list of unique addresses:
cat [filename] | grep -o -P "[[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(local|aero|coop|info|museum|name|([0-9]{ 1,3})|([a-zA-Z]{2,3}))]*" | sort -u
Thursday, July 5th, 2007
One of the challenges of maintaining a MySQL server loaded with customer data is backing up the customer data on timed intervals without editing the backup script(s) each time you add a customer or database. I wrote this script to process the backups automatically for me.
#!/bin/sh
#
# Script places all backup files in the current working directory
#
DB_USER=user
DB_PASS=password
DB_HOST=localhost
MYSQL_DUMP_OPTIONS="--add-locks --allow-keywords --extended-insert --lock-all-tables"
DATE_TIME=`date +%Y%m%d.%H%M%S`
for db in `echo "show databases;" | mysql -h $DB_HOST -u $DB_USER --password="$DB_PASS" | grep -v -P "(Database|information_schema|test)"`
do
mysqldump $MYSQL_DUMP_OPTIONS -h $DB_HOST -u $DB_USER --password="$DB_PASS" $db | gzip > $db.$DATE_TIME.sql.gz
done