IPv6 Virtualization Consideration

When I’m working with KVM or XEN virtualization software I use “bridge-utils“, 802.1q and also IPv6 very often. When I direct some vlan-based collision domain into a bridge but also of course to my virtual machines I use the following network configuration (Debian):

  • iface br0 inet manual
  • iface br0 inet6 manual

while br0 is the bridge’s interface name.

I use ‘manual’ as a parameter because I want my virtualization server not to be adressable in the corresponding network by not having an IP address. For IPv4 this works just fine. The interface just doesn’t get an address. It’s completely different with IPv6, because no matter what parameter you choose between ‘manual’, ‘auto’ or ‘dhcp’, br0 will always get a link-local address. By having such an address it automatically is reachable within this very vlan / collision domain. The guest host can again very easily find out this link-local address by doing

ff02::1 -i <<interface name>>

Well sometimes an IP at the interface is fine, lot of other times it’s not. It might be a security issue because when you virtualize guests that should somehow be isolated.
Instead you can be adressed via IP. If a personal firewall is missing and you ‘accidentally’ have some service running, it might pose a risk.
Looking at it from the other side: Why would you want an IP, when you are 100% sure that you won’t need one?

So what do I need to do?
Unfortunately at debian you have to set a kernel parameter for this interface manually (consider pre-up or post-up):

sysctl -w net.ipv6.conf.br0.autoconf=0

Maybe after that flush all IP addresses from that interface:

ip addr flush dev br0

Lenovo T450s Ubuntu 15.04

The Lenovo Thinkpad T450s is quite new. Together with the even newer Ubuntu 15.04 (in my case Xubuntu) it ought to run quite well. I can confirm that it’s “quite” well, but not really well. Please let me explain. Just to be clear: I got my device with Windows preinstalled and installed Ubuntu manually via USB flash drive.

What’s good:

  1. Touchpad and Trackpoint running out of the box really nice.
  2. The display driver seems to be working good. The Display Manager often only shows in fullscreen grey, up until I klick with the mouse. Then everything is fine and I can login. Sometimes when the Login Manager loads, the screen fades away shortly but then again reappears. This is a bit annoying but doesn’t really disturb.
  3. Wired Ethernet working just fine
  4. The device is really quiet most of the time. Only when I run more CPU hungry applications the vent spins up, but not really too loud as far as I am concerned.
  5. The Keyboard mappings are really nice and work mostly out of the box. Keyboard backlight shortcut, display brightness or volume buttons.

Whats not so good:

  1. Wifi
    First of all I have to say that I installed iwlwifi-7265D-12.ucode in /lib/firmware manually.

    1. My wifi is 5 GHz and 2,4 GHz but the laptop chooses to go with 2,4 GHz which is to my surprise only running at 54 Mbit/s. This is what my laptop shows me and my Benchmarks gives me around ~ 10 Mbis/s. I disabled 2,4 GHz completely at my base station and now it’s running really fast. I benchmarked up to ~ 240 Mbit/s. I have to say that I’m running openwrt bleeding edge trunk (chaos calmer) with ath10k. This does not really promise high data transfer rates on the side of the wifi access point though.
    2. When I’m connected via wifi the menu bar’s symbol for the Network Manager is turning as it was searching or trying to connect. It keeps doing this. I don’t care though.
  2. Display arrangement
    I use the laptop with a docking station and when I have the laptop switched on and then connect to the docking station it gets messed up. I have to logout and login again for the external displays to be detected corretly. So better connect the docking station and then start it all up.
  3. DVI and Display Port using parallely doesn’t seem to be working with the docking station. Two external display via Display Port are just fine. I don’t know if it’s supposed to work, but for me it just doesn’t.
  4. The keyboard sometimes really freaks out. Read more – Ubuntu forums.
  5. Docking station audio output does not work out of the box. I experimented a bit with audio settings but I wasn’t able to use the docking stations stereo jack. It seems to always use the laptop’s.
  6. When I quit using the device I just close the top. This doesn’t seem to be such a good idea because the battery drains quite fast in that state. That’s way better with a Macbook for example.
  7. I have bluetooth switched off. Every time I reboot the laptop it’s on again. Somewhat annoying.

Did not test (yet):

  1. WWAN mobile Internet connection

OpenELEC 2.0 auf Atom ion 330

Hardware

Ich verfüge nun schon seit ein paar Jahren über folgendes Mainboard:

  • Point of View
  • Intel Atom 330 – 1,6 GHz Dual Core
  • Geforce 9400
  • 2 GB RAM
XBMC_Atom_ION_Hardware
XBMC_Atom_ION_Hardware

Vergangenes

