CentOS 7中samba服务器配置和应用

  1. 点击windowns安装环回网卡文章完成网络配置
  2. 安装samba文件
    2.1 检测系统内部是否已经安装好samba文件

rpm -qa | grep samba

1

2.2 如果显示类似如下的版本信息,则证明系统内已经安装好samba服务

2.3 如果没有提示上述信息,则要安装对应的包。

yum -y install samba-client samba-common cifs-utils samba

1

3.指定samba在开机启动

systemctl enable smb.service

1

4.配置/etc/samba/smb.conf配置文件
4.1利用vim文本编辑器打开配置文件/etc/samba/smb.conf

vim /etc/samba/smb.conf

1

4.2配置global全局变量区域(只需要找到相应的变量修改即可,没有该变量就手动添加)
[global]
workgroup = SAMBA //文档中存在多个security变量,只需其中一个有效即可。
security = user //配置文件中所有等号前后加一个空格
netbios name = linux
passdb backend = tdbsam
log file = /var/log/samba/smbd.log //指定日志文件路径
log level = 2 //一共有10个级别,2是LOG_NOTICE,3是LOG_INFO
max log size = 50 //日志文件最大大小,单位KB

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14

5.设置文件共享
5.1设置匿名用户目录(在配置文件中最后的地方添加即可)
[tmp]
path = /tmp
read only = No
public = Yes
1
2
3
4

5.2设置用户组share的共享目录(在配置文件中最后的地方添加即可)
read list = @share
write list = @share
create mask = 0664
directory mask = 0770
path = /home/share
1
2
3
4
5

5.3保存该文本文件,重启smaba服务若使用vim文本编辑器,可以在命令模式下输入“:wq”回车。

systemctl restart smb.service

1

5.4新建用户mary,john和guest

useradd mary

passwd mary

useradd john

passwd john

useradd guest

passwd guest

1
2
3
4
5
6

5.6新建组share,并且将用户mary和john加入share组中。

groupadd share

usermod -G share mary

usermod -G share john

1
2
3

5.7将mary,john,guest加入到smbpasswd文件

smbpasswd -a mary

smbpasswd -a john

smbpasswd -a guest

1
2
3

5.8在/home目录下新建目录share,将其组属性改成share组

mkdir -p /home/share

chown :share /home/share

chmod 770 /home/share

1
2
3

5.9重新启动服务
systemctl restart smb.service(或者systemctl restart smb)
1

6.Windows和Linux互联测试
6.1禁用SELinux
先测试SElinux的设置,如果处于Enforcing状态,修改为permissive或者disabled。具体如下:

getenforce

1
如果输出“Enforcing”,则输入下面的命令

setenforce 0

1
以上命令只能在当前操作有效,如果希望永久改变,可以修改配置文件:/etc/selinux/config,找到SELINUX变量后根据上下文提示修改成对应的值(permissive或者disabled)即可。

如果想查看当前selinux的状态,可以命令sestatus

6.2禁用防火墙firewalld
先查看防火墙的运行状态

systemctl is-active firewalld.service

1
输出active(活跃),inactive(不活跃)若处于active状态,则禁用。

systemctl stop firewalld.service

1

以上6.1,6.2两个命令重启后无效,需要重新设置。

6.3通过Linux客户端访问Linux服务器共享文件,则先在Linux的控制台上输入如下命令查看主机172.16.99.1的共享信息。

smbclient -L //172.16.51.1 -U mary

1

若要访问share目录,则输入如下命令:

smbclient -c ls //172.16.51.1/share -U mary

1
(下图在/home/share下创建文件1234,然后通过mary用户访问share目录)

6.4通过Windows访问Linux
右击“我的电脑”,左键单击映射网络驱动器,在文件夹方框内按如下格式填写\172.16.51.1\share(172.16.51.1是Linux服务器的地址)

如果下次需要映射其它用户的文件,可以先断开原来的映射,然后通过修改“其它用户名”进行变更。
也可以直接在我的电脑的地址栏上输入路径:\172.16.51.1\share(大家可以尝试,但不推荐)
查看日志文件/var/log/samba/smbd.log,表示成功访问记录。

]# vim /var/log/samba/smbd.log
1

7.使用smbmount命令挂载远程共享
7.1创建挂载点

mkdir -p /mnt/smb/win

1

7.2将远程共享share挂载到本地/mnt/smb/win目录

mount.cifs -o user=mary //172.16.51.1/share /mnt/smb/win/

1

7.3进入挂载点

cd /mnt/smb/win/

ls

1
2

7.4用mount命令查看挂装表的内容

mount | grep cifs

1

7.5卸载挂载点

cd /

umount /mnt/smb/win //如果处于/mnt/smb/win目录下,是不能卸载的

1
2

————————————————

原文链接:https://blog.csdn.net/weixin_42768634/article/details/114075724

原创文章,作者:Zhu, Yuanyuan,如若转载,请注明出处:https://www.yidc.net/archives/12378