Schlagwort-Archive: SMB

Eigenes Mediacenter mit XBMC

Mediacenter mit XBMC
Mediacenter mit XBMC

Frisch zu Weihnachtszeit Anfang Dezember, habe ich mir mal ein kleines Mediacenter gegönnt. Nach nun mehreren erfolgreichen Abenden der Nutzung nun einen kleinen Blogartikel darüber.

Aber erst etwas Theorie meinerseits. Ich wollte für das Mediacenter auf der einen Seite nicht viel Geld ausgeben, denoch auf Standardkomponenten setzen die nicht viel Strom verbrauchen. Dolby oder ähnliches sind für mich nicht von belang. Letztlich habe ich mich für folgenden Komponenten entschieden die ich bei einem großen Onlinecomputerhandel erworben habe:

  • Intel D2550DC2 Mainboard mit aufgelöteten Atom D2550
  • SO-DIMM 2 GB DDR3-1333
  • Antec ISK 300-150 Mini ITX
  • GeForce GT 610 PCI pasiv (dazu später mehr)

Eine alte aber noch gute 2,5″ Festplatte hatte ich noch zur Hand, so das ich hier nichts mehr einkaufen musste. Viel Speicher muss die Platte bei mir nicht haben, da sich das Mediacenter die Medien vom Homeserver holt. Die entsprechenden Ordner sind per SMB freigegeben. Insgesamt hat mich der Einkauf (ohne Festplatte) knapp 215 Euro gekostet.

An dieser Stelle muss ich nun kurz vorgreifen warum ich zusätzlich zu der mit auf dem Atom eingebaute Grafikkarte (eine PowerVR Grafikkarte) eine nVidia Karte eingebaut habe.
Die schon eingebaute Karte des Atom D2550 wird vom Linuxkernel 3.6 aktuell nicht unterstützt. Aus diesem Grund sollten Linux Nutzer die aktuelle Atom Version erstmal meiden, da die Treiber für PowerVR Grafikkarten noch nicht stable sind.

Hardware

PCI Slot mit wenig Luft
PCI Slot mit wenig Luft

Bei dem Zusammenbau ist selber nicht viel zu beachten. Das Gehäuse selber kenne ich noch aus meinem ersten Homeserver. In der neuen Revision ist das Netzteil nun geschlossen und aktiv gekühlt.
Blöderweise lag bei dem Mainboard der Anschluss für den Gehäuselüfter so weit weg, das das Kabel zu kurz war. Aus diesem Grund musste ich mir erstmal eine Verlängerung zusammenlöten damit der Stecker passt.
Die Grafikkarte mit ihrem passiven Kühlkörper ist etwas wuchtig, da der Kühlkörper auch auf der anderen Seite

Grafikkarte ist gut durchlüftet
Grafikkarte ist gut durchlüftet

noch ausgebaut ist. Erst nach dem umlegen von ein paar Kabeln passte die Grafikkarte zufriedenstellend. Hier ist zu beachten, dass nur Grafikkarten mit LowProfile-Blende passen. Von der Hitzeentwicklung her ist die Karte in Ordnung. Sie wird zwar warm aber nicht heiss.

Software

Als Betriebssystem ist ein minimales Arch Linux installiert. Zusätzlich werden über den Befehl
pacman -S xorg-server xorg-xinit xorg-utils xbmc
die nötigen Pakete für XBMC installiert. Damit XBMC automatisch beim Hochfahren mitstartet müssen folgenden Befehle ausgeführt werden:
systemctl enable xbmc
systemctl enable graphical.target

Anfangs hatte ich Probleme dem richtigen Sound. Eventuell müssen Sie hier mit
pacman -S alsa-utils
alsamixer

erst noch die Lautstärke von Hand hochdrehen.

Für die Grafikkarte verwende ich die properitären Grafkikkartentreiber. Diese installieren Sie mit
pacman -S nvidia libvdpau
Vergessen Sie hier nicht die VDPAU Bibliothek zu installieren, wie oben beschrieben, und das XBMC diese auch nutzt (unter Einstellungen > Wiedergabe > Video), ansonsten werden 1080p Videos nur als Standbildkino ablaufen.

Leider habe ich das Beenden Menü zum Herunterfahren etc. noch nicht zum laufen bekommen. Ausschalten lässt sich der PC aber normal über den Powerbutton, der zu einem ordentlichen shutdown führt. Bei dem Menü führt jeder Befehl zu einem normalen Neustart des X-Server und XBMC selbst.

Interessante Links zum Thema

Computer / Laptops mit Server synchron halten

