Erstens: Wenn Sie Dateien freigeben möchten, gibt es verschiedene Protokolle von Interesse: Samba (SMB), NFS, FTP, SSH / sFTP / SCP. Samba ist am einfachsten, wenn ein Windows-Computer beteiligt ist, aber Sie können es auch zwischen zwei Ubuntu-Computern (und sogar Mac OS) verwenden. SSH ist eine nette Sache für Ubuntu, weil es ein sehr leistungsfähiges Tool ist - z. B. ist das Ausführen rsync
über SSH eine Befehlsmethode, um zwei Verzeichnisse synchron zu halten. Aber ich würde SMB wählen, weil Sie Windows erwähnen und wahrscheinlich für den Anfang das Einrichten eines Protokolls / Servers ausreicht.
Nur drei wichtige Hinweise für die weitere Forschung über andere Protokolle:
- Denken Sie über Verschlüsselung nach - ist es erforderlich, dass das Protokoll verschlüsselt ist, oder möchten Sie Ihrem LAN vertrauen? (FTP ist nicht verschlüsselt, SSH / sFTP / SCP ist)
- Müssen Sie große Dateien übertragen? (SCP ist im Vergleich zu SMB in Gigabit-Netzwerken sehr langsam! Bei Interesse Google-Benchmarks.)
- Müssen die Dateiberechtigungen der übertragenen Dateien beibehalten werden?
Nun deine Fragen:
1. Wenn ich Dateien zwischen zwei Ubuntu-Maschinen über LAN teile, brauche ich Samba auf beiden Maschinen?
Nein, nicht der Samba-Server. Es wird immer einen Server und einen Client geben. Sie können vom Client aus auf die freigegebenen Ordner auf dem Server zugreifen - nicht umgekehrt. Mit anderen Worten: Die Fortschrittsanzeige für den Kopiervorgang befindet sich immer auf dem Client, nie auf dem Server. Bei zwei Ubuntu-Maschinen können beide gleichzeitig Client und Server sein, wenn Sie möchten. Der Client wird standardmäßig mit Ubuntu ausgeliefert, der Server wird automatisch installiert, wenn Sie einen Ordner zum ersten Mal mit Nautilus teilen.
2. Ohne die Berechtigung zum Definieren auf Computer 1 kann ich alle Dateien unter /
auf Computer 2 sehen. Kann diese Sichtbarkeit auf irgendeine Weise gestoppt werden?
Das gilt nicht für SMB / Samba. Es gibt bestimmte freigegebene Ordner, und nur diese sind für die Clients sichtbar. Überprüfen Sie den Ordner /var/lib/samba/usershares/
und die Datei /etc/samba/smb.conf
, ob der Pfad /
freigegeben ist. Wahrscheinlich verbinden Sie sich mit SSH und nicht mit SMB. Dann haben Sie Recht, normalerweise ist alles sichtbar und Sie müssen die Datei- und Verzeichnisberechtigungen richtig einstellen. Weitere Informationen hierzu finden Sie hier: Einfache und unkomplizierte Möglichkeit, Benutzer inhaftieren zu lassen
3. Welchen Benutzer und welches Passwort muss ich verwenden, um über Samba auf einen anderen Ubuntu-Rechner zuzugreifen?
Normalerweise ist es einfach: Verwenden Sie einfach einen beliebigen Benutzer und ein beliebiges Kennwort des anderen Computers. Nur in ganz besonderen Fällen unterscheidet sich das normale Passwort des Benutzers von seinem Samba-Passwort. Sie können das Samba-Passwort separat mit dem Befehl ändern smbpasswd
, aber Sie sollten wirklich gute Gründe haben, zwei verschiedene Passwörter zu verwenden.
Sie können Freigaben ohne Passwort erlauben. Es gibt viele Dinge zu sagen, aber wahrscheinlich hilft dieser Nautilus-Screenshot für den Anfang:
4. Wie teile ich Dateien ohne GUI mit dem Terminal?
Der häufigste Anwendungsfall ist dann wohl SSH / SCP. Geben Sie einfach Folgendes in das Terminal des Clients ein, /path/to/file1
um es vom Client /path/to/file2
auf den Server zu kopieren :
scp /path/to/file1 server:/path/to/file2
server
kann eine IP-Adresse oder ein Domainname sein. Oder eine andere Methode, die bereits in anderen Antworten erwähnt wurde mit rsync
:
rsync /path/to/file1 server:/path/to/file2
Mit Samba würden Sie wahrscheinlich smbmount (das nicht standardmäßig mit Samba geliefert wird) verwenden, um eine Netzwerkfreigabe auf dem Client bereitzustellen . Dann können Sie es normal verwenden. Es gibt viele Möglichkeiten, eine Samba-Freigabe bereitzustellen. Wenn Sie Gnome verwenden, ist dies gvfs-mount
möglicherweise die einfachste Methode:
gvfs-mount smb://server/nameOfsharedFolder
cd ~/.gvfs/*
5. Warum wird der Server auf dem Client nicht in Nautilus / Network angezeigt?
Soweit ich weiß, taucht es dort beim ersten Mal nicht auf. Nachdem Sie eine Verbindung hergestellt haben, finden Sie sie dort. Wenn Sie das erste Mal auf "Windows-Netzwerk" und dann auf "Arbeitsgruppe" klicken, sehen Sie hoffentlich Ihren Server. Zumindest war dies das Ergebnis meiner Tests.
6. Wie finde ich das andere System, ohne den Namen oder die IP des anderen Systems im LAN zu kennen?
Sie können nmap
im Terminal zum Beispiel Folgendes verwenden:
nmap 192.168.0.*
Wenn 192.168.0.0 Ihr LAN ist. Dadurch werden alle Netzwerkclients in Ihrem LAN gedruckt (die erkannt werden können). Dies kann manchmal hilfreich sein, wenn andere Computer nicht unter Netzwerk angezeigt werden .