In its default config XenServer 6.5 will not permit you to use your host server’s primary GPU in a VM as a passthrough device. That’s reasonable in most cases, as reusing this GPU leaves the dom0 without output. However, passing through the device works nonetheless in many cases – your mileage may vary.
To convince XenServer to let you freely assign the GPU to VMs add this line to the file /etc/udev/rules.d/05-udev-early.rules:
Reboot the server, that’s it.
I had trouble getting audio to work on a Ubuntu 15.04 system with Intel chipset audio (Intel Corporation 9 Series Chipset Family HD Audio Controller). Trying to run the ALSA mixer would look like this:
cannot open mixer: No such file or directory
The fix was to edit /etc/modprobe.d/alsa-base.conf at the very end of the file (changes bold):
# Keep snd-usb-audio from beeing loaded as first soundcard
options snd-usb-audio index=0
options snd-hda-intel index=-2
I modified the index value for the snd-usb-audio module to zero and added a line for the snd-hda-intel module. Afterwards the mixer would start as expected.
I’m a big fan of what can achieved with commodity hardware for free or little cost using virtualization platforms such as XenServer. Sure, ‘real’ server hardware has benefits. It is optimized to excel in certain disciplines. But ordinary gray box PCs are immensely flexible and for a scientist like me who plays with hardware configurations all the time, they are great. (They also save you money if you have the space for non-rack hardware btw.)
One thing where ‘real’ server hardware shines is remote management. Ordinary PCs typically do not have that. But most of the time they have a feature called Wake-on-LAN. This allows powering them up by sending a specially crafted ‘magic’ packet over the Ethernet. Fortunately, XenServer has built-in support to send those packets within a pool of servers and the Windows GUI XenCenter makes using that feature very convenient. Continue reading
My relationship with Apple’s photo editing program Aperture was always a bit complicated, but generally we get along quite well (despite Apertures dooming end). However, sometimes the program is a bit too demanding:
“There is not enough free space on your Aperture Library Volume to import the selected items. It is estimated that you need at least 17179869175GB of additional free space.”
17.179.869.175 GB is a little more than 17 exabyte. Out of curiosity I looked up what that kind of a number means. It is way higher than the number of stars in our galaxy Milky Way (100-400 billion stars). It is also more than four times bigger than the estimated size of the whole World Wide Web back in 2013. And if it had been real photos of about 30MB each (Canon RAW), that would have meant more than 573 million photos (phew). Fortunately Aperture guessed a little bit too high… 🙂
The Android Emulator is part of Google´s Android SDK and allows you to run a virtualized Android system within a window on your desktop. With the normal behavior write access to the system partition of that Android is prohibited. That can be changed using the adb tool:
$ ~/android-sdk-linux/platform-tools/adb remount
While this temporarily permits changes to /system until the next reboot, any changes will be gone when you close the emulator. If you want the Android Emulator to remember whatever you did to /system, place a copy of system.img in ~/.android/avd/avdname.avd/ and call it system-qemu.img:
$ cp ~/android-sdk-linux/system-images/android-21/google_apis/x86_64/system.img ~/.android/avd/avdname.avd/system-qemu.img
Note that the paths in this are examplary and depend on which Android version you wish to use and how you name you virtual device.
I ran into some trouble with the Android SDK on a freshly installed Ubuntu Server 14.12 with OpenJDK due to an empty Java CA certificates keystore. Both version 7 and 8 of OpenJDK seemed to be affected. A fix is described below. Continue reading
While the bigger QNAPs with multiple drives allow replacing the internal drives with bigger and newer disks quite easily due to a process called ‘Online RAID Capacity Extension’, it is slightly more difficult with a one-bay NAS – but possible. These are the necessary steps: Continue reading
For the last couple of days I’ve been plagued by a Time Machine problem for which seemingly nobody (that Google could find) had a solution:
23.01.14 09:53:44,125 com.apple.backupd: Failed to attach to image: /Volumes/Data/Justus MBP13.sparsebundle, DIHLDiskImageAttach returned: 999
After quite a lot of bug searching I finally found a fix.
Rather than not writing about it at all just some quick notes:
- The Droboshare Dashboard software includes the Xtend SAN iSCSI Initiator.
- If you want to use the initiator with non-Drobo iSCSI targets you will have to use the command line interface to configure the target and connect to it. The tool is called xtendsancli. This command line interface (cli) is written in Java and using RMI to talk to some backend which could open up some DIY GUI options.
- The only limitation of the included Xtend initiator (besides the missing GUI) is that it checks if the target name begins with “iqn.2005-06.com.drobo:”. If you can configure the server side there is no difficulty or downside in just using that name and making your iSCSI target look like a Drobo.
That way I was able to make the Drobo iSCSI initiator talk to a Ubuntu 13.10 ‘iscsitarget’ (thats the name of the package) on OS X Mavericks.
Nick Farina wrote a great piece on how it feels to start programming Android apps if you’ve previously breathed XCode and Interface Builder air and learned the hard way to play the strings of Apple´s stringent certificate management.
I agree with every single word. And its all but black and white.
Nick Farina: An iOS Developer Takes on Android