Making pam_mount play nice(r) with systemd user sessions

I like pam_mount‘s idea of providing per-user, on-demand, block device level encryption. Sadly, it turns out it doesn’t really play nicely with systemd user sessions, which are enabled by default in Arch Linux (you can disable them, but it screws up stuff like PulseAudio socket activation). The Arch wiki warns upfront that pam_mount can also unmount your partitions when you close your last session but this is currently not working due to the use of in the PAM stack. While pam_mount and systemd indeed have some disagreements, they can be persuaded to play together quite nicely with some fiddling.

Continue reading

iDRAC Virtual Console, Linux and segfaults

While experimenting with Arch Linux, it turned out I couldn’t run the iDRAC Virtual Console (firmware version: 1.66.65), no matter which Java version I used. For those unaware, iDRAC Virtual Console is a Java application for out-of-band management of Dell servers. Whenever I tried to run it, all I got was a pop-up window saying “Connecting to Virtual Console server” and then a nasty message on the console:

Continue reading

Copying sparse disk image files to LVM thin volumes

Recently I had to migrate some raw disk images to LVM volumes. These disk images belonged to KVM virtual machines, which didn’t really need the whole disk space they were assigned upon creation. The images were sparse files, which allowed me to keep the actual disk space used to the bare minimum. I had to use LVM in the target infrastructure, but didn’t want to statically assign disk space to each VM as a lot of disk space would be wasted. LVM thin volumes were a perfect solution for my problem.

Continue reading

ADATA Premier SP800 SSD drive hardware design details

I have recently acquired a 32 GB ADATA Premier SP800 SSD drive and failed to find its hardware design details on the Internet, so I thought I’d ask ADATA technical support. Here is their answer:


Thank you for contacting ADATA Technology.
Please below the hardware parameters of the 32GB ADATA Premier SP800 SSD drive you requested:

- Page size: 8192 bytes.
- Block size: 256 pages (2048K bytes).

Best Regards,
ADATA Technology

I have to warn you, though, that if you require solid technical support from your vendor, don’t choose ADATA. It took me an hour to register my drive and actually send my inquiry due to terrible lags and connection resets. I had to wait two working days for an answer.

To be fair, though, the disk itself is great value for money. For ca. $50 you get a device capable of achieving 250+ MB/s sequential read/write.

“Bootloader” which restarts a computer

I’ve played around with PXE booting recently and came across an irritating problem. The PXELINUX documentation states that it should reboot the machine after an unsuccessful PXE boot. However, that wasn’t true for both mainboards I’ve tested it with (MSI B75IA-E33 and Dell 0X3GJK, found inside a Dell Vostro V131 laptop) – instead of rebooting, the BIOS continued to boot the next available medium (HDD in my case).

Continue reading

“% Active Boot variable is invalid” when performing ISSU on Cisco 4500

When performing ISSU on Cisco 4500 switches running IOS XE, the first step to do is to issue the issu loadversion command. If the switch refuses to perform this command with the following error:

#issu loadversion 3 bootflash:cat4500e-universalk9.SPA.03.04.00.SG.151-2.SG.bin 4 slavebootflash:cat4500e-universalk9.SPA.03.04.00.SG.151-2.SG.bin
% Active Boot variable is invalid

make sure the configuration register is set to 0x2102:

#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
(config)# config-register 0x2102

Make sure you reload both supervisors before proceeding. You can check the current value of each supervisor’s configuration register using the show redundancy command.

Stuck syslog can render your system unusable

On New Year’s Eve I had to troubleshoot a nasty issue with a mail server which apparently stopped accepting mail for delivery. Looking into the matter I have determined it was due to a named process (running on the same box) failing to resolve hostnames. Upon attempting to restart the process it turned out I wasn’t able to shut it down properly and restarting it took ages for no apparent reason.

Continue reading

A couple of remarks about XBMC scraper development

I’m a big fan of XBMC. One of its most important features is gathering metadata from various websites (a process called scraping), depending on the type of content (e.g. IMDB for movies, TheTVDB for TV shows etc.). I’ve been using smuto’s Filmweb scraper for scraping movie information for a while now without any major problems. Yet recently Filmweb changed their layout (again…), rendering the scraper useless. I got tired of waiting for an updated version of smuto’s scraper and started developing my own from scratch. It turned out it wasn’t as easy as I would like it to be.

Continue reading

WMM and delays on TP-LINK routers

I was quite puzzled recently when, after unpacking a TP-LINK TL-WR740N router, plugging it in and configuring a wireless network on it, ICMP ping delays between the router and a laptop connected to it via Wi-Fi were reaching 100 milliseconds, despite a mere distance of a couple of meters between the two devices (without any obstacles). Changing channels and supported speeds didn’t help. It turned out that the reason was WMM (Wi-Fi MultiMedia) which is enabled by default.

Continue reading

Sony Ericsson Elm, YouTube and TP-LINK routers

If you have a Sony Ericsson Elm J10i2 phone (the issue probably applies to other models as well) and you’re trying to watch YouTube videos via your home WiFi while accessing the Internet through a TP-LINK router, it probably won’t work. The TP-LINK TL-WR541G V4 (probably other models as well) performs NAT in a way that makes it impossible for the RTSP protocol, which is used for streaming YouTube videos on some Sony Ericsson phones (the Android app uses HTTP), to work.

Continue reading