Git auf dem Server

Möchte man auf einem Ubuntusystem einen Git Server aufsetzen, so ist dies relativ schnell erledigt. Zuerst muss dafür „git“ mittels:

apt-get install git

installiert werden. Danach wird der passende Nutzer für die Git Repositories angelegt:

adduser git

Nun kann man ein bestehendes Repository zu diesem Server hochladen. Auf dem Server wird in den Kontext des Nutzers „git“ gewechselt und dort ein passender Ordner sowie ein „rohes“ Git Repository angelegt:

su git
mkdir testproject.git
cd testproject.git
git init --bare

Dem lokalen Git Repository wird mittels:

git remote add origin :testproject.git

ein neuer Remote zugewiesen. Sollte bereits ein „remote“ für „origin“ existieren, so wird dieser mit:

git remote rm origin

entfernt. Anschließend kann das lokale Repository an den Server übertragen werden und auf Updates überprüft werden:

git push origin master
git pull origin master

Wenn gewünscht kann man nun noch verhindern das man sich mittels des „git“ Accounts auf dem Server anmelden kann. Dazu muss die Datei „/etc/passwd“ editiert werden. Für den Nutzer „git“ wird die Shell dabei von „/bin/bash“ in „/usr/bin/git-shell“ geändert. Anschließend kann man sich mit dem Account nicht mehr an der Shell anmelden.

Fujitsu Server und die CSS Led

Kaum nimmt man einen Server aus dem Serverschrank, zeigt der entsprechende Server einem welche interessanten Fehler er über die LEDs an der Front ausgeben kann. In diesem Fall leuchtete bei einem Fujitsu Server die CSS LED. CSS steht dabei laut Fujitsu für „Customer Self Service“.

Die leuchtende CSS LED

Der erste Schritt führt bei einem solchen Fehler (wenn ein Windows auf dem System läuft) in die „Computerverwaltung“ und dort in die „Ereignisanzeige“ in den Unterpunkt „Anwendung“. Dort sollte die Quelle „ServerView Agents“ einen Fehler geworfen haben:

A critical error happend while BIOS selftest in cabinet 0 of server EXAMPLE. See server management message log (recovery log) for detailed information.

Der Fehler an sich ist nicht sehr aussagekräftig, so das man hier den Fehlerspeicher des Servers auslesen muss. Dies geschieht über die „Fehlerspeicheranzeige“ welche Teil der „Fujitsu ServerView Suite“ ist. Dort sieht man dann auch das der Fehler in diesem Fall nicht wirklich dramatisch ist:

Ursachen:
• Keyboard error detected during Power-On Self-Test (POST)
Problemlösungen:
• Check in the case of headless mode (without local keyboard) that AVR license is enabled or keyboard check is disabled
• Check keyboard cable
• If problem persists replace keyboard / cable.

Die entsprechende Einstellung wird im BIOS geändert und schon läuft der Server wieder wie am Schnürchen.

Ubuntu 12.04 + Time Machine

Die Funktion „Time Machine“ welche unter Mac OS X zu finden ist funktioniert mittels einer USB Festplatte oder einer Time Capsule. Wer aber nun schon einen Linux Server (in diesem Fall ein Ubuntu 12.04) rumzustehen hat, der möchte diesen eventuell für die Sicherung mittels Time Machine benutzen. Dazu gibt man im der Konsole folgendes ein:

sudo apt-get install netatalk avahi-daemon libnss-mdns

Nachdem die entsprechenden Pakete installiert worden sind, konfigurieren wir den Avahi Service mittels „sudo nano /etc/avahi/services/afpd.services“. In die sich öffnende Datei tragen wir folgendes ein:

<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h</name>
<service>
<type>_afpovertcp._tcp</type>
<port>548</port>
</service>
<service>
<type>_device-info._tcp</type>
<port>0</port>
<txt-record>model=TimeCapsule</txt-record>
</service>
</service-group>

