Short notice: Installing Grub4Dos on USB thumbdrives

USB thumbdrives are great. They are cheap, small devices packed with a lot of storage to carry all your important stuff. They are also great to boot administrative tools like True Image etc.

On themudcrab there is a great article for those who want to boot ISOs directly from a USB thumbdrive.

Unfortunately the article does not describe one major aspect: Making the stick itself bootable.

You need a little bit of extra software here to make it happen, thankfully the download is small and the software is free.

As I wrote, by default most thumbdrives do not have the bootable flag set. Also, they don’t have an MBR written. If you would try to install Grub4DOS on such a thumbdrive it would moan about an invalid partition table and recommend to use the –skip-mbr-check parameter.

That’s where HP’s tool comes in: Pop in your thumbdrive, start the HP tool and format the stick. The tool will write the necessary portions to the MBR, effectively making it possible to boot off the thumbdrive.

Done? Then follow the great guide on themudcrab showing all the necessary steps from now on. It even has the right software set as an example 🙂 .

Pangya! Vista Icon

I dig the Vista icons. Unfortunately not all applications come with nice icons. Pangya, for instance, still has a 32×32 low color icon despite getting constant makeovers, patches and improvements.

Since I had to reinstall Microangelo anyway, I whipped up a nice little icon for Vista users:

pangya_vista_compAs you can see, the icon still is the beloved Dolfini, now in all it’s might and shine. There are quite a lot of sizes packed in the icon, so even when scaling the icon size up, it still looks great.

Download the icon file right here and enjoy 🙂 .

Use Mplayer to watch DVDs, browse menus etc.

One of the weak points of Mplayer always seemed to be the support for DVD menus… or not?

Actually it’s quite easy to watch DVDs and browse menus with Mplayer. All you really need is a version that has dvdnav support enabled.

You can start the DVD the following way:

mplayer dvdnav://0 -dvd-device </dev/dvd | myfile.iso>

Quite easy, isn’t it?

XDCC Browser 4.41, XdccbLister and XCB files

XDCCB is a very nice script for mIRC. It automates the often lengthy process of grabbing files off IRC bots and eases navigation. XDCCB uses a list format with the extension .xcb, for this file format there’s a handy tool to convert text lists, html et cetera into the format XDCCB can process: XdccbLister.

Unfortunately, XdccbLister has long been forgotten and XDCCB development moved on, leading to a discrepancy in file format output. Fortunately, though, the tool is free software so I’ve hacked together a very simple patch that should fix at least the biggest issues.

The patch can be applied against the v.0.5 you can grab at SourceForge. If you don’t want to do that, be it because you don’t have Perl or don’t know how, you can also grab a prebuild executable here.

Jumbo Frames, LACP, NFS

Now that my server is basically up and running for a while it’s time to get the neat stuff running 🙂 .

A to-do item on my list has always been enabling jumbo frames and LACP on my Opensolaris installation. So, let’s get this kicking!

Jumbo frames use a MTU of 9000 instead of 1500. Since I’ve aggregated nge0 and nge1 to aggr1 I can simply set the MTU of the aggr and the corresponding values will automatically be set on nge0 and nge1 (even if you don’t see them 😉 ):

ifconfig aggr1 unplumb
dladm set-linkprop -p mtu=9000 aggr1
ifconfig aggr1 plumb

Sweet stuff! Don’t forget to re-configure the address, netmask and gateway for the link. Now I want to enable LACP so I can make use of the combined throughput of the NICs:

dladm modify-aggr -L passive 1

Let’s check whether everything’s up and running as intended:

tsukasa@filesrv:/$ ifconfig aggr1
aggr1: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 9000 index 2
inet 192.168.X.X netmask ffffff00 broadcast 192.168.X.X
tsukasa@filesrv:/$ dladm show-aggr 1
LINK            POLICY   ADDRPOLICY           LACPACTIVITY  LACPTIMER   FLAGS
aggr1           L4       auto                 passive       short       -----

And indeed, everything went smooth.

Now, even with this boost in performance watching HD video over the network sometimes stuttered with many concurrent connections/operations going up- and downstream at the same time. Also, the Opensolaris 2009.06’s CIFS service has the unpleasant habit of dying and refusing to come up again until I reboot, so I went the easy way and simply enabled NFS for this ZFS system (can we call this a system? Mount? I don’t know…):

zfs set sharenfs=on filesrv/video

