m0rf
Enthusiast
Thread Starter
- Mitglied seit
- 11.02.2006
- Beiträge
- 1.894
Es geht in diesem Guide um den Selbstbau eines kleinen TimeMachine Servers für runde 20€.
Ein Dank geht hier an stronzo, der in diesem Thread mein Interesse an dem kleinen Server geweckt hat.
Was wir brauchen:
Die Seagate FreeAgent Dockstar gibt es bereits ab 19,47 €(Preisvergleich) bzw. 23,46 inkl. Versand.
Bevor wir starten ein paar kleine Hinweise. Wenn ihr den DockStar erhaltet, sollte dieser auf keinen Fall direkt ans Netz gehangen werden, da er sonst nach Hause telefoniert und das ssh Passwort ändert. Das kann am besten dadurch vermieden werden indem der Router vom ISP getrennt wird. Also entweder das Internetkabel entfernen, oder in der Routerkonfiguration die Einwahl unterbinden.
Da es sich hier um einen Selbstbau handelt, verliert ihr die Garantie wenn ihr dieses HowTo weiter befolgt. Es kann nicht ausgeschlossen werden, dass ihr den DockStar bei der Installation komplett zerschrotet und dieser nur durch ein serielles Kabel wieder zum Leben erweckt werden kann. Ich übernehme dafür keine Garantien.
1. nmap/vi Referenz laden
Zunächst laden wir uns hier unter Mac OS X Binaries den nmap universal installer herunter und installieren diesen. Er wird uns später helfen unseren DockStar im Netz zu finden.
Die vi Befehlsreferenz hier herunterladen.
Sobald nmap und die Referenz heruntergeladen sind, die Internetverbindung trennen und den DockStar mit angeschlossener Festplatte ans Netz hängen.
2. IP herausfinden
Wir müssen nun die IP des kleinen herausfinden, daher hängen die weiteren Schritte nun von eurer Netzkonfiguration ab.
Mit DHCP Router/Server:
Ohne DHCP Router/Server:
3. System Installieren
Auch hier ein kleiner Hinweis: Das Skript für die Installation stammt von Jeff. Das Original ist hier zu finden.
Sobald ihr die IP Adresse herausgefunden habt, könnt ihr auf euren DockStar connecten. Dazu wieder einen Terminal öffnen:
Wir müssen nun den kleinen daran hindern nach Hause zu telefonieren
Okay. Für alle, die noch nie mit einem Editor auf der Kommandozeile gearbeitet haben, sollten sich auf etwas Schmerz gefasst machen und die vorhin heruntergeladene Referenz zu Hilfe ziehen.
Unser Ziel ist es /etc/init.d/hbmgr.sh start durch die vorangestellte Raute auszukommentieren. und mit ":wq" zu speichern.
Mount wieder readonly machen.
Ihr könnt euren Router jetzt wieder mit dem Internet verbinden und beispielweise Twittern, warum ihr gerade offline gewesen seid .
Die Festplatte muss partitioniert werden. Die ersten zwei Partitionen werden nun Systempartitionen. Die dritte wird unsere Partition für Backups.
In kurz sieht die Abfolge für die Bedienung des Programms dann so aus: (Wenn die Festplatte komplett ohne Partitionstabelle ist)
Systempartition:
Swap Partition
Daten Partition
Swap Partition richtiges FileSystem zuweisen
Ein druck auf "p" sollte euch nun eure Partitionstabelle anzeigen, die ungefähr so aussehen sollte
Nun muss die neue Partitionstabelle noch geschrieben werden:
Okay. Beginnen wir nun mit der Installation unseres Ausweichsystems. Zeit für einen Kaffee, oder zwei. Bis auf ein paar kurze Eingaben haben wir hier nichts zu tun.
Am Ende des Installationsvorgangs werden wir nach einem Reboot gefragt, den wir dankend annehmen.
4. System einrichten
Unser kleiner Server ist jetzt richtig erwachsen geworden und will nicht mehr nach Hause telefonieren. Allerdings kann es nun sein, dass er per DHCP eine neue IP zugewiesen bekommen hat. Hier sollten ein Blick auf 2. helfen um die neue IP herauszufinden. (Kurz: nmap -e enX -sP xxx.xxx.xxx.0/24)
Verbinden wir uns nun mit unserem neuen System:
Damit niemand auf schlimme Gedanken kommt, sollten wir das Passwort ändern:
Um später auf unseren Server zugreifen zu können, legen wir noch einen neuen Nutzer an:
Unsere Daten Partition bekommt nun noch ein neues FileSystem verpasst: (Zeit für nen Kaffee)
Nun erstellen wir den Pfad auf dem unseren Daten liegen.
Wir müssen jetzt noch unsere Partition mounten, dazu müssen wir die fstab mit vi verändern:
Unsere Backup Partition mounten:
Jetzt bekommt unser eben erstellter Nutzer die Rechte an dem Pfad: (wenn unser Nutzer beispielsweise hans lautete: chown hans.hans ...)
Damit unser mac mit dem Server sprechen kann, installieren wir netatalk:
Nun müssen wir unsere Pfade angeben, die später über das Netzwerk verfügbar sein sollen:
Hier müssen wir folgende Zeile einfügen und wieder mit ":wq" speichern.
Zeit den Server neu zu starten:
Wir stellen mit AVAHI sicher, dass unser mac den Server zuverlässig findet:
Wir müssen in unserer nnswitch.conf allerdings noch eine kleine Änderung vornehmen:
Die Zeile hosts: sollte nach unserer Änderung so aussehen:
Damit unser AVHI etwas Werbung im Netzwerk macht, braucht er noch die richtigen Einstellungen, diese Verpassen wir ihm mit etwas xml.
Die Datei ist komplett leer, sollte nach unserem Bearbeiten aber so aussehen: (Achtung: COPY PASTE ist hier nicht sinnvoll, da sonst einige Sonderzeichen verhunzt werden) Bitte vergleicht eure Eingabe mit dem Screenshot.
Als letztes ändern wir noch den Hostname unseres Servers.
Hier können wir eintragen, was wir wollen. Ich habe meinen TMServer genannt.
Damit unser System auch bescheid weiß, dass es nun anders heißt:
Nun noch ein reboot:
Es wird nun wieder das alte System gebootet. (Es kann sein, dass sich dies mit dem neuen uBoot geändert hat. Sollte dies so sein, das folgende einfach ignorieren.) Die IP Adresse kann hier auch wieder anders sein. nmap -e enX -sP xxx.xxx.xxx.0/24 hilft hier wieder bei der Suche. Sollte noch das alte System gebootet werden, können wir uns gewohnt mit dem passwort stxadmin anmelden und mit "reboot" wieder neu booten.
Das ist unser Server:
Sobald unser Server weider neu hochfährt sind wir wieder auf unserem Debian. Das neue SSH Passwort haben wir ja zu Anfang des Kapitels festgelegt.
5. Einrichten unter OS X
Finder - Connect to Server (Apfel + k)
Verbinden.
Der Username und das Passwort haben wir zu Beginn von 4. festgelegt. (unser adduser mit dem zugehörigem Passwort).
TimeMachine Volume auswählen.
Wer die Finder Standardansicht gewählt hat, sieht nun auf der linken Seite bereits das kleine XServe Symbol mit dem Namen unseres Servers.
Unter Systemeinstellungen - TimeMachine können wir nun unsere Backups auf den Server legen.
Viel Spaß damit!
Ein Dank geht hier an stronzo, der in diesem Thread mein Interesse an dem kleinen Server geweckt hat.
Was wir brauchen:
- Seagate FreeAgent DockStar
- (leere) Externe USB HDD mit ausreichend Speicherplatz
Die Seagate FreeAgent Dockstar gibt es bereits ab 19,47 €(Preisvergleich) bzw. 23,46 inkl. Versand.
Bevor wir starten ein paar kleine Hinweise. Wenn ihr den DockStar erhaltet, sollte dieser auf keinen Fall direkt ans Netz gehangen werden, da er sonst nach Hause telefoniert und das ssh Passwort ändert. Das kann am besten dadurch vermieden werden indem der Router vom ISP getrennt wird. Also entweder das Internetkabel entfernen, oder in der Routerkonfiguration die Einwahl unterbinden.
Da es sich hier um einen Selbstbau handelt, verliert ihr die Garantie wenn ihr dieses HowTo weiter befolgt. Es kann nicht ausgeschlossen werden, dass ihr den DockStar bei der Installation komplett zerschrotet und dieser nur durch ein serielles Kabel wieder zum Leben erweckt werden kann. Ich übernehme dafür keine Garantien.
1. nmap/vi Referenz laden
Zunächst laden wir uns hier unter Mac OS X Binaries den nmap universal installer herunter und installieren diesen. Er wird uns später helfen unseren DockStar im Netz zu finden.
Die vi Befehlsreferenz hier herunterladen.
Sobald nmap und die Referenz heruntergeladen sind, die Internetverbindung trennen und den DockStar mit angeschlossener Festplatte ans Netz hängen.
2. IP herausfinden
Wir müssen nun die IP des kleinen herausfinden, daher hängen die weiteren Schritte nun von eurer Netzkonfiguration ab.
Mit DHCP Router/Server:
- In dem Konfigurationsmenü des Routers schauen.
- Broadcast anpingen:
System Einstellungen - Netzwerk - eure Netzwerkkarte auswählen
Terminal öffnen
- Mit nmap scannen
System Einstellungen - Netzwerk - eure Netzwerkkarte auswählen
Terminal öffnen
- Broadcast anpingen:
System Einstellungen - Netzwerk - eure Netzwerkkarte auswählen
Terminal öffnen
xxx.xxx.xxx steht hier für den Anfang eurer IP Adresse. Das letzte Feld muss hier auf 255 geändert werden.ping xxx.xxx.xxx.255
- Mit nmap scannen
System Einstellungen - Netzwerk - eure Netzwerkkarte auswählen
Terminal öffnen
Je nach mac gibt es hier verschiedene Einträge. Der Eintrag, der in der Zeile inet eure IPAdresse aus den Systemeinstellungen hat ist der richtige. (Beispielsweise en0,en1)ifconfig
xxx.xxx.xxx steht hier wieder für den Anfang eurer IP Adresse.nmap -e enX -sP xxx.xxx.xxx.0/24
Ohne DHCP Router/Server:
System Einstellungen - Netzwerk - eure Netzwerkkarte auswählen
IPV4 Manuell auswählen. IP Adresse: 169.254.1.0 eintragen. Andere Felder leer lassen. Anwenden
Terminal öffnen
IPV4 Manuell auswählen. IP Adresse: 169.254.1.0 eintragen. Andere Felder leer lassen. Anwenden
Terminal öffnen
Mit etwas Glück, findet ihr hier schon die IP Adresse.nmap -e enX -sP 169.254.185.0/24
Jetzt solltet ihr sie haben.nmap -e enX -sP 169.254.0.0/16
3. System Installieren
Auch hier ein kleiner Hinweis: Das Skript für die Installation stammt von Jeff. Das Original ist hier zu finden.
Sobald ihr die IP Adresse herausgefunden habt, könnt ihr auf euren DockStar connecten. Dazu wieder einen Terminal öffnen:
ssh root@xxx.xxx.xxx.xxx
passwort:stxadmin
Wir müssen nun den kleinen daran hindern nach Hause zu telefonieren
killall hbwd
mount -o remount,rw /
chmod go+w /dev/null
Okay. Für alle, die noch nie mit einem Editor auf der Kommandozeile gearbeitet haben, sollten sich auf etwas Schmerz gefasst machen und die vorhin heruntergeladene Referenz zu Hilfe ziehen.
vi /etc/init.d/rcS
Unser Ziel ist es /etc/init.d/hbmgr.sh start durch die vorangestellte Raute auszukommentieren. und mit ":wq" zu speichern.
#/etc/init.d/hbmgr.sh start
Mount wieder readonly machen.
mount -o remount,ro /
Ihr könnt euren Router jetzt wieder mit dem Internet verbinden und beispielweise Twittern, warum ihr gerade offline gewesen seid .
Die Festplatte muss partitioniert werden. Die ersten zwei Partitionen werden nun Systempartitionen. Die dritte wird unsere Partition für Backups.
Eine gute Übersicht zu fdisk ist hier zu finden. Versichert euch, dass eure Festplatte keine Partitionen hat. Eine Übersicht gibt es mit "p". Einzelne Partitionen lassen sich mit "d" gefolgt von der Partitionsnummer löschen./sbin/fdisk /dev/sda
In kurz sieht die Abfolge für die Bedienung des Programms dann so aus: (Wenn die Festplatte komplett ohne Partitionstabelle ist)
Systempartition:
- n - Neue Partition erstellen
- p - Primäre Partition
- 1 - Nummer der Partition
- ENTER - Anfang der Platte
- +4096M - 4GB Partitionsgröße
Swap Partition
- n - Neue Partition erstellen
- p - Primäre Partition
- 2 - Nummer der Partition
- ENTER - nach Partition 1
- +1024M - 1GB Partitionsgröße
Daten Partition
- n - Neue Partition erstellen
- p - Primäre Partition
- 3 - Nummer der Partition
- ENTER - nach Partition 2
- ENTER - restlicher verfügbarer Platz
Swap Partition richtiges FileSystem zuweisen
- t - FileSystem ändern
- 2 - Nummer der Partition
- 82 - SWAP
Ein druck auf "p" sollte euch nun eure Partitionstabelle anzeigen, die ungefähr so aussehen sollte
Device Boot Start End Blocks Id System
/dev/sda1 1 1532 3908866+ 83 Linux
/dev/sda2 1533 2298 1954449 82 Linux swap / Solaris
/dev/sda3 2299 574226 1459274292 83 Linux
Nun muss die neue Partitionstabelle noch geschrieben werden:
w - Partitionstabelle schreiben
Okay. Beginnen wir nun mit der Installation unseres Ausweichsystems. Zeit für einen Kaffee, oder zwei. Bis auf ein paar kurze Eingaben haben wir hier nichts zu tun.
Code:
cd /tmp
wget http://jeff.doozan.com/debian/dockstar.debian-squeeze.sh
chmod +x dockstar.debian-squeeze.sh
export PATH=$PATH:/usr/sbin:/sbin
./dockstar.debian-squeeze.sh
Am Ende des Installationsvorgangs werden wir nach einem Reboot gefragt, den wir dankend annehmen.
4. System einrichten
Unser kleiner Server ist jetzt richtig erwachsen geworden und will nicht mehr nach Hause telefonieren. Allerdings kann es nun sein, dass er per DHCP eine neue IP zugewiesen bekommen hat. Hier sollten ein Blick auf 2. helfen um die neue IP herauszufinden. (Kurz: nmap -e enX -sP xxx.xxx.xxx.0/24)
Verbinden wir uns nun mit unserem neuen System:
ssh root@xxx.xxx.xxx.xxx
passwort: root
Damit niemand auf schlimme Gedanken kommt, sollten wir das Passwort ändern:
passwd
Um später auf unseren Server zugreifen zu können, legen wir noch einen neuen Nutzer an:
adduser nutzername
Unsere Daten Partition bekommt nun noch ein neues FileSystem verpasst: (Zeit für nen Kaffee)
mke2fs -t ext4 /dev/sda3
Nun erstellen wir den Pfad auf dem unseren Daten liegen.
mkdir /backup
Wir müssen jetzt noch unsere Partition mounten, dazu müssen wir die fstab mit vi verändern:
und diese Zeile einfügen und mit ":wq" speichern.vi /etc/fstab
/dev/sda3 /backup ext4 defaults 0 0
Unsere Backup Partition mounten:
mount -a
Jetzt bekommt unser eben erstellter Nutzer die Rechte an dem Pfad: (wenn unser Nutzer beispielsweise hans lautete: chown hans.hans ...)
mkdir /backup/TimeMachine
chown nutzername.nutzername /backup/
chown nutzername.nutzername /backup/TimeMachine
Damit unser mac mit dem Server sprechen kann, installieren wir netatalk:
apt-get install netatalk
Nun müssen wir unsere Pfade angeben, die später über das Netzwerk verfügbar sein sollen:
vi /etc/netatalk/AppleVolumes.default
Hier müssen wir folgende Zeile einfügen und wieder mit ":wq" speichern.
Code:
/backup/TimeMachine TimeMachine cnidscheme:dbd options:usedots,upriv,tm
Zeit den Server neu zu starten:
/etc/init.d/netatalk restart
Wir stellen mit AVAHI sicher, dass unser mac den Server zuverlässig findet:
apt-get install avahi-daemon libnss-mdns
Wir müssen in unserer nnswitch.conf allerdings noch eine kleine Änderung vornehmen:
vi /etc/nsswitch.conf
Die Zeile hosts: sollte nach unserer Änderung so aussehen:
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4 mdns
Damit unser AVHI etwas Werbung im Netzwerk macht, braucht er noch die richtigen Einstellungen, diese Verpassen wir ihm mit etwas xml.
vi /etc/avahi/services/afpd.service
Die Datei ist komplett leer, sollte nach unserem Bearbeiten aber so aussehen: (Achtung: COPY PASTE ist hier nicht sinnvoll, da sonst einige Sonderzeichen verhunzt werden) Bitte vergleicht eure Eingabe mit dem Screenshot.
Code:
<?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=Xserve</txt-record>
</service>
</service-group>
Als letztes ändern wir noch den Hostname unseres Servers.
vi /etc/hostname
Hier können wir eintragen, was wir wollen. Ich habe meinen TMServer genannt.
Damit unser System auch bescheid weiß, dass es nun anders heißt:
/etc/init.d/hostname.sh
Nun noch ein reboot:
reboot
Es wird nun wieder das alte System gebootet. (Es kann sein, dass sich dies mit dem neuen uBoot geändert hat. Sollte dies so sein, das folgende einfach ignorieren.) Die IP Adresse kann hier auch wieder anders sein. nmap -e enX -sP xxx.xxx.xxx.0/24 hilft hier wieder bei der Suche. Sollte noch das alte System gebootet werden, können wir uns gewohnt mit dem passwort stxadmin anmelden und mit "reboot" wieder neu booten.
Das ist unser Server:
Sobald unser Server weider neu hochfährt sind wir wieder auf unserem Debian. Das neue SSH Passwort haben wir ja zu Anfang des Kapitels festgelegt.
5. Einrichten unter OS X
Finder - Connect to Server (Apfel + k)
afp://xxx.xxx.xxx.xxx
Verbinden.
Der Username und das Passwort haben wir zu Beginn von 4. festgelegt. (unser adduser mit dem zugehörigem Passwort).
TimeMachine Volume auswählen.
Wer die Finder Standardansicht gewählt hat, sieht nun auf der linken Seite bereits das kleine XServe Symbol mit dem Namen unseres Servers.
Unter Systemeinstellungen - TimeMachine können wir nun unsere Backups auf den Server legen.
Viel Spaß damit!