在Linux系统中共享文件夹可以通过多种方式实现,具体取决于使用场景(本地网络共享或远程访问)。以下是常见的几种方法:
Samba是Linux与Windows之间共享文件夹的标准协议。
# Debian/Ubuntu
sudo apt update
sudo apt install samba
# CentOS/RHEL
sudo yum install samba
编辑Samba配置文件:
sudo nano /etc/samba/smb.conf
在文件末尾添加以下内容(示例共享名为myshare
):
[myshare]
path = /path/to/shared/folder
browsable = yes
writable = yes
guest ok = yes # 允许匿名访问(如需密码则设为no)
create mask = 0777
directory mask = 0777
sudo smbpasswd -a username # 将`username`替换为系统用户
sudo systemctl restart smbd
\\Linux_IP\myshare
smb://Linux_IP/myshare
适用于Linux-to-Linux的共享。
# Debian/Ubuntu
sudo apt install nfs-kernel-server
# CentOS/RHEL
sudo yum install nfs-utils
编辑/etc/exports
:
sudo nano /etc/exports
添加以下内容(允许192.168.1.0/24
网段访问):
/path/to/shared/folder 192.168.1.0/24(rw,sync,no_subtree_check)
sudo exportfs -a
sudo systemctl restart nfs-server
在另一台Linux上执行:
sudo mount -t nfs server_ip:/path/to/shared/folder /local/mount/point
适合临时安全访问。
sudo apt install sshfs # Debian/Ubuntu
sudo yum install sshfs # CentOS/RHEL
sshfs username@remote_ip:/remote/folder /local/mount/point
fusermount -u /local/mount/point
适合通过浏览器或WebDAV客户端访问。
sudo apt install apache2 # Debian/Ubuntu
sudo a2enmod dav dav_fs
编辑Apache虚拟主机配置:
sudo nano /etc/apache2/sites-available/webdav.conf
添加以下内容:
Alias /webdav "/path/to/shared/folder"
<Directory "/path/to/shared/folder">
DAV On
Require all granted
</Directory>
sudo systemctl restart apache2
bash
sudo chmod -R 777 /path/to/folder # 临时测试(生产环境需细化权限)
根据需求选择合适的方法,Samba适合混合网络,NFS适合Linux集群,SSHFS适合临时安全访问。