Die Buffalo Linkstation Live CHL ist ein NAS für Privatanwender. Eines der besten Features ist, dass das NAS sich automatisch einschaltet, wenn sich ein PC im Netzwerk hochgefahren wird. Für Windows und Mac OS legt Buffalo eien entsprechende Software bei, unter Linux ist man auf sich selbst gestellt. Ohne Angst vor der Kommandozeile und etwas Vorwissen zur Paketinstallation ist jedoch schnell und unkompliziert eine Lösung in Form eine Bash-Skriptes geschaffen. Auf die distributionsspezifische Installation der benötigten Wake-On-LAN-Pakete wird nicht weiter eingegangen.
Anforderungen
- PC mit Linux (hier Ubuntu 10.04, andere Linuxdevirate sollten aber ebenso problemlos funktionieren)
- root-Rechte auf dem PC für die Anpassung und die Installation
- Wake-On-LAN Softwarepaket ist installiert
- Buffalo Linksstation (Netzwerkanschluss)
1.1 Skript erstellen
1.2 Skript ausführbar machen
2.1 Erstellung einer Rechtedatei im Homeverzeichnis des Benutzers
2.2 Eintrag in die Datei /etc/fstab
2.3 Manuelles Einbinden als normaler Benutzer
3. Automatischer Start des Skriptes (via GNOME-Desktop)
1. WOL-Skript mit Mounting
1.1 Skript erstellen
Nachfolgendes Skript verschickt ständig Aufwachbefehle an das Buffalo Linkstation NAS via Netzwerk, benutzt wird dabei das Paket "WakeOnLan". Ausprobiert habe ich es unter Ubuntu 10.04, sollte jedoch mit anderen Deviraten ähnlich funktionieren. Ich bin übrigens nicht der orginäre Autor dieses Skripts, leider habe ich den Link auf das Origninal in einem Forum verloren. Ich habe lediglich einige unwesentliche Modifikationen vorgenommen.
Bash-Skript:
linkstation.sh | |
1 |
#!/bin/bash |
Folgende Inhalte sind auf die persönlichen Gegebenheiten anzupassen:
Zeile 2: Hier bitte die IP-Adresse der Buffalo Linkstation eintragen
Zeile 3: Das Heimatverzeichnis anpassen, DIRECTORY steht für ein anzulegendes Verzeichnis im Heimatpfad
Zeile 4: Die Variable MAC_ID muss die MAC-Adresse der Linkstation enthalten
[TOP]
1.2 Skript ausführbar machen
Alle angelegten Dateien sind für den Besitzer zwar les- und schreibbar unter Linux, aber nicht automatisch ausführbar. Wir müssen die Datei also erst ausführbar machen (755: für alle ausführbar, 744: nur für den Besitzer ausführbar).
> chmod 755 linkstation.sh
[TOP]
2. Share-Verzeichnis beim Systemstart mounten
2.1 Erstellung einer Rechtedatei im Homeverzeichnis des Benutzers
> nano /home/USER/.smbcredentials
username=TEST
password=TESTPW
Die Platzhalter "USER", "TEST" und "TESTPW" sind zu ersetzen.
Damit die Datei nur von dem entsprechenden Benutzer eingesehen werden kann, setzt man die Rechte dementsprechend:
> sudo chmod 600 ./smbcredentials
[TOP]
2.2 Eintrag in die Datei /etc/fstab
> sudo nano /etc/fstab
Tragen Sie die nachfolgende Zeile ohne Umbruch in die Datei ein:
//HOST/share /home/USERNAME/DIRECTORY cifs credentials=/home/USER/.smbcredentials,users,noauto,rw,_netdev,file_mode=0777,dir_mode=0777 0 0
Bitte die Platzhalter "HOST", "USERNAME", "DIRECTORY", "USER" und "PASSWORD" mit den gewünschten Werten ersetzen.
[TOP]
2.3 Manuelles Einbinden als normaler Benutzer
Normalerweise dürfen nur Admins die Befehle "mount" und "umount" benutzen. Damit unser Skript aber funktioniert, benötigt der Benutzer dieses Recht. Deshalb muß für die Dateien mount.cifs und umount.cifs das sog. SUID-Bit gesetzt ist. Wird das SUID-Bit, "Set User ID"-Bit, gesetzt, wird eine ausführbare Datei nicht mit der Berechtigung des Benutzers, sondern mit der Berechtigung des Eigentümers der Datei ausgeführt.
Mit folgenden Befehlen im Terminal wird die Erlaubnis zum Mounten für Benutzer gesetzt:
> sudo chmod +s /sbin/mount.cifs
> sudo chmod +s /sbin/umount.cifs
[TOP]
3. Automatischer Start des Skriptes (via GNOME-Desktop)
Unter der graphischen Benutzeroberfläche GNOME-Desktop ist es sehr einfach Autostart-Dateien zu erzeugen. Dazu klicken Sie in der Menüleiste den Punkt Einstellungen und wählen dann den Unterpunkt Startprogramme aus. Dort erzeugen Sie einen neuen Eintrag:
bash /home/USERNAME/PATH_TO_SKRIPT/linkstation.sh
Vergeben Sie noch eine aussagekräftige Beschreibung, damit Sie auch nach längerer Zeit noch den Sinn dieser Startdatei auf den ersten Blick erkennen können.
Das Ergebnis sollte wie folgt aussehen:
[TOP]