DIY Time-Machine
08.07.2016
3 minute read

Vor einigen Tagen hab ich mir einen neuen Homeserver zugelegt. Es ist ein HP Proliant Gen8 mit 2 Seagate Barracuda’s (jeweils 3TB). Die Festplatten laufen momentan im RAID 0. Ein Upgrade auf RAID 5 ist geplant aber wird erst später durchgeführt. Ich denke dazu werde ich hier auch noch etwas schreiben, da viele die ich kenne keinen Bock haben sich mit MDADM auseinanderzusetzen.

Was macht man nun mit 6TB Speicher? Richtig. Eine Apple Time Machine!

Da ich immer Versuche meine Software aktuell zu halten gibt es einen RIESEN Vorteil: Wir können auf Samba setzen und brauchen keinen AFP/Netatalk Server zu basteln. Das geht allerdings erst seit OSX 10.9 Mavericks.

Solltet ihr versuchen einen AFP Server unter OSX >=10.9 einzubinden bekommt ihr diesen Fehler:

The version of the server you’re trying to connect to is not supported. 
Please contact your system administrator to solve this problem.

Vorbereitung

Ich denke ich muss hier nicht erklären wie man den Proliant einrichtet. Einfach eine SD Karte ins Gehäuse einbauen und vom USB Stick Ubuntu Server installieren. Sobald das erledigt ist läuft’s wie bei jedem anderen Linux Server auch.

Einen wichtigen Hinweis kann ich euch aber noch geben: Man sollte nach Möglichkeit nicht auf OSX und Linux den selben Benutzernamen verwenden. Das führt aus unerfindlichen Gründen zu Problemen ¯\_(ツ)_/¯

Installation

Auf geht’s! Erstmal holen wir uns Samba und CUPS

sudo apt install libcups2 samba samba-common

Danach fangen wir an Samba einzurichten:

sudo vim /etc/samba/smb.conf

In der Config werden nun folgende werte eingefügt/auskommentiert

security = user
username map = /etc/samba/smbusers

Danach wird Samba mit sudo service smbd restart neugestartet. Am besten für die Time Machine noch einen eigenen Nutzer hinzufügen. Sicherheit und so…

sudo adduser --system <benutzername>
sudo smbpasswd -a <benutzername>

Jetzt noch die /etc/samba/smbusers öffnen und folgendes eintragen:

benutzername = "Benutzername"

Links vom gleich steht der Account den ihr in Linux angelegt habt. Rechts der Samba Nutzer.

Einen neustart später ist euer Server schon bereit. Allerdings hat er noch keine geteilten Ordner/Festplatten.

Dazu schreibt ihr folgendes in eure /etc/samba/smb.conf:

[NameDesOrdners]
comment = Mein Ordner
path = /pfad
read only = no
writable = yes

Ich möchte an dieser Stelle nochmal anmerken, dass Samba WIRKLICH viele Einstellungsmöglichkeiten hat. Es ist immer besser wenn ihr euch an einem verregneten Nachmittag nochmal durch die Manpages wühlt als irgendeinem Blog im Internet zu trauen.

Samba ist nun an sich fertig. Allerdings muss man sich noch manuell auf smb://IP/share verbinden. Das geht schöner. Mit Avahi!

sudo apt install avahi-daemon avahi-utils

Danach in der Datei /etc/avahi/services/smb.service die Config schreiben:

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

Das wars schon! Avahi muss nichtmal neugestartet werden.

Wechseln wir zum Mac.

Einrichtung

Sobald der Finder offen ist sollte er den Server bereits anzeigen.

Nach dem mounten muss ein SparseBundle auf dem share angelegt werden, da die Time Machine nur HFS+ Laufwerke versteht.

Das ganze macht man im Disk Utility und sieht etwa so aus:

Bei der Size solltet ihr das doppelte oder dreifache der Kapazität eueres Macs eintragen. In meinem Fall sind das 1,5TB. Das reicht für 3 volle Backups.

Keine Sorge: Ein SparseBundle verbraucht nur so viel Platz wie an Dateien darauf gespeichert ist.

Nach dem Erstellen einfach das Bundle auf die NAS ziehen und durch einen Doppelklick mounten.

Nun müssen wir TimeMachine noch “zwingen” eine nicht-Apple TimeMachine anzunehmen. Dazu folgenden Befehl in ein Terminal eingeben:

sudo tmutil setdestination /Volumes/Pfad

Danach können die Backups wie gehabt in den Einstellungen gestartet werden


If you like when I write words, you can fund future blogging (and other cool things) by throwing some spare money into my dev-fund.
It's very much appreciated.



comments powered by Disqus