I didn’t have to do anything else or specify explicit rw options since I already mapped all the stuff before. Now, the only thing left to do:

mount filesrv:/filesrv/video /home/tsukasa/video -t nfs -o defaults,users,noauto,rsize=8192,wsize=8192,timeo=14,intr

And guess what, no more problems 🙂 .

Remarks on the AVM Fritz!WLAN Repeater N/G

At home we’ve always had a nasty problem: The wireless connection works fine just about anywhere but not where we need it — the room my mother’s computer resides in. Since this room is just about the only room in the entire house we can’t plug cables, wireless was the only option.

Now, after trying a few different things (changing antennas, adapters etc.) I’ve given her a repeater for Mother’s Day. Take this as a little review, if you must.

The product I bought is the AVM Fritz!WLAN Repeater N/G, which promises easy, secure and fast setup and use. The repeater goes for about 70 Euros at Amazon, so it’s definitively more expensive than just buying a second WRT54GL and use it to bridge wireless connections.

AVM’s Fritz! repeater is a rather bulky plug for a power outlet, according to the relatively sparse guide you have to place it somewhere between the access point and the client it should serve. Sure thing, plugged the thing in.

First boot took about 2 minutes, since you have to wait for the new wireless network “AVM Fritz!WLAN Repeater” to appear and connect to it. Everything after is a piece of cake: Select the access point you want to repeat, give the passwords etc. and you’re good to go.

By default the repeater makes the SSID it repeats it’s own (which is questionable, but at least configurable). If you want to assign a static IP to the repeater you’re in for a bad surprise: You can’t. At least not in the repeater itself, you have to create a static lease on your DHCP server.

Just to give you an idea of the connection:
Before implementing the repeater in our network, my Mum’s connection was mere 20-30%, losing contact to the AP every few minutes (whenever a car passed by, the wind blew or some poltergeist would feel annoyed). Now, the repeater itself has a nice connection of 60-80% to the AP and serves my Mum’s computer with a strength of 85-98% which is exactly what we were aiming for. Since it’s a B/G network, connection goes up and down from 48MBit/s to 54MBit/s and vice versa at random, there are no connection drops though.

There are some useless gimmicks in the repeater: You can use it as a shortwave radio transmitter to broadcast your local music collection to radios accross the network (something that only works with Windows). Haven’t used it, won’t use it. Instead of implementing stuff like that, AVM should polish the interface and give it some advanced options for people who have to manage networks a little bit more restrictively.

Nice touch: The repeater can go to sleep/wake up at given time periods, unfortunately only fixed times, there’s no support for scenarios like “go to sleep x minutes after there’s no client”. So, our repeater goes down 20:30 and wakes up 05:00.

Booting time after the initial setup is acceptable. Settings are remembered across power-on/-off. The performance boost the repeater gives our B/G network at home is definitively notable. But is the device worth 70 Euros?

Personally, I think it is not worth the money. You can get all features by simply buying another WRT54GL for ~40-50 Euros. AVM’s repeater does not have any outstanding features that would justify the price tag. Quite the opposite: The lack of fine-grained control over the repeater makes it a bad choice for people who really want to get the most out of their wireless connection. For people who just want to get stuff moving quickly, it may be the right choice, though.

My NAS Part 03: Do, Did, Done.

So, my NAS is up and running. It’s feature- and hardware-complete and I’m loving it.

The Fujitsu-Siemens SAS controller worked out of the box (as predicted) and wasn’t castrated to only operate on FSC boards (nice!). The only thing I could moan about is the slot card… I had to lose one screw in order to make it fit into the PCIe slot… who cares.

Enabling SSH in a Nexenta zone can be bitchy, this should do the trick…
Add the following line to /lib/svc/method/svc-syseventd:

[ `zonename` = global ] || sleep 3600 & exit 0

Do a “dpkg-reconfigure sunwcsd” and “svccfg import /var/svc/manifest/system/sysevent.xml”. After that you should be able to enable ssh through svcadm.

Installing Java is easier, fortunately. Although aptitude install sun-java6-bin will fail, the following will work:

$ su –
# export SUN_PERSONALITY=1
# aptitude install nevada-compat
# aptitude install sun-java6-bin
# exit

Overall, there’s a little bit of tweaking necessary to get through some pitfalls of Nexenta, but it is definitively worth it.

My NAS Part 02 – It’s coming together

This series of posts will follow along as I build my very own NAS. In this second part I’ll talk about the user experience of some of the basic hardware with Linux/Solaris.

