Alabama Scenery

Tuesday I stopped along the way as I was approaching Birmingham at a Chick-fil-a for lunch. Some creative florist had furnished all the tables with these flowers. They are not fake:

flower

Birmingham, Alabama is a very pretty place to be, with a mountain ridge on each side. While we were driving back from church yesterday I was able to catch a few shots with my camera. These shots really don’t do it justice. The scenery is very nice, and there are some absolutely beautiful ridges along the tops of the ridges. What a view that must be!

photo_011809_001

photo_011809_003

Installing 32-bit programs on 64-bit Ubuntu linux

So far so good on my experimental switch to Ubuntu Linux from Windows XP.

I’m running 64-bit linux because my laptop’s Intel CPU supports it. However, many but not all programs available for linux are available in 64-bit versions. Last few days I’ve needed to install a few programs that don’t have 64-bit versions available, namely, Adobe Reader 8 and Amazon’s MP3 downloader. Here’s what I have learned:

  • Linux’s package managers are made to balk at installing 32-bit packages on 64-bit OSs. That is simply to remind you to check to see if a 64-bit version is available, (often it is).
  • 64-bit hardware and OSs are backward-compatible with 32-bit software.

So, most of the time all you have to do is tell the package manager “you know what you’re doing” and install anyway:

$ sudo dpkg -i --force-all AdobeReader_enu-8.1.3-1.i386.deb

screenshot-adobereader1

Which is how I got Adobe Reader working. Now for Amazon’s MP3 downloader. The purpose of the downloader is to make it easy and convenient to download whole albums at once, file it, and allow you to pause/resume downloading if needed.

Honestly, I was surprised and delighted to find that Amazon even makes a Linux version. So, I tried to install it. It complained about a bunch of libboost libraries being missing. So I headed over to synaptic and installed all the libboost_*-1.34.1 packages and was then able to install:

$ sudo dpkg -i --force-all amazonmp3.deb

When I tried to run it, it wouldn’t open. I tried opening it from the terminal and it said it couldn’t open some of the libboost libraries that I installed. Somewhere I read that you can use these commands to determine the architecture of an installed program or library:

$ file /usr/bin/amazonmp3
$ file /usr/lib/libboost-thread1.34.1

Well, amazonmp3 is 32-bit and the libboost libraries I installed were all 64-bit. So, I installed the getlibs package and ran it:

$ sudo getlibs /usr/bin/amazonmp3

It downloaded a bunch of 32-bit packages and now amazonmp3 works like a charm.

screenshot-amazonmp3

Kudos to Amazon for their DRM-free MP3s and for making a cross-platform downloader that makes using their service easy!

Adventures in Ubuntuland

My two-year-old HP laptop is getting slower and slower. Time for an XP re-install, but that’s a big ordeal. I opted to give Linux another try (maybe the third time will be the charm).

I installed and configured Eclipse, but it was running super-slow. A quick Google search revealed a simple trick:

The eclipse launcher resides at

/bin/eclipse

yet the actual executable for eclipse is at

/usr/lib/eclipse/eclipse

If you just bypass the wrapper script in /bin/eclipse and execute the binary, you will have increased speed for eclipse.

That seemed to take care of that.

I’m a dedicated Opera-holic. I simply can’t/won’t do without Opera’s super-useful e-mail client. Of course it runs fine on Linux, but often the fonts look terrible on many websites, even with the Microsoft core TrueType fonts installed.

Soo, after another quick Google search here’s what I found:

If you are sure that you have enough truetype fonts available (through
xft. ‘opera -debugfont’ will list the ones opera finds on startup), you can try disabling X font support by adding this line to the [User Prefs] section of one of the opera configuration files (e.g. /etc/opera6rc):

Enable Core X Fonts=0

Voila, nice fonts in Opera!

Managing large MySQL databases on a GB budget

Hello World of blogging!

I just wanted to quickly mention something about how MySQL handles out-of-disk-space situations when importing an SQL file. Here’s my situation:

  • I have an 80GB hard disk,
  • 7GB free space,
  • and am loading a 2GB SQL database dump .

No problem, right? Well not always. I started it importing and went to bed. In the morning it hadn’t finished and I was getting out-of-space notifications on my taskbar.

Thankfully, I’d seen this before and knew all I had to do was run this simple query:

RESET MASTER;

While I don’t fully understand all the ins-and-outs of how it works, MySQL has a binary log that can grow considerably larger than your database. This simple query empties that log.

I ran that, and voila, 5GB free instantly. But here’s the interesting thing that I discovered.  After stopping the import on the command line, MySQL gave this error message:

ERROR 20 (HY000) at line 2373: Dis is full writing '.\mydatabase\mytable.MYD' (Errcode: 28). Waiting for someone to free space... Retry in 60 secs

So apparently, it had been waiting all night rather than crashing. Unfortunately, I stopped it before freeing disk space and restarted it from the beginning. But I guess that’s good, because otherwise I would have never known that MySQL did this!

Hello! I’m a self-taught freelance web developer, and this is my blog. Here, I document problems and solutions in PHP, MySQL, and Javascript that I encounter along the way. Enjoy!