Zu Anfang rüstete ich das System mit einem Slim DVD aus und mit einer 2,5″ Festplatte. Mittlerweile habe ich aus Gründen der Hitzeentwicklung die Festplatte in ein externes Gehäuse ausgelagert. Das optische DVD Laufwerk habe ich komplett entfernt (viel zu laut).  Es war immer schon mein Ziel möglichst minimalistische Hardware und Software zu verwenden (XBMC minimal Beitrag). Die Festplatte komplett zu entfernen ist Ziel der folgenden Aktion.

Zwischenzeitlich hatte ich auch einmal ein sogenanntes “diskless” System in Betrieb, mit PXE Boot und einem System dass per NFS  geladen wurde (XBMX Diskless Beitrag). Das stellte sich in meinem besonderen Fall jedoch nicht als sehr praktikabel heraus, da der fileserver damit nur unnötig zusätzlich zu tun hatte und die Netzwerkleitung zusätzlich belastet wurde. Letzteres war in meinem Fall besonders schlecht, da ich leider nur über PowerLAN (aka DLAN) mit einer Nettorate von maximal ca. 5 MB/s verfüge.

OpenELEC ist kürzlich in der Version 2.0 erschienen (XBMC 11.0 Eden). Der Gedanke keine Festplatte mehr einsetzen zu müssen und deswegen auf das klobige und stromhungrige externe Gehäuse zu verzichten erscheint mir mehr äußerst reizvoll.

xbmc_with_hdd
xbmc_with_hdd

Installation

Gesagt getan. 2 USB Sticks zur Hand und keine 10 Minute später ist XBMC auf einem absolut minimalistischen Linux installiert (Anleitung). Während der Installation habe ich mich für eine GUID Partitionstabelle entschieden und dafür den ssh Dienst zu aktivieren. Es ist für mich enorm erfreulich wie unglaublich einfach und schnell solch eine Installation von Statten gehen kann. *Thumbs UP*

xbmc_without_hdd
xbmc_without_hdd

Nach der Installation bootet das System in ziemlich genau 17 Sekunden (nach dem Bootloader bis zum XBMC screen). WOW!
Per ssh kann ich mich entfernt mich dem System verbinden. Das Standard-Passwort ist “openelec“. Wie ich das Passwort ändern kann bleibt mir bislang verborgen. Das Kommandozeilentool “passwd” ist leider nicht vorhanden. Durch die enorme Einfachheit ist es jedoch kaum notwendig sich per ssh überhaupt zu vebinden.

 

 

 

NFS

Mein ganzen Daten liegen auf einem Linux System, dass NFS4 zur Freigabe Selbiger benutzt. NFS ist spürbar performanter als Samba (SMB). Das Hinzufügen der Freigaben über die Oberfläche funktionierte leider nicht. Zwar entdeckte das OpenELEC selbständig meinen NFS Server im Netzwerk und auch seine Freigabe, allerdings waren Diese einfach leer.

Statt dessen kann man unter /storage/.config/ eine Datei namens autostart.sh anlegen mit folgendem Inhalt:

#!/bin/bash
sleep 30
mount -t nfs 192.168.1.1:/export/filme /storage/movies

Ein Neustart weiter und der Zugriff auf die Filme war möglich, indem ich im Interface den Pfad

/storage/movies

hinzugefügte.

Audio

Hier musste ich fast nichts einstellen. Am HDMI Ausgang des Mainboards ist der AV-Receiver angeschlossen, der wiederum das Video Signal weiter per HDMI zum Fernseher schickt. Es kam auch von Anfang an Ton, allerdings musste ich erst noch unter “System – Audio Output” umstellen auf:

  • HDMI
  • 5.1
  • Dolby Digital (AC3) capable receiver
  • DTS capable receiver

Im Anschluss wurden Videos mit Dolby Digital und DTS einwandfrei wiedergegeben.

Hardware Info

Unter “System Info” wurde mir im Gegensatz zu meinem alten auf Ubuntu 12.04 basierten System auch die korrekte GPU Temperatur angezeigt. Das war speziell in meinem Fall sehr hilfreich, da mein System dazu neigte durch wegen eines Lüfterumbau zu überhitzen. Bei einer GPU Temperatur von 68°C während der Wiedergabe eines hochauflösenden H.264 kodierten Video läuft mein System stabil und ohne Ruckler.

Addons

Zuletzt hatte ich OpenELEC 1.9.9 ausprobiert. Darin war es nicht möglich Addons zu installieren. Nach einem Klick auf “Get more” kam einfach eine leere Liste. Addons funktionieren nun in der Version 2.0 einwandfrei.

Fazit

XBMC living room experience
XBMC living room experience

