I have a small Shuttle Barbebone computer which I’m mainly using as a KVM hypervisor on top of Ubuntu Server 14.04 to run a few VMs. Since the Barebone also sports a HDMI port and the CPU comes with an integrated Intel HD GPU I thought it would be a great Kodi (ex XBMC) mediacenter as well. However, I’ve been unable to find a working walk-through on how to install it on Ubuntu Server. Most likely because nobody ever does this on a server OS. Anyway, here’s how to install the latest Kodi release on Ubuntu Server 14.04 including hardware acceleration for the Intel HD GPU. Continue reading
I’m running some sort of an experimental KVM guest with IPv6 connectivity only. Since it still had Ubuntu Server 13.10 installed I tried to run a
do-release-upgrade on it to upgrade it to the latest Ubuntu Server release – which at the time of this writing is 14.10. However, the
do-release-upgrade command kept saying that no new release could be found:
root@ipv6lab:~# do-release-upgrade Checking for a new Ubuntu release No new release found
I verified the
/etc/update-manager/release-upgrades configuration file but it already contained the
Prompt=normal line. After doing some digging I found out that the
do-release-upgrade tries to connect to http://changelogs.ubuntu.com but there is no AAAA DNS record for this host. Essentially, this means that an Ubuntu server can’t be upgraded to a newer release over IPv6 because it can’t connect to the update info site over IPv6.
root@ipv6lab:~# dig +short changelogs.ubuntu.com A 18.104.22.168 root@ipv6lab:~# dig +short changelogs.ubuntu.com AAAA root@ipv6lab:~#
Interestingly, the Ubuntu APT repository update site is accessible over IPv6, which is why something like
apt-get update runs fine on IPv6-only Ubuntu servers.
I solved the problem by creating an IPv6 to IPv4 HTTP proxy using HAProxy on a IPv4/IPv6 dual stack server. The proxy listens on an IPv6 address and “tunnels” all requests to changelogs.ubuntu.com using the IPv4 address of the changelogs server. I was able to upgrade to a newer Ubuntu release this way on an IPv6-only Ubuntu server. Continue reading
I’ve been using command-line commands or the Clover Configurator to mount Clover’s EFI partition to edit Clover’s main configuration file.
However, I find it easiest to mount the hidden EFI volume in Disk Utility:
The hidden partitions will only be shown if Disk Utility’s debug mode has been enabled. In a shell, type:
defaults write com.apple.DiskUtility DUDebugMenuEnabled 1
Start Disk Utility and enable the option to show all partitions:
Ever since I fusioned a SSD and a HDD into an OS X Fusion Drive, Clover has been unable to auto-boot the new logical Fusion Drive volume. Clover was just sitting on its startup volume selection screen and was waiting for me to select the volume to boot. I’ve found some hints that using an UUID should make Clover autoboot the Fusion drive but I’ve been unable to make it work with any of the UUIDs of the logical/physical volume.
What finally worked was using the system ID (or whatever this is called) of the volume. Here’s an excerpt from my Clover configuration:
<key>Boot</key> <dict> <key>Arguments</key> <string>dart=0</string> <key>DefaultVolume</key> <string>HD(3,GPT,17337FC1-A0F7-4C73-DEA1-363BA11AB811,0x3A346008,0x40000)</string> <key>Timeout</key> <integer>5</integer>
With this ID, Clover auto-boots my Fusion Drive volume just fine after waiting for 5 seconds for user input.
The full IDs can be found in Clover’s log file in
/Library/Logs/CloverEFI/ and look like this:
system.log:0:837 0:000 PciRoot(0x0)\Pci(0x1F,0x2)\Sata(0x0,0xFFFF,0x0)\HD(3,GPT,17337FC1-A0F7-4C73-DEA1-363BA11AB811,0x3A346008,0x40000)
You have to strip the PciRoot/Sata part for Clover.
Since OS X Yosemite, the CoreStorage service allows you to rename the logical volume name of a Fusion Drive if you wish to do so.
sudo diskutil cs rename "Macintosh HD" "Fusion Drive"
The Fusion Drive now shows up as “Fusion Drive” instead of “Macintosh HD” which was the name I’ve chosen initially. The OS X main volume is still named “Macintosh HD”.
Sep 29 19:19:41 wopr sshd: error: Could not load host key: /etc/ssh/ssh_host_ed25519_key
If you’re getting this error message in the log file, you most likely have the ed25519 HostKey enabled in your sshd_config file but for some reason, no host key was generated for it.
Since openssh-6.4 you can run the ssh-keygen command to generate any missing host keys:
$ ssh-keygen -A ssh-keygen: generating new host keys: ED25519
Usually, my first step after setting up a new Ubuntu guest is to enable console access in order gain shell access on the newly created VM.
Step 1 – Activate the serial console in the guest
Change the GRUB_CMDLINE_LINUX_DEFAULT to:
Don’t forget to update Grub
Step 2 – Create the serial console in the guest
cp /etc/init/tty1.conf /etc/init/ttyS0.conf nano /etc/init/ttyS0.conf
Edit ttyS0.conf and replace the tty1 with ttyS0 in the last line so it will read something like “exec /sbin/getty -8 38400 ttyS0”.
Reboot the VM.
Step 3 – Log in from the host
virsh console myvm
This is it! You just gained console access to your VM.
Tip: To exit the console, hit CTRL-]. It doesn’t matter where the ] is located on your keyboard, you have to press the key below the <BACKSPACE> key and on the left side of the <ENTER> key.
Here’s a quick one. The route command won’t show you the full routing table in Mac OS X. You have to use the netstat command:
This will print the numeric view. If you prefer host names, omit the n parameter: