【openEuler系列】 部署文件共享服务Samba

【openEuler系列】 部署文件共享服务Samba

1 配置环境

挂载系统ISO,并配置好本地dnf源。(前面的文章讲过,这里就略过…)

2 配置软件安装源

确认软件源是否安装成功

dnf search samba

3 安装文件共享服务

输入如下命令安装samba服务,及其相关组件

dnf -y install samba samba-common samba-client

启动samba服务,并设置为开机启动

systemctl start smb; systemctl enable smb

查看服务器监听状态,在tcp 139,445端口上监听

netstat -lantp | grep 139

关闭防火墙

systemctl stop firealld; systemctl disable firewalld  通过smbclient命令查看服务共享状态,输入root密码看到当前服务正在运行

4 添加Samba用户

使用useradd命令添加用户smb 设置用户smb的samba服务器密码

useradd -s /sbin/nologin -M smb smbpasswd -a smb

5 创建共享文件目录

创建一个共享文件目录share用于公共共享,创建一个用户文件目录smb; 将share与smb目录权限更改为777权限;

mkdir /var/share /var/smb chmod 777 /var/share/ /var/smb/

6 修改Samba配置文件

vi /etc/samba/smb.conf

在global添加如下内容:

[global] workgroup = SAMBA security = user map to guest = Bad User #新增此行 passdb backend = tdbsam printing = cups printcap name = cups load printers = yes cups options = raw

添加公共share目录,允许匿名访问目录

[share] comment = share path = /var/share guest ok = yes writeable = yes browseable = yes

配置完成后保存退出,然后重启Samba服务

systemctl restart smb

使用Windows电脑访问Samba服务器。在计算机上打开任意文件,输入共享路径\ip的方式访问文件共享服务 进入该文件目录,新建一个文本文档,可以正常创建,公共文件共享目录设置成功
7 添加用户共享配置

用户共享目录smb的属主

chown smb:smb /var/smb/

编辑Samba配置文件/etc/samba/smb.conf,添加用户共享配置,保存并退出编辑。

[smb] comment = smb path = /var/smb write list = smb browseable = yes writeable = yes read list = smb valid users = smb create mask = 0777 directory mask = 0777

重启Samba服务

systemctl restart smb

试点击smb访问该目录,需要输入认证信息,输入在步骤4中创建的用户及密码。登录该共享目录

使用定时任务管理文件(1)

Samba文件共享服务器的共享数据,可以用过设置定时任务每天备份数据。使用Shell脚本与定时周期任务crontab设置对share目录的数据归档备份到smb目录。 创建数据备份脚本/root/backup.sh:

#!/bin/sh mkdir /var/backup #创建临时备份目录 cp -r /var/share/ /var/backup/ #将共享文件夹的数据复制到备份目录 tar -zcPvf /var/smb/backup$(date +%Y%m%d).tar.gz /var/backup #打包共享目录的数据到/var/backup rm -rf /var/backup/ #删除临时备份目录 find /var/smb/ -mtime +30 -name “*.tar.gz” -exec rm -rf {} ; #删除30天以上的备份数据

为脚本设置可以执行权限:

[root@openEuler ~]# chmod +x backup.sh

使用定时任务管理文件(2)

设置周期执行任务,使用crontab命名编辑周期执行任务,执行计划为每天22点0执行备份脚本backup.sh一次,备份数据到smb目录,并保存文件名为当天时间。

[root@openEuler ~]# crontab –e 0 22 * * * /root/backup.sh

完成后,查看备份任务:crontab –l

系统及服务日志

当需要通过日志查看Samba服务器的运行信息或报错信息时,openEuler系统日志文件保存在/var/log目录下,使用ls命令查找到Samba服务日志文件后,在通过日志文本查看命令查看最后20条日志记录。 查看/var/log目录下Samba目录的日志文件名:ls –l /var/log/samba 查看最后20行的日志记录:tail /var/log/samba/log.smbd –n 20 查看openEuler系统最后20行日志记录: tail /var/log/messages



image-20250428173925994



image-20250429145335076
image-20250429145432690
image-20250429145509744


image-20250429145645102


image-20250429145859853
image-20250429145923736

image-20250429150748697

4 个赞