Es gibt für mich keinerlei Gründe weiterhin eine (mechanische) Festplatte für den Betrieb von XBMC zu nutzen. Ebenso ein aufgeblasenes Ubuntu steht deutlich im Schatten dieses absolut schlanken OpenELEC, was bereits in einer speziell angepassten Variante für die ION Palttform zur Verfügung steht.

Ich bin absolut begeistert und werde OpenELEC jedem weiterempfehlen.

vnstat calculates wrong, or: confusion of prefixes

This is what vnstat gives me as a daily usage: 877.13 MiB
This is what vnstat gives me as the avg. rate: 83.17 kbit/s
This is what the correct avg. rate actually is: 85.16 kbit/s

What vnstat actually does wrong is powering by 1024 in order to transform bit into kilobit.
I use a point as a decimal mark by the way… and I assume that the amount of transferred bits per day is given correctly.

This is how vnstat calculates:

877.13 MiB * 8 = 7,017.04 Mibit
7,017.04 Mibit * 1024 = 7,185,448.96 Kibit (binary prefix)
7,185,448.96 Kibit * 1024 = 7,357,899,735.04 bit/d
7,357,899,735.04 bit / 24 = 306,579,155.63 bit/h
306,579,155.63 bit/h / 60 = 5,109,652.59 bit/m
5,109,652.59 bit/m / 60 = 85,160.88 bit/s
85,160.88 bit/s / 1024 = 83,17 kbit/s

This is how it should be done:

877.13 MiB * 8 = 7,017.04 Mibit
7,017.04 Mibit * 1024 = 7,185,448.96 Kibit (binary prefix)
7,185,448.96 Kibit * 1024 = 7,357,899,735.04 bit/d
7,357,899,735.04 bit / 24 = 306,579,155.63 bit/h
306,579,155.63 bit/h / 60 = 5,109,652.59 bit/m
5,109,652.59 bit/m / 60 = 85,160.88 bit/s
85,160.88 / 1000 = 85,16 kbit/s

I contacted the author of vnstat (Toivola) on September 21st 2012 but he did not act on my hint, so I decided to publish my finding.

Openwrt Backfire Aiccu sixxs disconnect -> reconnect

Ich benutze nun schon seit über einem Jahr OpenWRT Backfire (10.03.1, r29592) auf einem wndr3700. Leider ist immer noch ein Bug im System:

https://dev.openwrt.org/ticket/10418

Im Netz findet man relativ wenig dazu. Ich habe einen Workaround  für das folgende Problem:

  1. DSL-Leitung wird unterbrochen (z.B. 24h Disconnect)
  2. DSL-Leitung wird wieder aufgebaut
  3. Aiccu Tunnel funktioniert nicht mehr

Leider ist dadurch die IPv6 Konnektivität mehr als gestört, speziell, wenn es mal häufiger vorkommt, dass die IPv4 Verbindung verloren geht. Wenn man das folgende Skript beim hochfahren des WRT automatisch starten lässt, prüft es alle 2 Minuten, ob IPv6 Konnektivität vorhanden ist. Falls nicht, startet es Aiccu neu. Viel Spaß damit.

#!/bin/ash
sleep 120
while [ true ]; do
ping6 -c1 2a02:2e0:3fe:100::7 2>/dev/null && echo still up || /etc/init.d/aiccu restart
sleep 120
done
exit 0

Debian als performanter Fileserver für OS X Clients

Lange Zeit habe ich auf Samba als Fileserver für Mac und Linux Clients gesetzt.
Zwischen Linux und Linux ist NFS allerdings besser.
NFS für OS X hab ich leider nie richtig zum laufen bekommen.

Zusammen mit Debian Squeeze testing und der Anleitung (siehe Unten) hab ich es aber jetzt hinbekommen einen netatalk Fileserver unter Linux aufzusetzen, der bislang sehr gut funktioniert.
Als Bonus sind Time Machine Sicherung auf dem Server kinderleicht möglich. Außerdem mit Hilfe von avahi wird der Server auch automatisch bekannt gegeben. Der Client denkt dabei es handele sich bei dem Server um einen XServe.
Im Vergleich schaffe ich lesend auf dem gleichen Server und den gleichen Platten mit Samba ca. 30-35 MB/s. Bei netatalk sind es maximal 70-80 MB/s über Gigabit Ethernet.

Hoffentlich auf Nimmerwiedersehen Samba.

-> Anleitung <-
-> Probleme <-
-> Zusätzliche Infos (englisch)<-

Serverdaten:
– Debian Squeeze testing frozen Code Aug 2010
– AMD X4 9950 Black Edition 4 x 2,66 GHz
– 3 x 1 TB als Software RAID5
– LVM2 auf dem RAID5
– XEN 4.0rc5 über apt
– Fileserver PV domU Debian Squeeze
– Systemplatten der domUs nicht auf RAID, sondern auf eigener Platte auch LVM2.

