You are here


So you broke Drupal's tables...

If you have missing tables, you know there isn't an easy way to tell drupal or a module to recreate those tables. For example, this site was missing the [geshifilter-code]field_data_comment[/geshifilter-code] table, or something like that.

To fix it, create a new Drupal installation and install all of the modules that have tables that need repairing.

Now, dump all of the table definitions from the fresh installation:

[geshifilter-mysql]mysqldump <freshdb> --no-data --skip-add-drop-table > fix-mysql.sql[/geshifilter-mysql]

and apply the script to your broken installation:

[geshifilter-mysql]mysql --database=<brokendb> < fix-mysql.sql --force[/geshifilter-mysql]

Ignore all the error messages. Those that the existing tables that we don't want recreated.


How to install PECL uploadprogress on FreeBSD

You need this PECL extension to be installed if you would like to see an upload progress indicator in Drupal. Installation is easy, but not obvious.

[geshifilter-blockcode]cd /tmp # Substitute the latest version from fetch tar xf uploadprogress- cd uploadprogress- phpize ./configure make build install echo "" >> /usr/local/etc/php/extensions.ini cd /tmp rm -R uploadprogress-[/geshifilter-blockcode]

How to find Startup items in Windows 8


How to convert DMG to ISO on OSX

[geshifilter-code]hdiutil convert <dmg_filename> -format UDTO -o <iso_filename>[/geshifilter-code]

Changing or discontinuing a service? Make sure both your clients and staff are in the know.

I have been a customer of iWeb for 5 years. I chose them because they were a Canadian hosting company that offered good value on dedicated servers, and because they supported FreeBSD. Over the years I have leased 5 servers from them concurrently. On February 5 I experienced problems during an OS update and needed help. Instead I got a rude surprise.


Hi there, I wanted to send some feedback, and I waited a few days to cool off a bit. :)

I chose iWeb for a few reasons. You are Canadian; you have well-reputed support staff; you support open-source by mirroring many projects; your prices for dedicated servers are affordable; and you support FreeBSD.

You can imagine how frustrated (to put it mildly) I was last week when my server went down after a routine OS patch and I contacted support only to get the answer "we don't offer anymore support for FreeBSD".

I follow iWeb on Twitter, I read the iWeb blog, and I log into the customer hub regularly. Not only had no one thought to contact customers using FreeBSD to give us warning prior to dropping support so we could make other arrangements, but as far as I can tell there was no public announcement whatsoever.

Of course this isn’t about FreeBSD. I’m disappointed that you chose to drop support and it will certainly affect my choice of provider in the future, but I acknowledge that these are usually decisions based on numbers and economics. Perhaps you found it hard to find qualified support staff; perhaps its part of your focus on your smart server product; perhaps there just isn’t enough demand. It’s about being told that you chose not to support me long before I needed your support.

I have considered your managed services in the past, but the main reason I have opted not to subscribe for added support is that anytime I have had a problem that in sysadmin terms is fixable (a broken gmirror that won’t repair, an inconsistent network connection, or in this case an OS patch that conflicted with the hardware) the only solution I am offered is a new hard drive and a reinstall. While I have 10+ years experience as a sysadmin, I look to your staff when I don’t have time, physical access, or patience to deal with a problem.

In this case, as you can see in the ticket, after I was told that the OS was no longer supported, my subsequent questions were not even properly considered. When I determined that the NIC that was installed to try to help with the problem was making it worse, I asked that it be removed and was told “You can try to disable the nic in the BIOS. As said earlier, we do not offer any support for FreeBSD. We can re-install your server and connect your old disk via USB to allow you to recover your data.” It took another hour debate of back and forth for them to simply remove the NIC.

Once the second NIC was removed I was again able to boot enough that I could see that when the OS patch was installed, a new driver switched the em0 and em1 interfaces and effectively broke em0. The simple command “freebsd-update rollback” restored the server to its previously working state.

Please use this feedback constructively. I encourage you to contact your customers individually and make a public announcement both about this change in support; and in the future, 3-6 months before dropping support for any other operating systems.


The next day an announcement was posted on iWeb's website.

 I received a response a few days later.

Hello Mr. Rodrigues,

Thank you for your feedback to management. Your comments are appreciated.

Please accept our apologies for the treatment of your ticket 6129693, in which you were twice given misinformation about the operating systems we are currently supporting. We can clearly see how this misinformation not only adversely affected the treatment of your issue, but how it has given you a misimpression of iWeb and our attitude towards our clients.

