Dieses Tutorial erklärt die Installation eines Samba-Dateiservers auf OpenSUSE 12.3 und wie man ihn so konfiguriert, dass er Dateien über das SMB-Protokoll teilt, sowie wie man Benutzer hinzufügt. Samba wird als eigenständiger Server konfiguriert, nicht als Domänencontroller. In der resultierenden Konfiguration hat jeder Benutzer sein eigenes Home-Verzeichnis, auf das über das SMB-Protokoll zugegriffen werden kann, und alle Benutzer haben ein gemeinsames Verzeichnis mit Lese-/Schreibzugriff.
Ich gebe keine Garantie dafür, dass dies bei Ihnen funktioniert!
1 Vorbemerkung
Ich verwende hier ein OpenSUSE 12.3-System mit dem Hostnamen server1.example.com und der IP-Adresse 192.168.0.100.
2 Samba installieren
Wir können Samba wie folgt installieren:
zypper install cups-libs samba
Leider kollidiert Samba mit dem Paket pattern-openSUSE-minimal_base-conflicts. Daher müssen wir dieses Paket deinstallieren:
server1:~ # zypper install cups-libs samba
Laden Repository-Daten...
Lesen installierter Pakete...
'cups-libs' ist bereits installiert.
Kein Update-Kandidat für "cups-libs-1.5.4-5.2.1.x86_64". Die höchste verfügbare Version ist bereits installiert.
Paketabhängigkeiten lösen...
Problem: samba-3.6.12-59.2.1.x86_64 erfordert samba-client >= 3.6.12, aber diese Anforderung kann nicht bereitgestellt werden
deinstallierbare Anbieter: samba-client-3.6.12-59.2.1.x86_64[openSUSE-12.3-1.7]
samba-client-3.6.12-59.2.1.i586[ repo-oss]
samba-client-3.6.12-59.2.1.x86_64[repo-oss]
Lösung 1: Deinstallation von patterns-openSUSE-minimal_base-conflicts-12.3-7.10.1.x86_64
Lösung 2: samba-3.6.12-59.2.1.x86_64 nicht installieren
Lösung 3:samba-3.6.12-59.2.1.x86_64 nicht installieren
Lösung 4: unterbrechen samba-3.6.12-59.2.1.x86_64 durch Ignorieren einiger seiner Abhängigkeiten
Wählen Sie aus obigen Lösungen nach Nummer oder brechen [1/2/3/4/c] (c): <- - 1
Bearbeiten Sie die Datei smb.conf:
vi /etc/samba/smb.conf
Stellen Sie sicher, dass Sie die folgenden Zeilen im Abschnitt [global] haben:
[...] security = user passdb backend = tdbsam [...] |
Dadurch können sich Benutzer von Linux-Systemen beim Samba-Server anmelden.
(Wenn Sie die Meldung erhalten, dass Sie kein gültiges vim-Binärpaket installiert haben. Bitte installieren Sie entweder "vim", "vim-enhanced" oder "gvim". Führen Sie bitte
auszypper install vim
um vi zu installieren und es erneut zu versuchen. )
Erstellen Sie dann die Systemstartlinks für Samba und starten Sie es:
systemctl enable smb.service
systemctl start smb.service
3 Hinzufügen von Samba-Freigaben
Jetzt werde ich eine Freigabe hinzufügen, auf die alle Benutzer zugreifen können.
Erstellen Sie das Verzeichnis zum Teilen der Dateien und ändern Sie die Gruppe in die Benutzergruppe:
mkdir -p /home/shares/allusers
chown -R root:users /home/shares/allusers/
chmod -R ug+rwx,o+rx-w /home/shares/allusers/
Fügen Sie am Ende der Datei /etc/samba/smb.conf die folgenden Zeilen hinzu:
vi /etc/samba/smb.conf
[...] [allusers] comment = All Users path = /home/shares/allusers valid users = @users force group = users create mask = 0660 directory mask = 0771 writable = yes |
Wenn Sie möchten, dass alle Benutzer ihre Home-Verzeichnisse über Samba lesen und schreiben können, fügen Sie die folgenden Zeilen zu /etc/samba/smb.conf hinzu (stellen Sie sicher, dass Sie den anderen [homes]-Abschnitt in der Datei smb.conf auskommentieren oder entfernen. conf-Datei!):
[...] [homes] comment = Home Directories browseable = no valid users = %S writable = yes create mask = 0700 directory mask = 0700 |
Jetzt starten wir Samba neu:
systemctl restart smb.service
4 Hinzufügen und Verwalten von Benutzern
In diesem Beispiel füge ich einen Benutzer namens tom hinzu. Sie können auf die gleiche Weise beliebig viele Benutzer hinzufügen, ersetzen Sie einfach den Benutzernamen tom durch den gewünschten Benutzernamen in den Befehlen.
useradd tom -m -G users
(Wenn Sie den folgenden Fehler sehen, ignorieren Sie ihn bitte:
server1:~ # useradd tom -m -G users
configuration error - unknown item 'LASTLOG_ENAB' (notify administrator)
server1:~ #
)
Legen Sie ein Passwort für Tom in der Benutzerdatenbank des Linux-Systems fest. Sollte sich der Benutzer tom nicht am Linux-System anmelden können, überspringen Sie diesen Schritt.
passwd tom
-> Geben Sie das Passwort für den neuen Benutzer ein.
Fügen Sie nun den Benutzer zur Samba-Benutzerdatenbank hinzu:
smbpasswd -a tom
-> Geben Sie das Passwort für den neuen Benutzer ein.
Nun sollten Sie sich von Ihrer Windows-Workstation mit dem Datei-Explorer (Adresse ist \\192.168.0.100 oder \\192.168.0.100\tom für Toms Home-Verzeichnis) mit dem Benutzernamen tom und dem gewählten Passwort anmelden und Dateien auf dem speichern können Linux-Server entweder in Toms Home-Verzeichnis oder im öffentlichen freigegebenen Verzeichnis.
5 Links
- Samba:http://www.samba.org/
- OpenSUSE:http://www.opensuse.org/