Man kennt das Problem wenn man mehrere Rechner hat. „Hier fehlt eine Datei die ich auf dem Laptop hatte.“ „Die Datei war dann doch woanders.“ Sowas ist auf dauer zeitaufwendig und zerrt an den Nerven die Dateien zu suchen. Besser ist wenn alle Daten auf einem Homeserver liegen und man die Rechner so aktuell halten kann. Folgendes lässt sich mit rsync bewerkstelligen.

Auf dem Server

Zuerst einmal müssen Sie dafür Sorgen das der rsync Daemon automatisch beim booten mitstartet. Die Einstellung nehmen Sie in YaST in Systemdienste (Runlevel) vor. Stellen Sie im Expertenmodus den Dienst rsyncd so ein das er bei Runlevel 3 und 5 mitstartet. Die Einstellungen übernehmen Sie nun.

Öffnen Sie nun eine Konsole und verschaffen Sie sich mittels su Rootrechte. Mit dem Befehl vi /etc/rsyncd.conf können Sie die Konfigurationsdatei von rsyncd öffnen. Hier tragen Sie nun folgendes ein bzw. ändern die Einstellungen:


gid = users
read only = true
use chroot = true
transfer logging = true
log format = %h %o %f %l %b
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
hosts allow =
slp refresh = 300
use slp = false

[homefreigabe]
path = /home/detlev/
comment = syncordner
auth users = detlev
secrets file = /etc/rsyncd.secrets
read only = false
uid= 1000

(Sie müssen die Taste i drücken um in den Einfügemodus zu gelangen)

detlev

ersetzen Sie durch den Benutzer der die Daten später besitzen soll. Bei

path

muss der Ordner stehen der die Daten später aufheben soll. Bei

uid

muss die ID des Benutzers detlev eingegeben werden. Diese können Sie zum Beispiel in YaST nachschauen. Speichern Sie mit dem Befehl Esc gefolgt von :wq

Nun öffnen Sie mit vi /etc/rsyncd.secrets und geben Sie dort den Benutzer mittles seinem SMB-Passworts ein. In diesem Falle:

detlev:seinpasswort

Dies können Sie nun auch speichern. Sollte detlev noch kein SMB-Passwort besitzen können Sie dies mit dem Befehl smbpasswd erstellen.

Nun starten Sie mittels rcrsyncd restart den Dienst neu. Dieser übernimmt nun auch die Einstellungen.

Bitte beachten Sie das sie in der SuSEFirewall den Dienst noch freigeben müssen. Ansonsten kann dieser nicht nach außen kommunizieren.

Auf dem PC

Auf dem PC erstellen Sie mit einem Editor Ihrer wahl folgendes Scripst:

Zum Sichern

#!/bin/bash
rsync -auv --delete --password-file=rsync.pwd --exclude=/.* --exclude=Videos/* ~/ detlev@192.168.1.42::homefreigabe
sleep 2

Speichern Sie dies unter backup.sh

Zum Zurückspielen

#!/bin/bash
rsync -auv --delete --password-file=rsync.pwd --exclude=/.* --exclude=Videos/* detlev@192.168.1.42::homefreigabe ~/
sleep 2

Speichern Sie dies unter aktualiseren.sh

Die IP durch die des Servers erstetzen, sowie natürlich den Benutzernamen und den Pfad.

In den beiden Beispielen werden alle versteckten Dateien und Ordner ignoriert sowie der Ordner Videos. Nachdem rsync fertig ist bleibt das Script noch 2 Sekunden stehen. Wird es nämlich in einem Fenster aufgerufen so lassen sich die Ausgaben am Ende nicht mehr sehen, da es zu schnell schließt.

Nun im gleichen Ordner eine Datei

rsync.pwd

erstellen und das SMB-Passwort eintragen. In diesem Falle

seinpasswort

Die Datei abspeichern und nur für den eigenen Benuter lesbar und schreibbar machen. Ansonsten verweigert rsyncd die Arbeit.
Sinnvoll ist es die Datein im Ordner ~/bin abzulegen. Nun können Sie die ersten Synchronisation mittels ./backup.sh durchführen. So werden die Daten auf den Server geladen. Andere Dateien von anderen Rechnern MÜSSEN!!! manuell in das Verzeichnis gelegt werden. rsync würde Sie sonst löschen. Die beiden Scripte können so übernommen einfach auf die anderen Rechner kopiert werden. Die Passwortdatei erstellen Sie einfach auf alle anderen Rechner.

Sinnvoll ist es beim hochfahren Dateien zurückzuspielen und beim herunterfahren sichern. Der erste Upload und der erste Download müssen vollständig sein. Ansonsten überschreibt rsync andernfalls noch Daten die eigentlich gesichert werden sollten.

Icons zu den Scripten

In KDE habe ich mir in die Kontrollleiste zwei Verknüpfungen angelegt. So kann ich schnell meine Daten sichern. Hier besteht nur das Risiko das man nicht ausversehen das falsche Icon betätigt.