In fact, we do currently support BSD and will continue to do so until April 30th, 2013. This information is currently being disseminated to our clients in advance of the end of life for this product for exactly the reasons you cited in your email; we do not wish for any client to be caught unawares by this change and wish to give ample time for alternate arrangements to be made.

The system administrators who treated your ticket were either uninformed or misinformed on this issue; an grievous error that we assure you will be addressed internally. We are sincerely sorry for this lapse in service and would like to offer you full credit on your current invoice for server  CL-T012-164CL along with our apologies.

Have the issues with the server been successfully resolved at this point, or would you like further assistance from one of senior agents in order to have things as you would like? We would be most happy to have someone help you on this, you have only to give the word.

Please advise if the proposed credit is amenable to you and we can do anything to help.


Hello, Misty,

Sorry for not getting back to you sooner -- the e-mail that I have registered with iWeb is a secondary one that is only used for support tickets when my main SMTP server goes down. My main contact is [redacted].

Thank you for this and your previous e-mail in response to my concern about iWeb's discontinuation of FreeBSD support, specifically with concern to that support ticket.

I appreciate the credit for the KVM and the month of service on that server.

I saw that you have since officially made the announcement about discontinuation of support of FreeBSD as well as some older Windows platforms. Please heed my advice in the future that you give 6-12 months notice on future support changes. This is common practice and is what most of your competitors follow. As you can understand, to organizations with a large IT infrastructure, even 3 months is considered short notice, and 1-2 months could incite panic.

It is my understanding that come April 31 my FreeBSD server itself will not be affected but that support or reinstallation will not be offered; that is, I am responsible for all support. Please let me know if this is not the case.

I have a request that I hope you will consider.

It would be of great value to people like myself, both users of widely adopted operating systems such as FreeBSD as well as niche ones (BeOS, other linuxes, etc) if you would offer a "bare-metal dedicated server" program.

The idea is that customers could order a dedicated server and you would connect a DVD drive and KVM for the customer to install the OS of their choice. It would be understood that your only support obligation would be to reconnect the drive and KVM when requested (which you already do) and replace faulty hardware. Customers could send you an installation DVD by courier or perhaps for a small fee such as $25 you could burn an ISO when requested. Perhaps it could come with a "do-it-yourself" support tier that included one emergency KVM hookup per month.

My suggestion would accomplish a few things. (a) it would be very helpful to customers with specialized needs; (b) you would be offering a very unique service in your market -- filling the gap between off-the-shelf leased servers and colocation; (c) it would strengthen your image as a customer-focused company. It could even be marketed with an angle like "Canadians embrace diversity, and so does their most reliable hosting provider".

If this isn't a possibility, the only additional thing I would request is a free month of service for overlap if/when I'm ready to migrate to another supported server.

Thank you. undefined symbol: CRYPTO_THREADID_get_id_callback

Today after updating some ports and restarting apache, CAS stopped working and I got the message:

[geshifilter-blockcode] undefined symbol: CRYPTO_THREADID_get_id_callback[/geshifilter-blockcode]

This seems to be a regression of an old bug. To fix it, unpack the source code, apply this patch (see diff) and rebuild and reinstall [geshifilter-code][/geshifilter-code].

The 'Microsoft.Jet.OLEDB.4.0' provider is not registered on the local machine.

screen shot

I encountered this error when installing a client's website on my server. The underlying problem is that the application pool only runs 64-bit code by default and there isn't a 64-bit OLEDB driver for the Jet database.

To resolve the issue, in the application pool's settings change Enable 32-Bit Applications to True.


WebIssues: An issue tracker worthy of support

WebIssues screen shot

I think any project that could have multiple issues requiring resolution, especially on an ongoing basis deserve an issue tracker, also known as a ticket system.

In the past I have used Eventum, RT, and Bugzilla, Mantis, and the Google Code IssueTracker. My favourite of these is Eventum, but when considering a new tracker I did some looking around.

I have found that most trackers can be divided into:

  • general-purpose trackers (like the ones mentioned above)
  • do everything including tracking trackers (Horde)
  • trackers designed for software development, usually supporting an agile workflow.

While browsing SourceForge I stumbled upon WebIssues. It is a general-purpose tracker but it has some nice features that make it unique.

  • In addition to a web-based client, it has a full-featured cross-platform desktop client with native support for Windows, Linux, and OS X.
  • It supports three different database back-ends, MySQL, PostgreSQL or SQL Server.
  • It has an attractive user-interface yet is fast and solid.
  • It supports different types of tickets, such as bugs and tasks. Each type has customizable attributes and new types and attributes can be added. It even comes pre-loaded with a type called forum that can be used as a simple message board.
  • Reports can be exported to CSV, HTML and even PDF format.
  • It is well documented, including:
    • a comprehensive user manual in English and Polish in online, downloadable HTML, and PDF formats.
    • developer documentation that introduces contributors to the concepts used in the software.