Linux dynamisches Routing – Teil 1/x

Quagga als Fork von Zebra ist neben VYATTA meines Wissens das einzige Tool auf Unix/Linux Basis für den Betrieb von Routern mit dynamischen Tabellen. Hier möchte ich meine Teststellung beschreiben, die mit Hilfe eines einzigen Computers ein kleines Netz abbildet, das zunächst aus 3 (virtuellen) Computer und 6 Verschiedenen Subnetzen besteht. Möglich wird das ganze über die Virtualisierungslösung Xen. Umsetzbar wäre das auch mit Anderen Produkten wie VMWare etc., die hier allerdings nicht Bestandteil sind. Mit einer Virtualisierungslösung ist man in der Lage auf engstem Raum und mit geringem Hardwareaufwand komplexe Situationen nachzustellen oder vorzubereiten.
Dieser erste Teil beschreibt den Grundaufbau eines Netzwerks erstmal komplett ohne Routing, weder statisch noch dynamisch. Die Router sehen dabei immer nur den direkten Nachbarn und das eigene Nutznetz.

Ziel dieser mehrteiligen Doku ist es ein Netz mit dynamischem Routing aufzubauen, in dem es immer genau 2 mögliche Wege gibt. Die Router sollen dabei mit Hilfe der OSPF-Technik den “besten” Weg wählen und auch beim Ausfall einer Teilstrecke die Redundanz ausnutzen, so dass beim Ausfall maximal einer Leitung trotzdem immer jedes Ziel erreichbar bleibt.

Umgebung:

  • 1 x Ubuntu 8.04.3 Server mit Xen 3.2 (physikalsicher Rechner) mit 1 Netzwerkkarte (Host: xen) mit 8 GB RAM
  • 3 x virtuelle Ubuntu Server mit jeweils 3 Netzwerkkarten(Hosts: Router01, Router02, Router03)
  • 3 x lokale Netzwerke mit der Netzmaske 255.255.255.0 bzw. /24. Das sind die Nutznetze( Netze: customer01, customer02, customer03), maximale Hosts: 254, maximale Netze: 65.536
  • 3 x lokale Netzwerke mit der Netzmaske 255.255.255.240 bzw. /28 zur Verbindung der Router. Die Netze dienen als Zwischenstück, zwischen den Routern. (Netze: internet01, internet02, internet03), maximale Hosts: 14, maximale Netze: 1.048.576

Grafische Darstellung des Testnetzwerks:

dynamic routing subnets
dynamic routing subnets

Die Router laufen als virtuelle Rechner unter Xen mit den folgenden Konfigurationsdateien.
Xen router01.cfg:

kernel      = ‘/boot/vmlinuz-2.6.24-23-xen’
testkernel      = ‘/boot/vmlinuz-2.6.24-23-xen’
ramdisk     = ‘/boot/initrd.img-2.6.24-23-xen’
memory      = ‘512’
root        = ‘/dev/sda1 ro’
disk        = [‘phy:/dev/xenon/router01-disk,sda1,w’,]
name        = ‘router01’
vif=[‘mac=00:16:3E:D4:AA:FF,bridge=eth0’, ‘mac=00:11:33:D4:FF:61,bridge=br111’,
‘mac=00:11:33:D4:FF:21,bridge=br10’,
‘mac=00:11:33:D4:FF:11,bridge=br12’]
on_poweroff = ‘destroy’
on_reboot   = ‘restart’
on_crash    = ‘restart’

Xen router02.cfg

kernel      = ‘/boot/vmlinuz-2.6.24-23-xen’
ramdisk     = ‘/boot/initrd.img-2.6.24-23-xen’

memory      = ‘512’
root        = ‘/dev/sda1 ro’

disk        = [‘phy:/dev/xenon/router02-disk,sda1,w’,]

name        = ‘router02’
vif    = [‘mac=00:06:3E:D4:AA:FF,bridge=br112’,
‘mac=00:01:33:D4:FF:61,bridge=br10’,

‘mac=00:01:33:D4:FF:21,bridge=br11’ ]
on_poweroff = ‘destroy’
on_reboot   = ‘restart’
on_crash    = ‘restart’

Xen router03.cfg

kernel      = ‘/boot/vmlinuz-2.6.24-23-xen’
ramdisk     = ‘/boot/initrd.img-2.6.24-23-xen’
memory      = ‘512’
root        = ‘/dev/sda1 ro’
disk        = [‘phy:/dev/xenon/router03-disk,sda1,w’,]
name        = ‘router03’
vif    = [‘mac=02:16:3E:D4:AA:FF,bridge=br113’,
‘mac=02:11:33:D4:FF:61,bridge=br12’,
‘mac=02:11:33:D4:FF:21,bridge=br11’ ]
on_poweroff = ‘destroy’
on_reboot   = ‘restart’
on_crash    = ‘restart’

