OpenWrt: Samba - Windows File Sharing

Dokument in Arbeit

Wer seinen Router als Fileserver benutzen möchte installiert Samba. Man kann so z.B. einfach seine Musiksammlung erweitern, die wie hier (OpenWrt: mpd, der "music player daemon") beschrieben den Router als Mediaplayer mit Musik bestückt.

Vor der Installation des Samba Servers sollte der Router grundsätzlich eingerichtet werden. Das wird hier beschrieben: OpenWrt: Alternative Routersoftware (auf TP-Link TL-WDR3600).

OpenWrt Dokumentation zu Samba: http://wiki.openwrt.org/doc/howto/cifs.server

Vorbereitung

Erst werden die grundsätzlichen Pakete installiert und gestartet.

Installation der Server Software

opkg update && opkg install samba36-server
/etc/init.d/samba enable
/etc/init.d/samba start

Erweiterung des Webinterfaces 'luci'

opkg install luci-app-samba

Konfiguration

Füge einen Benutzer zum System (manuell in /etc/passwd und /etc/group, 'jh' steht für die Initialen des Autors). Alternativ lässt sich ein User auch mit dem usergroupadd Script erstellen.

mkdir /home; mkdir /home/jh
echo "jh:x:1001:1001:jh:/home/jh:/bin/ash" >>/etc/passwd
echo "jh:*:1001:1001:jh:/home/jh:/bin/ash" >>/etc/passwd-
echo "jh:*:0:0:99999:7::: >>/etc/shadow
echo "jh:*:0:0:99999:7::: >>/etc/shadow-
echo "jh:x:1001:" >>/etc/group
echo "jh:x:1001:" >>/etc/group-
chown jh:jh /home/jh; chmod 770 /home/jh

Erstelle ein Passwort (für den User 'jh')

passwd jh

Erstelle das "Windows-Passwort" (Samba-Passwort /etc/samba/smbpasswd)

echo "jh:1001:X:0:[U          ]:LCT-00000001:" >/etc/samba/smbpasswd
smbpasswd jh

Windows-Share

Die Einstellungen können hier vorgenommen werden: http://192.168.0.3/cgi-bin/luci/admin/services/samba/. Alternativ kann auch /etc/config/samba so eingestellt werden. Nach einem Neustart des Routers oder nur des Samba-Servers (/etc/init.d/samba restart) stehen neben dem Heimverzeichnis zwei Shares zur Verfügung. Das erste ist die gesamte HD, nur für den User 'jh' erreichbar und beschreibbar. Das zweite kann jeder im lokalen Netz einsehen, aber nicht beschreiben:

config samba
    option name 'OpenWrt'
    option workgroup 'Workgroup'
    option description 'OpenWrt'
    option homes '1'

config sambashare
    option name 'opwrt-hd'
    option path '/mnt/sdb1/'
    option read_only 'no'
    option users 'jh'
    option guest_ok 'no'
    option create_mask '0750'
    option dir_mask '0750'

config sambashare
    option name 'music'
    option path '/mnt/sdb1/music'
    option read_only 'yes'
    option guest_ok 'yes'
    option create_mask '0770'
    option dir_mask '0770'


Möglicherweise sieht Windows die Shares, man kann aber nicht darauf zugreifen. Ein rudimentäres

chmod 777 /mnt/sdb1

behebt dieses Problem. (Verzeichnisname nach Bedarf ändern).