I tried the software and it installed on the server like a dream. It was simply a matter of creating an empty database and user on my MySQL server, unpacking the server component to a directory on my webserver, and running the simple web-based installer. Many applications try to install this seamlessly, but few achieve it without a snag or two.

I was thrilled to discover that not only is the client available as a portable application, but it is packaged in PortableApps (paf) format. It's no secret that I'm a huge fan of PortableApps.

Unfortunately one feature it doesn't have, one that I consider a necessity is an inbound e-mail gateway, so that users can create new tickets and update tickets simple by sending an e-mail to

Of course the beauty of open-source software is that contributions are welcome. I have joined Michał Męciński and the WebIssues team to add an inbound e-mail gateway.

Michał's code is very clean, and I was able to add the new functionality in about 10 hours. It is currently being tested at my site, and I'll merge it with the rest of the project when it has been thoroughly tested. It will still require another 20-30 hours to smooth out the rough edges and document it.

WebIssues started in 2005 as Michał's master's thesis. He made it available publicly in 2006 and it won the Qt Centre Programming Contest in 2008. The current branch was released in December 2011 and the latest release, 1.0.4 was released just a couple of months ago.

If you are considering a ticket system, please take a serious look at WebIssues.

If you think a system like this would be useful in your business but you don't know where to start, please contact me.

FreeBSD bug i386/176073: Update from 9.0-RELEASE-p3 to 9.1-RELEASE-p0 "breaks" network interface

I discovered this problem while performing a routine binary upgrade from [geshifilter-code]9.0-RELEASE-p3[/geshifilter-code] to [geshifilter-code]9.1-RELEASE-p0[/geshifilter-code]. I checked [geshifilter-code]UPDATING[/geshifilter-code] and there were no warnings about known issues relating to my NIC.

[geshifilter-blockcode]freebsd-update -r 9.1-RELEASE upgrade freebsd-update install (reboot) freebsd-update install[/geshifilter-blockcode]

After the reboot my primary network interface [geshifilter-code]em0[/geshifilter-code] reported [geshifilter-code]no carrier[/geshifilter-code]. To make a long story short, the interface previously known as [geshifilter-code]em1[/geshifilter-code] was now [geshifilter-code]em0[/geshifilter-code] and the interface previously known as [geshifilter-code]em0[/geshifilter-code] was no longer enumerated.

Scrolling back through the console messages showed:

[geshifilter-blockcode]em0: Setup of Shared code failed device_attach: em0 attach returned 6[/geshifilter-blockcode][geshifilter-code]pciconf -vl[/geshifilter-code] showed that the interface previously enumerated as [geshifilter-code]em0[/geshifilter-code] was now [geshifilter-code]none0[/geshifilter-code]

I have read about other similar issues by other people in the forums, but not necessarily with my NIC (Intel Pro/1000). I think the common denominator may be the chipset. As this is a leased server in a datacentre I don't have much to go on except that it is a SuperMicro PDSBM which appears to use the Intel 946GZ
(Lakeport-G). Perhaps something to do with a pci-related driver has changed.

Follow the bug report here.

Bulk labelling volumes in Bacula

My EC2 Bacula storage configuration consists of a single pool containing multiple storage devices. Each storage device is a 100GB EBS store, and each contains a fixed number of prelabelled 1GB volumes.

Here's a little script I whipped together to prelabel the volumes with an incremental identifier.

[geshifilter-code]NAME bulklabel -- label new Bacula volumes with incremental names VERSION 1.0 February 5, 2013 SYNOPSIS bulklabel <pool> <storage> <start> <count> <prefix> bulklabel <pool> <storage> <start> <count> pool: name of pool resource storage: name of storage resource start: first numerical identifier count: number of volumes to create prefix: optional volume name prefix EXAMPLES bulklabel Default FileStorage1 10000 100 Vol- will create 100 volumes named Vol-10000, Vol-10001... bulklabel Scratch Tape1 20000 50 will create 50 volumes named 20000, 20001... COPYRIGHT (c) 2013, Yvan Rodrigues Red Cell Innovation Inc. LICENSE FreeBSD license [/geshifilter-code]


Simple Copyright Policy: If you want to reproduce anything on this site, get my permission first.