Um die Systeme in Xen netzwerktechnisch zu verbinden nutze ich bridges (Brücken). Um die Nutznetze (customer01 …) einzurichten nutze ich ebenfalls bridges. Mit dem Befehl brctl habe ich diese zuvor eingerichtet. Hier die Liste der bridges und die Netze mit denen Sie verbunden sind. Die virtuellen Schnittstellen vifX.Y legt xen dynamisch an, wobei X eine fotlaufende Nummer der virtuellen Maschinen ist und Y die statische Nummer für die eth-Nummer innerhalb der virtuellen Maschine.
br10 — vif40.2 (router01, eth2), vif 41.1 (router01, eth1) — 192.168.1.0/28
br11 — vif41.2 (router02, eth2) vif42.2 (router03, eth2) — 192.168.2.0/28
br12 — vif40.3 (router01, eth3), 42.1 (router03, eth1) — 192.168.3.0/28
br111 — vif40.1 (router01, eth1) — 10.10.11.0/24
br112 — vif41.0 (router02, eth0) — 10.10.12.0/24
br113 — vif42.0 (router03, eth0) — 10.10.13.0/24

Mit diesen Einstellungen haben wir 6  Subnetze aufgebaut und 3 (virtuelle) Rechner. Zum jetzigen Zeitpuntk läuft noch kein Routing zwischen den Systemen, d.h. es können nur jene Rechner untereinander kommunizieren, die sich im gleichen Subnetz befinden.

XBMC minimal ion230 auf USB Stick howto

Nach dem ich hier meine Erfahrungen mit XBMC unter Ubunut 9.04 auf einem Point Of View 230 Kund getan habe, möchte ich nun eine kurze Anleitung schreiben zu folgendem Setup:

  • Point of View Ion230 (Atom 1,6 GHz mit HT)
  • Nvidia Geforce 9400M
  • 2 GB RAM DDR2 800 MHz SO-DIMMs
  • USB Stick 2 GB
  • SATA 5 1/4″ DVD-R
  • Ubuntu 9.04 Netzwerk PXE Install
  • externer Dolby Digital Decoder (optische Übertragung)
  • Zugriff auf die Inhalte (Musik , Filme, etc) per NFS auf einem linux fileserver

Ich habe keine Festplatte mehr eingebaut, da mir selbst eine 2,5″ Platte noch zu viel Strom verbraucht, zu warm wird und zu laut ist. Ein USB Stick reicht völlig aus, da keine großen Datenmengen bewegt werden. 2 GB sind allerdings etwas knapp bemessen. Mit 4 GB wär man auf der sicheren Seite.
Befehle sind kursiv.

  1. INSTALLATION UBUNTU
    Installation Ubuntu minimal
    Markiert nur “ssh Server”
  2. sudo aptitude install xorg gnome-core gdm firefox synaptic  gnome-app-install
  3. sudo aptitude clean
  4. reboot
  5. DIGITAL AUDIO OUT
    Anmelden mit Gnome gui
  6. Oben Rechts auf den Lautsprecher und auf “Lautstärkeregler” (alsamixer)
  7. Auf “Einstellungen – sichtbare Tonspuren – Schalter – IEC958” aktivieren
  8. “Schließen”
  9. Im Mixer Registerkarte “Schalter”
  10. Haken setzen bei “IEC958
    Hierdurch wird der digitale Tonausgang aktiviert, der den Ton zum externen Decoder weiterreicht. Ob der coax-Anschluss auch aktiviert weiß ich nicht. Ich benutze den optischen Ausgang.
  11. XBMC INSTALLIEREN
    Hierzu gibt es schon eine gute Anleitung.
    In der Anleitung “Autostart (optional)” kann ich nur empfehlen einzurichten!
  12. Um per XBMC eine CD / DVD auswerfen zu können in der Datei “/etc/sysctl.conf” am Ende folgendes einfügen: “dev.cdrom.lock=0
  13. In den Einstellungen unter “Video – Rendering Method” auf VDPAU stellen
  14. Im Bios des Mainboard dem Onboard Grafikchip fest 512 MB zuteilen.
  15. NFS SHARES VERBINDEN
  16. aptitude install nfs-common
    In der Datei /etc/fstab die Einträge der eigenen Umgebung entsprechend anlegen. Hier sind Meine:
    fileserver:/mnt/lvm-fileserver/audio/   /mnt/audio nfs defaults 0 0
    fileserver:/mnt/lvm-fileserver/video    /mnt/video nfs defaults 0 0
  17. Nun kann man per “mount -a” die Freigaben einbinden.
  18. NVIDIA TREIBER INSTALLIEREN
    Per “uname -r” prüfen, welchen Kernel man installiert hat (hier: generic 2.6.28-16)
  19. apt-get install make build-essential linux-headers-2.6.28-16-generic libc6-i386
  20. cd / && mkdir download && cd download
  21. wget http://de.download.nvidia.com/XFree86/Linux-x86/185.18.36/NVIDIA-Linux-x86-185.18.36-pkg1.run
  22. chmod +x NVIDIA-Linux-x86-185.18.36-pkg1.run
  23. /etc/init.d/gdm stop
  24. ./NVIDIA-Linux-x86-185.18.36-pkg1.run
  25. precompiled? -> no -> ok ok -> finish
  26. /etc/init.d/gdm start
  27. sudo aptitude clean

