LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 158|回复: 0

Linux安装配置 samba

[复制链接]
发表于 2024-1-11 17:44:11 | 显示全部楼层 |阅读模式
本文将以一个完整的示例来展示如何配置 samba 来实现 Linux 和 Windows 的文件共享。

目标:假设希望共享 Linux 服务器上的 /share/fs 目录。

1.1. 查看是否已经安装 samba
CentOS:rpm -qa | grep samba
Ubuntu:dpkg -l | grep samba
1.2. 安装 samba 工具
CentOS:yum install -y samba samba-client samba-common
Ubuntu:sudo apt-get install -y samba samba-client
1.3. 配置 samba
samba 服务的配置文件是 /etc/samba/smb.conf,如果没有则 samba 无法启动。

执行以下命令,编辑配置文件:

vim /etc/samba/smb.conf
修改配置如下:

[global]
        workgroup = SAMBA
        security = user

        passdb backend = tdbsam

        printing = cups
        printcap name = cups
        load printers = yes
        cups options = raw

[homes]
        comment = Home Directories
        valid users = %S, %D%w%S
        browseable = No
        read only = No
        inherit acls = Yes

[printers]
        comment = All Printers
        path = /var/tmp
        printable = Yes
        create mask = 0600
        browseable = No

[print$]
        comment = Printer Drivers
        path = /var/lib/samba/drivers
        write list = @printadmin root
        force group = @printadmin
        create mask = 0664
        directory mask = 0775

[fs]
        comment = share folder
        path = /share/fs
        browseable = yes
        writable = yes
        read only = no
        guest ok = yes
        create mask = 0777
        directory mask = 0777
        public = yes
        valid users = root
说明:

我在这里添加了一个 [fs] 标签,这就是共享区域的配置。
这里设置 path 属性为 /share/fs,意味着准备共享 /share/fs 目录,需要根据实际需要设置路径。/share/fs 目录的权限要设置为 777:chmod 777 /share/fs。
browseable、writable 等属性就比较容易理解了,即配置共享目录的访问权限。
valid users 属性指定允许访问的用户,需要注意的是指定的用户必须是 Linux 机器上实际存在的用户。
1.4. 创建 samba 用户
创建的 samba 用户必须是 Linux 机器上实际存在的用户。

$ sudo smbpasswd -a root
New SMB password:
Retype new SMB password:
Added user root.
根据提示输入 samba 用户的密码。当 samba 服务成功安装、启动后,通过 Windows 系统访问机器共享目录时,就要输入这里配置的用户名、密码。

查看 samba 服务器中已拥有哪些用户 - pdbedit -L
删除 samba 服务中的某个用户 - smbpasswd -x 用户名
1.5. 启动 samba 服务
CentOS 6

$ sudo service samba restart  # 重启 samba
$ sudo service smb restart    # 重启 samba
CentOS 7

$ sudo systemctl start smb.service     # 启动 samba
$ sudo systemctl restart smb.service   # 重启 samba
$ sudo systemctl enable smb.service    # 设置开机自动启动
$ sudo systemctl status smb.service    # 查询 samba 状态
Ubuntu 16.04.3

$ sudo service smbd restart
1.6. 为 samba 添加防火墙规则
$ sudo firewall-cmd --permanent --zone=public --add-service=samba
$ sudo firewall-cmd --reload
1.7. 测试 samba 服务
$ smbclient //localhost/fs -U root
输入 samba 用户的密码,如果成功,就会进入 smb: \>。

1.8. 访问 samba 服务共享的目录
Windows:

访问:\\<你的ip>\<你的共享路径> :

Mac:

与 Windows 类似,直接在 Finder 中访问 smb://<你的ip>/<你的共享路径> 即可。

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表