Serverdienste zu hosten, die vorher auf dem normalen Desktop liefen, ist ja typischerweise die Hauptaufgabe für einen Heimserver. Bei mir ist der wichtigste Dienst in der Hinsicht RetroShare, denn das Programm ist doch wesentlich weniger praktisch, wenn die Netzwerkmitglieder nur sporadisch online sind. Doch stellt RetroShare sträflicherweise keine Serverversion zur Verfügung - zumindest keine, die funktioniert, die nogui-Version wird derzeit nicht gepflegt. Daher wird in der folgenden Anleitung (die auf dieser Quelle basiert) RetroShare in xvfb gestartet, einem virtuellen XServer.

Vorbereitung

Ich gehe davon aus, dass Arch installiert wurde und läuft.

Retroshare liegt leider nicht in den Quellen. Damit die Kompilierung durchläuft, muss genug Swap vorhanden sein, die 256 MB Ram reichen nicht aus. Bei der Installation wurde die Swappartition nicht eingebunden. Das kann man nachholen mit einem

swapon /dev/sda2

Um das dauerhaft zu machen, muss diese Zeile in die /etc/fstab eingetragen werden:

/dev/sda2 none swap 0 0

Kompilieren

Die Kompilierung sollte problemlos nach der Anleitung ablaufen:

Die benötigten Pakete installieren:

pacman -S make qconf polarssl libupnp libgpg-error gpgme gcc libgnome-keyring libxss svn

Quellcode holen und kompilieren:

cd ~ svn co svn://svn.code.sf.net/p/retroshare/code/trunk retroshare cd ~/retroshare/libbitdht/src && qmake && make clean && make cd ~/retroshare/openpgpsdk/src && qmake && make clean && make cd ~/retroshare/libretroshare/src && qmake && make clean && make cd ~/retroshare/retroshare-gui/src && qmake && make clean && make

Wenn RetroShare einfach nur umziehen soll, kann man jetzt ~/.retroshare und ~/.gnupg auf den Pogo kopieren. Vom Client aus mit sftp:

sftp root@IP_VOM_POGO mkdir .retroshare mkdir .gnupg put -r .retroshare put -r .gnupg

X starten

Nun muss noch X und der VNC-Server gestartet werden. Zuerst die nötigen Pakete installieren, statt icewm genügt natürlich auch jeder andere kleine Fenstermanager:

pacman -S xorg-server-xvfb icewm x11vnc xterm

Dann muss X und der VNC-Server gestartet werden, ich habe mir dafür ein Skript startvncX.sh angelegt:

#!/bin/sh /usr/bin/Xvfb :1 -extension GLX -extension RANDR -fp /usr/share/fonts/misc -screen 0 1024x768x16 & export DISPLAY=:1 /usr/bin/icewm-session & /usr/bin/x11vnc -display :1 -bg -many -nopw -xkb -forever -passwd PASSWORD &

Per VNC verbinden

Jetzt läuft X im Hintergrund. Von dem Desktoprechner aus kann ein VNC-Client sich verbinden und den XServer anzeigen. Das einzige Programm, welches das bei mir hinbekommen hat, ist Reminna und sollte in den Quellen liegen.

Auf dem Server sollte nun noch ein passender Nutzer angelegt werden, damit RetroShare nicht als root läuft:

useradd -m retroshare passwd retroshare cp -R ~./retroshare /home/retroshare/ cp -R ~./gnupg/home/retroshare/

Daraufhin kann RetroShare gestartet und im Hintergrund laufen gelassen werden:

su retroshare ~/retroshare/retroshare-gui/src/RetroShare

Ich werde beobachten, ob es wirklich nötig ist, das Programm täglich neuzustarten damit es den Speicher nicht zumüllt.