跨平台文件共享总体思路
常用方案与关键步骤
SMB/CIFS(Linux ↔ Windows/macOS)
sudo apt-get install sambasudo yum install samba/etc/samba/smb.conf,示例:[shared]
path = /srv/samba/shared
browseable = yes
read only = no
valid users = alice
sudo smbpasswd -a alicesudo systemctl restart smbd(部分系统同时启用 nmbd)\\<Linux_IP>\sharedsudo mount -t cifs //<Linux_IP>/shared /mnt/cifs -o username=alice,password=<pwd>NFS(Linux ↔ Linux,亦可经网关/NAS 提供给其他平台)
sudo apt-get install nfs-kernel-serversudo yum install nfs-utils/etc/exports,示例:/srv/nfs 192.168.1.0/24(rw,sync,no_subtree_check)
sudo exportfs -ra;启动服务:sudo systemctl start nfs-kernel-server && sudo systemctl enable nfs-kernel-serversudo mount 192.168.1.100:/srv/nfs /mnt/nfs/etc/fstab:192.168.1.100:/srv/nfs /mnt/nfs nfs defaults 0 0
showmount -e <server>、mount | grep nfs;性能常用选项 rsize/wsize=8192/16384、hard/soft、timeo=14。SCP/SFTP/SSHFS(安全临时传输与按需挂载)
scp /local/file user@host:/remote/dirsftp user@host,put /local/file /remote/dirrsync -avz /local/file user@host:/remote/dirsudo apt-get install sshfs(或 fuse-sshfs)sshfs user@host:/remote/dir ~/remote_mountfusermount -u ~/remote_mountHTTP/FTP(面向互联网或简单分发)
http://<IP>/file 访问,适合公开只读分发。sudo apt-get install vsftpd 或 sudo yum install vsftpdanonymous_enable=NO、local_enable=YES、write_enable=YES、chroot_local_user=YES防火墙与网络配置要点
sudo ufw allow samba。sudo firewall-cmd --permanent --add-service=nfs && sudo firewall-cmd --reload)。权限与身份管理
smbpasswd)。no_root_squash;生产环境建议保留默认 root_squash 并结合 sync 等选项保障一致性。/etc/exports 中指定 192.168.1.0/24),避免对公网暴露敏感共享。选型与最佳实践
/etc/fstab 加 defaults,_netdev;SSHFS 可用 autofs)