第一步:在 Linux 上安装与准备 Samba
首先,需要在你的 Linux 系统上安装 Samba 软件包,并准备好要共享的文件夹。
-
安装 Samba :
根据你的 Linux 发行版,在终端中执行对应的命令。
bash
# CentOS / RHEL / Fedora sudo yum install samba samba-client -y # Ubuntu / Debian sudo apt update sudo apt install samba samba-client -y
离线安装方法
bash
https://gitcode.com/Premium-Resources/516ac/?utm_source=article_gitcode_universal&index=top&type=card&&uuid_tt_dd=10_37221362340-1776921709108-701495&isLogin=1&from_id=147649188&from_link=61b7bf7b2863a1a300dc83fea1a0834b
安装完成后,可以运行 samba --version 来确认是否成功。
-
准备共享目录 :
创建一个专门用于共享的目录(例如
/srv/samba/share),并设置好权限,让其他人可以读写。bash
# 创建共享目录,-p 参数会自动创建父目录 sudo mkdir -p /srv/samba/share # 为所有用户开放读写权限(请根据实际安全需求调整) sudo chmod 777 /srv/samba/share
第二步:配置 Samba 共享
Samba 的核心配置文件是 /etc/samba/smb.conf。我们需要编辑它,来告诉 Samba 要共享哪个文件夹。
-
编辑配置文件 :
用你喜欢的文本编辑器(如
vim,nano)以 root 权限打开/etc/samba/smb.conf。
sudo vim /etc/samba/smb.conf -
添加共享规则 :
在配置文件的最末尾,添加上你自己的共享设置。你可以参考下面的模板,把
path替换成你刚才创建的目录。ini
[myshare] # 这个是共享名,Windows 上会看到这个名字 comment = My shared folder # 共享描述,可以随便写 path = /srv/samba/share # 要共享的目录路径,必须和第一步创建的一致 browseable = yes # 是否允许在网络邻居里被看到 read only = no # 是否只读,no 表示允许写入 guest ok = no # 是否允许匿名访问,no 表示需要验证用户 create mask = 0755 # 新建文件的权限 directory mask = 0755 # 新建目录的权限 valid users = your_linux_username # 允许访问的 Linux 系统用户名需要注意,
valid users这一项建议填写你当前的 Linux 登录用户名。注意配置时删除注释!!!安全起见,不建议在配置里直接写yes来允许匿名访问,不能用root用户名!!!。如需新建用户
创建一个普通用户
bash
# 1. 创建一个普通用户 sudo useradd sambauser # 2. 设置 Samba 密码 sudo smbpasswd -a sambauser # 3. 修改 Samba 配置文件 vim /etc/samba/smb.conf把配置改成:
ini
[sharedata] comment = Shared floder to process path = /mnt/sharedata browseable = yes read only = no guest ok = no create mask = 0755 directory mask = 0755 valid users = sambauser # 改成普通用户,不要用 rootbash
# 4. 设置文件夹权限,让 sambauser 可以访问 sudo chown -R sambauser:sambauser /mnt/sharedata sudo chmod -R 755 /mnt/sharedata # 5. 重启 Samba sudo systemctl restart smb -
创建 Samba 用户 :
Samba 有自己独立的用户密码系统。你需要为刚才在配置里填写的
your_linux_username这个用户设置一个 Samba 访问密码。bash
# 假设你的用户名是 myuser sudo smbpasswd -a myuser系统会提示你输入并确认一个密码,这个密码就是稍后从 Windows 访问时需要输入的。
-
重启 Samba 服务 :
所有配置完成后,重启 Samba 服务让配置生效。
bash
sudo systemctl restart smb
第三步:在 Windows 上映射网络驱动器
现在,你可以切换到 Windows 电脑上进行操作了。
- 获取 Linux 的 IP 地址 :
在 Linux 终端里输入ip addr或hostname -I,记下它在你局域网内的 IP 地址,比如192.168.1.100。 - 映射网络驱动器 :
- 打开 Windows 的 文件资源管理器(也就是"此电脑")。
- 在左侧导航栏找到 "网络" ,右键点击它,选择 "映射网络驱动器"。
- 选择一个你喜欢的驱动器盘符(比如
Z:)。 - 在 "文件夹" 这一栏,按照
\\你的Linux_IP地址\你的共享名的格式填入。- 例如:
\\192.168.1.100\myshare
- 例如:
- 勾选 "登录时重新连接",这样以后重启电脑也会自动连接。
- 点击 "完成"。
- 输入验证信息 :
接下来,Windows 会弹出一个窗口让你输入网络凭据。- 用户名 :就是你刚刚设置 Samba 密码的那个 Linux 用户名(例如
myuser)。 - 密码 :就是你用
smbpasswd命令设置的那个密码。
- 用户名 :就是你刚刚设置 Samba 密码的那个 Linux 用户名(例如