Am Ende kann man neustarten. und wenn man unter Punkt 11 XBMC als Standard definiert hat, so gelangt man automatisch nach dem Hochfahren ins XBMC.

Zwischendurch hilft es mit “aptitude clean” etwas Speicherplatz auf dem Stick freizugeben. Am Ende hatte ich etwa 1,77 GB belegt, es sind noch ca. 50 MB frei.

Netzwerkfähige Tastatur und Maus mit synergy

Es gibt schon einige Anleitungen, wie man mit Synergy+ mehrere Computer mit eigenen Monitoren über eine Maus und Tastatur steuern kann. Ich möchte hier dennoch versuchen möglichst anschaulich zu erläutern, wie ich einen Mac (macpro) und einen Ubuntu PC (tuxpc) miteinander “verbinden” konnte.

Bei Synergy+ muss man für sich selbst definieren, welcher Computer den Client bzw. Server macht. Es gilt: Der Rechner mit Tastatur und Maus angeschlossen ist der Server. In meinem Fall:

2 Computer, 2 Bildschirme, 1 Taststur, 1 Maus, 1 Lautsprecherpaar

Bildschirm links hängt an tuxpc, Bildschirm rechts hängt am macpro. Tastatur und Maus sind am Mac angeschlossen. Der Mac soll also der Server sein. Das zur Planung, nun geht es an die Softwareinstallation.

Unter Ubuntu 9.04 ist die Installation einfach:

Das .deb Paket herunterladen und installieren per

dpkg-i <<Paketname>>

Für den Mac gibt es ein vorkompiliertes Paket (.dmg) zur grafischen Installation.

Hiernach sind die beiden synergy-Befehle synergyc und synergys im Terminal verfügbar. Synergyc ist der Client und Synergys ist der daemon/server.

Jetzt brauchen wir noch eine Konfigurationsdatei, die auf Client und Server identisch sein muss. Hier meine Beispieldatei, die sich nach meiner Umgebung (s.o.) richtet.

section: screens

macpro:

tuxpc:

end

section: links

macpro:

left = tuxpc

tuxpc:

right = macpro

end

Ich habe die Config auf beiden Rechner in etc liegen: /etc/synergy.conf

Nun muss man nur noch auf dem Server (Mac) den Dienst starten.

synergys -f -c /etc/synergy.conf -n macpro &

Jetzt verbindet man den Client auch per Kommandozeile per:

synergyc -f -n tuxpc macpro

Der Parameter -f bewirkt, dass das Programm nicht als Hintergrundprozess startet. Das ist vor allen Dingen dann hilfreich, wenn man noch Probleme beseitigen will. Dann sieht man nämlich wenigstens Fehlermeldungen. -n sorgt dafür, dass synergy nicht den hostnamen aus dem System ausliest, sondern den im Programmaufruf angegebenen verwendet.

Wenn beide Programme miteinander erfolgreich kommunizieren, steht die Funktion. Jetzt sind beide Bildschirme quasi miteinander gekoppelt. Fährt man mit dem Mauszeiger über den Bildschirmrand hinaus, so landet der Cursor auf dem Desktop des anderen Computers. Die Tastatur schickt natürlich immer die Eingaben an den Computer, wo der Mauscursor sich gerade befindet.

Mein nächstes Ziel wird sein die Audioausgabe des Ubuntu PC an den Mac zu schicken. Ich häbe nämlich nur ein Lautsprecherpaar auf dem Schreibtisch stehen und plane dies auch nicht zu ändern. So könnte ich dann den Ton von beiden Systemen auf einem Lautsprecher ausgeben. Wenn ich das geschafft habe, wird es dazu auch eine Anleitung geben.

Nachtrag vom 19.10.2009

