NFS适用于Linux/Unix环境下的文件共享,需客户端和服务端配合使用。
nfs-common(包含NFS客户端工具):sudo apt update && sudo apt install nfs-common
/mnt/nfs):sudo mkdir -p /mnt/nfs
mount命令指定服务器IP、共享目录和本地挂载点,-t nfs指定文件系统类型:sudo mount -t nfs <服务器IP>:/<共享目录> /mnt/nfs
示例(服务器IP为192.168.1.100,共享目录为/shared):sudo mount -t nfs 192.168.1.100:/shared /mnt/nfs
/etc/fstab文件(需root权限),添加一行配置(格式:服务器IP:共享目录 本地挂载点 nfs defaults 0 0):sudo nano /etc/fstab
添加后保存退出(示例):192.168.1.100:/shared /mnt/nfs nfs defaults 0 0
之后系统启动时会自动挂载该共享。Samba用于Linux与Windows之间的文件共享,需安装cifs-utils支持CIFS协议。
cifs-utils(提供mount.cifs命令):sudo apt update && sudo apt install cifs-utils
/mnt/samba):sudo mkdir -p /mnt/samba
mount.cifs命令,-t cifs指定协议类型,-o选项指定用户名、密码(若密码含特殊字符,建议用credentials文件替代):sudo mount -t cifs //<服务器IP>/<共享名称> /mnt/samba -o username=<用户名>,password=<密码>
示例(服务器IP为192.168.1.100,共享名称为share,用户名user,密码pass):sudo mount -t cifs //192.168.1.100/share /mnt/samba -o username=user,password=pass
/etc/cifs-credentials文件(权限设为600,仅root可读),存储敏感信息:sudo nano /etc/cifs-credentials
内容示例:username=user
password=pass
修改文件权限:sudo chmod 600 /etc/cifs-credentials
挂载时引用该文件:sudo mount -t cifs //192.168.1.100/share /mnt/samba -o credentials=/etc/cifs-credentials
/etc/fstab,添加一行(格式://服务器IP/共享名称 本地挂载点 cifs credentials=/path/to/credentials 0 0):sudo nano /etc/fstab
添加后保存退出(示例)://192.168.1.100/share /mnt/samba cifs credentials=/etc/cifs-credentials 0 0
SSHFS通过SSH协议挂载远程目录,适合需要加密传输的场景(需远程服务器开启SSH服务)。
sshfs工具:sudo apt update && sudo apt install sshfs
/mnt/sshfs:sudo mkdir -p /mnt/sshfs
sshfs命令,格式为sshfs 用户名@服务器IP:远程目录 本地挂载点:sshfs <用户名>@<服务器IP>:/<远程目录> /mnt/sshfs
示例(服务器IP为192.168.1.100,用户名user,远程目录/home/user/shared):sshfs user@192.168.1.100:/home/user/shared /mnt/sshfs
若需免密登录,可将本地公钥(~/.ssh/id_rsa.pub)添加到远程服务器的~/.ssh/authorized_keys文件中。/etc/fstab,添加一行(格式:用户名@服务器IP:远程目录 本地挂载点 fuse.sshfs defaults,_netdev,user,identityfile=~/.ssh/id_rsa 0 0):sudo nano /etc/fstab
添加后保存退出(示例):user@192.168.1.100:/home/user/shared /mnt/sshfs fuse.sshfs defaults,_netdev,user,identityfile=~/.ssh/id_rsa 0 0
注:_netdev选项表示该挂载依赖网络,避免系统启动时因网络未就绪导致挂载失败。/etc/exports配置、Samba的security设置)。2049,Samba默认137-139、445,SSH默认22)。/etc/fstab中明文存储密码,优先使用credentials文件或SSH密钥认证。df -h命令查看已挂载的文件系统,确认远程共享是否成功挂载。