Danach legen wir die entsprechende Freigabe an, in dem wir die Datei „/etc/netatalk/AppleVolumes.default“ mittels:

sudo nano /etc/netatalk/AppleVolumes.default

bearbeiten. Der Inhalt dieser Datei sieht dabei so aus:

/home/seeseekey/Backup TimeMachine allow:seeseekey cnidscheme:dbd options:usedots,upriv,tm

Nun muss noch einmal der Server neugestartet werden und schon kann die Freigabe mittels Time Machine benutzt werden. Sollte beim Start des ersten Backups folgende Fehlermeldung:

Fehler 30 beim ersten Backup mittels Time Machine

erhalten so muss man das Terminal öffnen und dort folgendes eingeben:

hdiutil create -size $500g -fs HFS+J -type SPARSEBUNDLE -volname “BACKUP” Amy_133713371337.sparsebundle

Damit erzeugen wir eine Sparsebundle-Datei. Der Parameter Size gibt dabei die maximale Größe an. Der Dateiname entspricht dem Schema „COMPUTERNAME_MACADRESSE.sparsebundle“. Die erzeugte Datei kopieren wir nun in das Wurzelverzeichnis der entsprechenden Freigabe. Danach sollte das Backup dann ohne Probleme funktionieren.

Weitere Informationen gibt es unter:
http://meetinx.de/tutorial-time-machine-auf-nas-netzwerk-laufwerk/
http://www.kvibes.net/2011/08/mac-os-x-lion-timemachine-und-linux/
http://meetinx.de/tutorial-time-machine-backup-sparsebundle-in-groesse-begrenzen/
http://blog.rotzoll.net/2010/07/linux-als-apple-afp-share-mit-timemachine-support-backups-uber-das-netzwerk/

CraftBukkit Server unter Ubuntu aufsetzen

Für Minecraft gibt es ja zwei Server, den offiziellen und den CraftBukkit Server welcher unter http://bukkit.org/ heruntergeladen werden kann. Der CraftBukkit Server hat dabei den Vorteil das er mit Plugins ausgestattet werden kann, welche die Funktionalität des Spieles erhöhen.

Um den Server auf einem Ubuntusystem aufzusetzen muss im ersten Schritt Java installiert werden:

apt-get install openjdk-6-jre-headless

Danach legt man sich den passenden Nutzer für Minecraft an und wechselt in dessen Kontext:

adduser minecraft
su minecraft
cd /home/minecraft/

Dort lädt man nun mittels „wget“ die neuste CraftBukkit Version herunter:

wget "http://dl.bukkit.org/downloads/craftbukkit/get/01119_1.2.5-R3.0/craftbukkit.jar" -O "craftbukkit.jar"

Das Bashskript „start-server.sh“ soll den Server dann starten:

#!/bin/sh
screen java -Xmx2048M -Xms2048M -jar craftbukkit.jar

Nachdem der Server mittels „screen“ gestartet wurde, drückt man „Strg + A“ und anschließend „Strg + D“ um ihn in den Hintergrund zu legen. Beim ersten Start sollte der Server einen Ordner „plugins“ anlegen. In diesen kann man dann eigene Plugins legen. Für den Anfang sollte man es mit folgenden Plugins versuchen:

Diese können auch ohne Rechteplugin genutzt werden, da die Befehle nur den Serveroperatoren zu Verfügung stehen.

Weitere Informationen gibt es unter:
https://seeseekey.net/archive/4276

Simple HTTP Server

Wer mal schnell einen HTTP Server unter Linux aufsetzen möchte, der sollte einfach in das entsprechende Verzeichnis gehen und dort:

python -m SimpleHTTPServer

ausführen. Anschließend ist dieses Verzeichnis per HTTP (standardmäßig unter Port 8000) erreichbar. Möchte man einen anderen Port benutzen so gibt man einfach die entsprechende Portnummer als letztes Argument mit an.

Weitere Informationen gibt es unter:
http://docs.python.org/library/simplehttpserver.html