Zunächst habe ich meine Anleitunf für Synergy2 bzw. Synergy geschrieben. Als ich aber Probleme mit Umlauten hatte stieß ich auf Synergy+, welches scheinbar noch aktiv gepflegt wird. Die letzte Version von Synergy2 ist von 2006.

XBMC unter Linux mit Atom ion230

Das XBMC ist jetzt schon seit etwa 5 Jahren mein treuer Begleiter. Zunächst auf einer XBox mit der DVD Remote, dann auf verschiedenen x86-Systemen unter Windows XP. Des Öfteren bin ich daran gescheitert XBMC ordentlich unter Linux laufen zu lassen, was nicht zuletzt an schlechter Treiber-Unterstützung lag.

Jetzt habe ich ein kleines Experiment gewagt in dem ich meine Hardware gewechselt habe von:

alt:

  • Asrock ConroeXFire eSata II
  • Core2Duo E6400 mit 2.13 GHz
  • 2 GB RAM DDR2 800 MHz
  • 3,5″ SATA 160 GB
  • PATA 5 1/4″ DVD-ROM
  • Windows XP Pro German SP3
  • Creative PCI X-Fi Music

neu:

  • Point of View Ion230 (Atom 1,6 GHz)
  • Nvidia Geforce 9400M
  • 512 MB 2 GB RAM DDR2 800 MHz SO-DIMMs
  • 2,5″ SATA 80 GB
  • SATA 5 1/4″ DVD-R
  • Ubuntu 9.04

Die Leistung des “neuen” Systems ist geringer, der Stromverbrauch dafür aber auch. Liege ich beim alten System bei etwa 90-150W, komme ich beim Atom-System nur auf etwa 20-40 W. Ein Unterschied, der sich hoffentlich im Laufe der Jahre bezahlt macht.

Jedoch unterscheidet sich nicht nur die Hardware, sondern vor allen Dingen die Software, denn auf dem Atom-System läuft Ubuntu 9.04, vorher Windows XP SP3. Um das System möglichst schmal zu halten, habe ich bei der Auswahl über die zu installierenden Komponenten nur den Gnome-Desktop ausgewählt und den ssh-Server.
In der Handhabung gefällt mir das Linux-System auf Anhieb wesentlich besser:

  1. Das System loggt sich automatisch ein. Unter Windows muss ich in der Registry rumfummeln um das zu bewerkstelligen. Shame on Microsoft.
  2. Ubuntu verbindet sich automatisch mit den Netzwerkfreigaben (SMB). Unter Windows hatte ich natürlich auch Freigaben als Laufwerksbuchstaben eingebunden. Ich musste jedoch vor dem Start immer zunächst den Explorer aufrufen und die Netzwerklaufwerke refreshen lassen. Eine Aktion die bei meiner Freundin als Benutzerin noch saurer aufstößt als bei mir.
  3. Unter Ubuntu habe ich statt gnome den XBMC gewählt, d.h. es wird kein überflüssiger Desktop geladen und XBMC startet automatisch, wenn das System hochgefahren ist.
  4. Unter Linux brauche ich keinen Virenscanner. Unter Windows kam von Zeit zu Zeit immer eine Onscreen Meldung, dass der Scanner sich aktualisiert hat. Das war schon ziemlich nervig, besonders beim schauen von Filmen.
  5. Linux unterstützt VDPAU, was den Prozessor deutlich entlastet. Da der Geforce 9400M alle Formate außer MPEG4 unterstützt, macht sich das deutlich bemerkbar. Ohne VDPAU wäre der ATOM zu langsam, speziell bei HD-Inhalten.
  6. Der Standby-Modus unter Linux funktioniert auf Anhieb. Unter Windows hab ich das System entweder Tagelang durchlaufen gehabt, oder habe es über den Schalter am Gehäuse ausgeschaltet.

Ubuntu ließ sich völlig problemlos auf dem ION-Board installieren. Jedes Device wurde sofort erkannt. Ich musste lediglich den digitalen Ausgang aktivieren und die Treiber von der Nvidia Homepage herunterladen und installieren. Das geht mit ein wenig Übung aber auch leicht von der Hand. Die neue Hardware ist wirklich exzellent, besonders weil es auch noch deutlich leiser ist. Sogar der Prozessorkühlkörper hat keinen Lüfter.

Was mir jetzt noch fehlt ist eine gute Lösung für eine Fernbedienung. Ich würde gerne die DVD Remote auch an dem Linux-PC probieren, mir fehlt allerdings noch der Adapter. Wenn das auch funktioniert, dann bin ich der glücklichste Multimedia-Mensch.

— >Nachtrag (15. Okt. 2009)

