Sunday, February 27, 2011

ZFS Progress in FreeBSD

I've been watching the progress of my favorite filesystem, ZFS, in FreeBSD for a while now. ZFS v28 has been under test by the members of the freebsd-fs mailing list, and I have read multiple resources that have indicated that the performance of the ZFS implementation in FreeBSD is much better than in OpenSolaris; indeed, my Nexenta box only supports up to ZFS v26.

And now, ZFS v28 is now in FreeBSD-CURRENT:
http://lists.freebsd.org/pipermail/freebsd-fs/2011-February/010799.html

There is an excellent article in BSD magazine with some general information. The article is by Martin Matuška, who maintains a ZFS v28 patchset against FreeBSD-STABLE.

When I have some time, I'll be excited to migrate to FreeBSD, and to get away from the insanity that is (was) OpenSolaris.

Monday, February 14, 2011

How to Move Your Picasa Database and Use Multiple Databases

The fact that I cannot configure Picasa's thumbnail database location has been driving me nuts for a while. Fortunately, I found this utility.

How to Move Your Picasa Database and Use Multiple Databases

Tuesday, February 8, 2011

Kludge for running Samba in StormOS/Nexenta hybrid system

A very long time ago, I upgraded a bunch of packages on my Nexenta NCP 3.0.1 fileserver to their StormOS "Hail" counterparts; however, I encountered a problem with the samba package:

Setting up samba (2:3.3.2-2stormos3.2) ...
Starting Samba daemons...:ld.so.1: smbd: fatal: relocation error: file /usr/lib/libcups.so.2: symbol __gss_c_nt_hostbased_service_oid_desc: referenced symbol not found
/etc/init.d/samba: line 33: 17304 Killed                  start-stop-daemon --start --quiet --oknodo --exec /usr/sbin/smbd -- -D
Well, this was no fun. It looked like smbd was not getting a symbol it needed. I shelved the upgrade and forced dpkg to put a "hold" on the old version of samba, until I finally had an idea today.

I "grepped" through the /usr/lib directory in search of the provider of the missing symbol:
find /usr/lib -type f -exec grep __gss_c_nt_hostbased_service_oid_desc '{}' \;
... and I discovered that it was provided by /usr/lib/libgssapi.so.2.
baitisj@raid:/usr/lib$ objdump -T libgssapi.so.2.0.0  | grep hostbased       
0002ba80 g    DO .data  00000008  HEIMDAL_GSS_2.0 __gss_c_nt_hostbased_service_oid_desc
0002ba78 g    DO .data  00000008  HEIMDAL_GSS_2.0 __gss_c_nt_hostbased_service_x_oid_desc
Therefore, I added the following LD_PRELOAD kludge into /etc/init.d/samba:
...
PIDDIR=/var/run/samba
NMBDPID=$PIDDIR/nmbd.pid
SMBDPID=$PIDDIR/smbd.pid
# Baitisj: kludge for missing symbol
LD_PRELOAD=/usr/lib/libgssapi.so.2
export LD_PRELOAD
...
Voila! My nifty ZFS fileserver now runs Samba 3.3.2.