一、前言
Samba是一款在Linux系统中广泛使用的开源软件,它允许Linux与Windows系统之间进行文件共享和打印服务。通过配置Samba服务器,我们可以轻松地在Linux和Windows之间实现文件传输和共享,提高工作效率。本文将详细介绍如何在Linux中安装与配置samba服务器,帮助读者快速掌握Samba的基本使用方法。
二、安装Samba软件
在Linux系统中,我们可以通过包管理器来安装Samba软件。
1.建议在安装samba 服务之前,使用rpm-qa |grep samba 命令检测系统是否安装了samba软件包。
[root@RHEL7-1 ~]# rpm -qa | grep samba
如图所示就是安装了
如果系统还没有安装samba 软件包,则可以使用yum命令安装所需软件包。
(1)挂载ISO安装镜像。
[root@RHEL7-1 ~]# mkdir /iso
[root@RHEL7-1 ~]# mount /dev/cdrom /iso
mount: /dev/sr0 is write-protected, mounting read-only
(2)制作用于安装的yum源文件
dvd.repo文件的内容如下。
#/etc/yum.repos.d/dvd.repo
#or for ONLY the media repo, do this:
#yum --disablerepo=\* --enablerepo=c6-media [command]
[dvd]
name=dvd
baseurl=file: ///iso //特别注意本地源文件的表示,3个/
gpgcheck=0
enabled=1
(3)使用yum命令查看 samba 软件包的信息。
[root@RHEL7-1 ~]# yum info samba
(4)使用yum命令安装samba 服务。
[root@RHEL7-1 ~]# yum clean all //安装前先清除缓存
[root@RHEL7-1 ~]# yum install samba -y
(5)所有软件包安装完毕,可以使用rpm命令再一次查询。
[root@RHEL7-1 ~]# rpm -qa I grep samba
(6)启动与停止samba服务,设置开机启动。
[root@RHEL7-1 ~]# systemctl start smb
[root@RHEL7-1 ~]# systemctl enable smb
Created symlink from /etc/systemd/system/multi-user. target.wants/smb.serviceto /usr/lib/systemd/system/smb. service.
[root@RHEL7-1 ~]# systemctl restart smb
[root@RHEL7-1 ~]# systemctl stop smb
[root@RHEL7-1 ~]# systemctl start smb
注意:在Linux 服务中更改配置文件后,一定要记得重启服务,让服务重新加载配置文件,这样新的配置才可以生效。其他命令还有 Systemctl restart smb、 Systemctl reload smb等。
三、配置Samba服务器
在Linux系统中,Samba的配置文件通常位于`/etc/samba/smb.conf`。我们可以通过编辑这个文件来配置Samba服务器的各项参数。
1.我们需要备份原始的配置文件,以防在配置过程中发生错误导致系统无法正常工作:
[root@RHEL7-1 ~]# cd /etc/samba
[root@RHEL7-1 samba]# ls
[root@RHEL7-1 samba]# cp -p smb.conf smb.conf.bak
2.建立共享目录,并在其下建立测试文件。
[root@RHEL7-1 ~]# mkdir /companydata
[root@RHEL7-1 ~]# mkdir /companydata/sales
[root@RHEL7-1 ~]# touch /companydata/sales/test_share.tar
3.添加销售部用户和组并添加相应samba账户。
使用groupadd 命令添加 sales 组,然后执行 useradd 命令和 passwd 命令添加销售部员工的账户及密码。此处单独增加一个 test_userl 账户,不属于 sales 组,供测试用。
[root@RHEL7-1 ~]# groupadd sales
[root@RHEL7-1 ~]# useradd-g sales sale1
[root@RHEL7-1 ~]# useradd-g sales sale2
[root@RHEL7-1 ~]# useradd test_userl
[root@RHEL7-1 ~]# passwd salel
[root@RHEL7-1 ~]# passwd sale2
[root@RHEL7-1 ~]# passwd test_user1
密码即使类似于12345678这类非常简单的,再输第二遍也能用。
为销售部成员添加相应的samba 账户。
[root@RHEL7-1 ~]# smbpasswd -a sale1
[root@RHEL7-1 ~]# smbpasswd -a sale2
4.修改samba主配置文件smb.conf。
注意:在实际配置中,你需要根据自己的需求修改共享目录的路径、访问权限等参数。同时,确保Samba用户具有访问共享目录的权限。
5.设置共享目录的本地系统权限。将属主、属组分别改为sale1 和sales。
6.更改共享目录的context 值,或者禁用SELinux。
也可以使用如下命令。
[root@RHEL7-1 ~]# getenforce
Enforcing
[root@RHEL7-1 ~]# setenforce Permissive
7.让防火墙放行,这一步很重要。
8.重新加载samba服务。
[root@RHEL7-1 ~]# systemctl restart smb
使用如下命令也可以。
[root@RHEL7-1 ~]# systemctl reload smb
9.测试。一是在Windows7中利用资源管理器进行测试,二是利用Linux 客户端测试。
我们可以通过在Windows系统中访问共享目录来测试Samba服务器是否配置成功。在Windows资源管理器中,输入`\\Linux服务器IP地址\shared_folder`即可访问共享目录。如果一切正常,你应该能够看到并访问共享目录中的文件。
四、总结
本文介绍了在Linux中配置和管理Samba服务器的基本步骤。通过安装Samba软件、配置共享目录、启动Samba服务以及测试共享功能,我们可以轻松地在Linux和Windows之间实现文件共享和传输。希望本文能够帮助读者快速掌握Samba的使用方法,提高工作效率。