So, I’ve finally added the missing pieces, namely mainboard, memory and a CPU. I opted for an Asus P5N64 WS Professional mainboard (mainly because nForce is reasonably well supported on Solaris), some Corsair 1333MHz DDR3 RAM and an Intel Q8200 CPU. Assembling everything was no problem – and much to my rejoice the operating system didn’t make a fuss either! Currently the machine still runs the old Linux installation with Nexenta Core Platform on another disk.

Sure, I had to do some handywork before network was back: On Linux I had to force a load of forcedeth and reconfigure my interfaces through /etc/network/interfaces and added bonding. Still, not much to do, all drivers present without binkering.

Solaris didn’t play so nice in the beginning, for some reason I had to plug-in both ethernet cables in order to complete the boot. After that I simply unplumbed the interfaces, disabled nwam through svcadm, enabled physical through svcadm (allowing me to manually configure the interfaces) and finally bonded/aggregated the interfaces through dladm. I do have to say that I like the way Solaris allows configuration of network interfaces way better than the standard Linux method (mainly: fire up vim and edit everything). The nice thing: I really didn’t have to install/download/compile anything, Solaris came loaded with all necessary drivers.

Now, the good news is that all the important components (SAS controller, SATA controller, ethernet, PCI and PCI-e bridges) work fine on Linux and Solaris. Bad news: I didn’t get to test wireless LAN and sound yet, that’s not really the purpose of that machine 🙂 .

So, what’s the verdict on the P5N64 WS Pro in terms of non-Windows compatibility? It’s great, the board comes with 3 PCI-e 16x ports, 2 gigabit ethernet ports (Marvell), 2x eSATA and — much to my rejoice — a BIOS debugger. There is 1 PCI slot for your old stuff (in my case, maybe an old IDE controller or TV card) and 1 pinset for front-panel USB. A COM port slot is included in the package, which is a welcome addition. As usual Asus delivers a lot of stuff with the mainboard, unfortunately they didn’t provide a CD-ROM to restore the BIOS (AMI BIOS; which I had to do already…).

Next week I’ll plug-in the PCI-e SAS controller from Fujitsu-Siemens (which is based on LSI’s SAS1068) and get going with my JBODs 🙂 .

Find and Mount

Sometimes it just happens: Partition layouts break due to user mistakes or software/operating system errors. You’re quite lucky if your partition table just gets a tabula rasa because this means you can still recover most of your old files and directories, even their names could still be intact. A great tool to do that is Partition Find and Mount. Find and Mount is free for personal use but has a few limitations: You can only access one file at the time and the throughput is limited to 500KB/s which is still plenty if you’re just curious whether you could restore file XYZ. There’s also a professional version that doesn’t have any throughput limitations but also only accesses one file at the time. One thing I really like about this software is it’s ease of use. You just specify the disk, run a more-or-less quick scan (there are several levels available) and bam, you’re able to mount the partition and browse through your files (or what’s left of them). It’s so dead simple, you can hardly go wrong. Other products like Active@ Partition Recovery aren’t bad but way slower and harder to use — at least in my simple case.

My take on nVidia’s VDPAU

Modern HD content devours a plethora of performance. My CPU spikes at 100% whenever I watch 1080p content, leading to framedrops and stuttering audio on my Linux machine. I never really understood exactly why the same video would work on my much weaker notebook. Now the times of suffering are over, enter VDPAU.

VDPAU is nVidia’s answer to AMD’s XvBA, both representing APIs to succeed the XvMC fame of decoding video material directly on the GPU – but this time not limited to MPEG2.

For this very reason I had to switch my graphic cards. I previously used a EVGA GeForce 8800 GTS/640, one of the older models of the series. Now I’m flying on a brand new EVGA GeForce 9800 GT which is basically the very same card but with a newer chip.

The performance gain is tremendous, the CPU usage fell from 100% to 1.9%!

You can force mplayer to prefer vdpau’d codecs by adding the following lines to your ~/.mplayer/config:

vo=vdpau,xv
vc=ffh264vdpau,ffmpeg12vdpau,ffvc1vdpau,ffwmv3vdpau,

This will use VDPAU and it’s codecs when possible and fall back on autodetect in all other cases.

All you need to get started with this great feature is a VDPAU patch, the newest nVidia driver and a supported card. Try it, it’s absolutely fantastic 🙂 .