The following methods and protocols are well-suited to file transfer
and sharing.
- FTP
-
Use FTP (File Transfer Protocol) if you need to exchange files very
often and with different users. Set up an FTP server on one system and
access it with clients. There are many graphical client
applications available for FTP on Windows*, MacOS, and
Linux. Depending on how your FTP server is used, enable read and write
permissions. See Section 11.4.4, Copying Files with FTP for more details on
FTP.
- NFS
-
NFS (Network File System) is a client/server system. A server
exports one or more directories that can be imported by a client. For
more information, see Section 28.0, Sharing File Systems with NFS,
(↑ Reference ).
Use NFS if you share files very often and for different users.
Generally, this protocol is more common in the Linux world than in the
Windows world. An NFS export integrates well into your Linux system and
you can browse the imported directory structure like any other folder on
your local machine. Depending on how you configure it, enable write and read
permissions or both on the server. In general, for a home user it makes
sense to allow read and write access.
- rsync
-
Use rsync to transfer regularly large volumes of data that does
not change considerably. It is available on Linux and Windows. A typical
use case for rsync is managing data backups. Refer to the manual page of the
rsync command and Section 11.4.2, Transferring Files with rsync for more information.
- Unison
-
Unison is an alternative to rsync. It is used to regularly
synchronize files between different computers but has the advantage to
behave bidirectionally. Refer to the manual page of the Unison command and
Section 11.4.3, Transferring Files with Unison for more information. Unison is
available on Linux and Windows.
- SMB
-
Samba is a client/server system and an implementation of the
SMB protocol. It is usually used in Windows networks, but is supported
by several operating systems. Refer to Section 29.0, Samba,
(↑ Reference ) for more information about Samba.
Use Samba if you need to share files very often and with different
users, especially to Windows systems. Samba as a Linux-only solution is
uncommon, use NFS instead. For more information about setting
up a Samba server, refer to Section 11.7, Sharing Files between Linux and Windows with Samba.
- SSH
-
SSH (Secure Shell) enables a secure connection between
computer. The SSH suite consists of several commands and uses
public key encryption to authenticate users. For more information, see
Section 36.0, SSH—Secure Network Operations,
(↑ Reference ).
Use SSH if you copy files occasionally over an untrusted network
and if you are the only user doing so. Although there are graphical user
interfaces available, SSH is mainly considered a command line utility
and is available on Linux and Windows.