Not a good evening

This entry was published at least two years ago (originally posted on October 13, 2003). Since that time the information may have become outdated or my beliefs may have changed (in general, assume a more open and liberal current viewpoint). A fuller disclaimer is available.

I host three sites on a computer here in my apartment — my old website (djwudi.com), my family’s website (hanscomfamily.com), and my friend Kirsten’s site (geekmuffin.com). All three sites have been getting hit over the last few weeks with the comment spam that is rapidly becoming such a hassle.

Tonight I attempted to install the MT-Blacklist plugin that has recently been released as a tool to combat these comment spammers. Unfortunately, after installing it, when I attempted to access it, I got the following error:

An error occurred: Can’t locate Storable.pm in @INC (@INC contains: /Library/WebServer/CGI-Executables/mt/extlib /Library/WebServer/CGI-Executables/mt/lib /System/Library/Perl/darwin /System/Library/Perl /Library/Perl/darwin /Library/Perl /Library/Perl /Network/Library/Perl/darwin /Network/Library/Perl /Network/Library/Perl .) at /Library/WebServer/CGI-Executables/mt/lib/MT/PluginData.pm line 9. BEGIN failed–compilation aborted at /Library/WebServer/CGI-Executables/mt/lib/MT/PluginData.pm line 9. Compilation failed in require at /Library/WebServer/CGI-Executables/mt/extlib/jayallen/Blacklist.pm line 18. BEGIN failed–compilation aborted at /Library/WebServer/CGI-Executables/mt/extlib/jayallen/Blacklist.pm line 18. Compilation failed in require at /Library/WebServer/CGI-Executables/mt/mt-blacklist.cgi line 29.

Well, that’s no good. I dinked around with fink for a while, attempting to get the mysteriously missing ‘storable.pm’ installed, only to continually get error message after error message. Eventually giving up in frustration, I decided to attempt one of the other, lower-tech methods of combatting the spambots — simply renaming the scripts that handle comment and trackback submission. However, when I attempted to do a rebuild on my old weblog, I ended up getting the same error message.

This worries me. It would appear that this ‘storable.pm’ is required for MovableType to function at all. However, now all of a sudden, I don’t have it, and I have no idea why. So now, I’m faced with reinstalling OS X, fink, and whatever other packages I had installed on the server — and I just hope I can remember them all — and hopefully do so while still managing to keep the information for all three weblogs. I could actually live if I lost what’s on my old weblog, as most of it is already imported into this weblog, and I’ve got the export files saved already, but I don’t have either a recent backup of the box or backups of the hanscomfamily.com or geekmuffin.com directories (yes, I know, bad sysadmin).

I think I’ll be able to reinstall without losing everything — but then, I thought things were hunky-dory up until this point, too. So I’m a little concerned.

End result — it’s past my bedtime, I’m tired, more than a little frustrated, and ready to go to bed. Hopefully things will look better when I get back to poking around tomorrow evening.

(I don’t think that MT-Blacklist caused any of the problems, in case anyone is wondering. I think it’s just either my goofing something up, a random server glitch, or a combination of the two. No worries on the MT-Blacklist front in and of itself.)

8 thoughts on “Not a good evening”

  1. Yeah, about Storable.pm… it seems that around 10.2.4 or 10.2.5, it vanished. I know, I ran into this when I was using MT on my iBook. Here’s what you do, though, seriously:

    sudo perl -MCPAN -e 'install Storable'

    It’s not you, it’s randomly disappearing Perl modules.

  2. Thanks Phil, that’s good to know. My first run through that gave me an error or two, but along the way, it also suggested upgrading CPAN. I followed the instructions for that, and now it seems to be upgrading my entire Perl installation. I’m kind of flying blind here (follow the instructions, accept the defaults, and hope that nothing explodes)…I’ll see what happens once it’s all done.

    I did find out that once I removed the MT-Blacklist libraries, MovableType stopped yelling about the missing storable.pm. Now, I hadn’t configured and set up MT-Blacklist, so I’m not sure how it’s presence or absence makes a difference one way or the other, but it obviously does. I’m also not sure if storable.pm is really there, and MT-Blacklist is interfering with it (since MovableType works normally once I remove MT-Blacklist), or if it’s not there, and MovableType doesn’t actually require storable.pm on its own.

    Either way, things seem to be progressing. Still keeping my fingers crossed until this is all sorted out though.

  3. Great. Before I started that perl upgrade process, it gave me two commands — one to start the process, and one to run afterwards (rehash, or reload, or something). Now that the upgrade process is finished, though, I don’t remember the second step. And, of course, I didn’t write it down, and it’s scrolled out of the terminal’s buffer.

    So now, when I run the command that Phil gave me above, I get this:

    [www:~] djwudi% sudo perl -MCPAN -e 'install Storable'
    Password:
    Can't locate object method "install" via package "Storable" at -e line 1.
    [www:~] djwudi%

    My batting average sucks right now.

  4. I did find out that once I removed the MT-Blacklist libraries, MovableType stopped
    yelling about the missing storable.pm. Now, I hadn’t configured and set up MT-Blacklist,
    so I’m not sure how it’s presence or absence makes a difference one way or the other,
    but it obviously does.

    If you have MT-Blacklist installed, Movable Type will compile it anytime Movable Type is run just like any other plugin. When that happens, any ‘use’d libraries are called in and compiled as well. Since you don’t have Storable, MT would throw errors as long as you had MT-blacklist installed. Once you remove MT-Blacklist, the need for Storable is also removed.

    I’m also not sure if storable.pm is really there, and MT-Blacklist is interfering with it (since
    MovableType works normally once I remove MT-Blacklist), or if it’s not there, and
    MovableType doesn’t actually require storable.pm on its own.

    It’s very simple: you don’t have the Storable module. probably never did either since it was never included in the base perl distribution (until perl 5.8)….

    I hope that helps.

  5. Also, Mike, a day late and a dollar short, but the MT-Blacklist guy explicitly ID’d storable.pm as a prereq. Not that I remember exactly how i got it to load either, but… it was in the readme.

    if you didn’t set up MT-Blacklist, how does it affect your server, out of curiosity?

  6. Thanks for the help, both of you! I do need to get around to re-installing it on my personal server — it still has two websites running on it, and one of them just got a couple spam comments today. Grrrr…

Comments are closed.