Zunächst hatte ich noch Schwierigkeiten mit der Widergabe von HD-Videos. Ich stellte fest, dass 512 MB RAM zu wenig sind, zumal die Grafikkarte sich am RAM bedient.
Lösung: 2 GB RAM installiert und im BIOS dem Grafikchip 512 MB fest zugewiesen + Renderer in XBMC auf VDPAU gestellt.

Angeblich funktioniert die Microsoft DVD Remote für die Xbox “out of the box” unter linux mit entsprechendem Adapter. Leider funktioniert das bei mir (noch) nicht.
Außerdem gibt es von Zeit zu Zeit kleine Schwierigkeiten unter linux. Z.B. stürzt XBMC ab oder bei der Widergabe von .ts-Aufnahmen einer dreambox gibt es Bildstörungen.
Nach jedem Neustart des Computers steht die Lautstärke des Master-Reglers auf stumm. Ich muss dann jedes mal manuell über alsamixer die Lautstärke anpassen.
Es taucht von Zeit zu Zeit einfach mal so der Gnome-Cursor in der Mitte des Schirms auf und bleibt dort, unabhängig vom XBMC-Cursor.
Die Serverdienste unter XBMC laufen nicht. In den Netzwerkeinstellungen in XBMC steht die Netzwerkkarte auf deaktiviert und ich kann sie nicht aktivieren dort.  Die per /etc/fstab gemounteten smb-shares bringen den Rechner dazu, dass er nicht komplett herunterfährt. Er bleibt dann an einer Stelle hängen, wo dann steht:

  • CIFS VFS: server not responding
  • CIFS VFS: no response for cmd 50 mid 63.

Die Tastatur steht seltsamerweise falsch ein. Scheinbar hab ich ein amerikanisches Layout, seitdem ich die nvidia-Treiber installiert habe.

So bleibt  folgende Todo-Liste:

  1. DVD Remote (vielleicht mal einen anderen USB-Adapter probieren)
  2. Abstürze (muss ich wohl auf neuere builds warten)
  3. .ts (mpeg2) Aufnahmen starten nicht richtig oder verursachen Bildstörungen (mögliche Spur: XBMC Forum)
  4. Lautstärke Niveau auf 0 nach Neustart (mögliche Spur: arch linux Link, Ubuntu Bugtracker, vielversprechend: mariusb.net Link, noch besser: xbmc.org Forum Link)
  5. störender Cursor in der Bildschirmmitte (Link)
  6. Netzwerkkarte in den Einstellungen XBMC steht auf deaktiviert. -> Fehlfunktion XBMC-Dienste.
  7. Beim Herunterfahren hängen die per /etc/fstab eingebundenen Laufwerke fest.
  8. falsches Tastaturlayout seit Installation der nvidia-Treiber

Das sind so die Fehler oder Probleme die korrigiert werden müssen. Ich werde weiterhin berichten.
Hier
noch eine gute Anleitung, die auch viele Probleme erklärt und Lösungen anbietet.

Lösungen:

  1. fehlt (eine Anleitung fehlt mir vor allen Dingen)
  2. fehlt
  3. Das Abspielen von .ts-Dateien funktioniert jetzt. Es hat sich dabei wohl um einen Ausnahmefehler gehandelt.
  4. Pulseaudio verursachte die Probleme. Mit: “sudo apt-get remove pulseaudio” und danach “sudo alsactl store 0” konnte ich die Audioeinstellungen sichern, nachdem ich zuletzt die Lautstärke eingeschaltet habe. Habe ich versucht die Einstellungen mit dem obigen Befehl alsactl zu speichern, so bekam ich folgende Fehlermeldung, als noch pulseaudio installiert war:
    “E: core-util.c: Home directory /home/<<username>> not ours”
  5. in “/etc/X11/xorg.conf” unter “Device” folgendes Eintragen:
    Option “HWCursor” “False”
  6. fehlt
  7. Scheinbar gibt es hier ein Problem, dass die Shares erst ausgehangen werden, nachdem die Netzwerkverbindung unterbrochen ist (Link). Das kann natürlich nicht funktionieren. Leider habe ich auch mit einem shell-script das per init.d geladen wird keinen Erfolg gehabt. Ich bin deswegen auf NFS-Freigaben umgestiegen, die ich auch in der /etc/fstab eingetragen habe. Hiermit habe ich keinerlei Probleme.
  8. fehlt

Nachtrag 22.10.2009:

Da beim ion230 kein Lüfter auf der CPU ist, muss man auf eine gute Kühlung im Gehäuse achten. Bei einem Mini-ITX Gehäuse ohne Lüfter ist bei mir das System so warm geworden, dass scheinbar die CPU runtergeregelt wurde. Hierbei kam es zu deutlichen Aussetzern / Rucklern bei der Video-Widergabe und im Menü.