Linux使用Samba实现文件共享
Samba服务是现在Linux系统与Windows系统之间共享文件的最佳选择。
[root@study ~]# yum install samba -y #安装samba服务
[root@study ~]# cat -n /etc/samba/smb.conf #查看samba主配置文件
Samba服务程序中的参数以及作用
[global] | 参数 | 作用 |
workgroup = MYGROUP |
#工作组名称 |
|
server string = Samba Server Version %v |
#服务器介绍信息,参数%v为显示SMB版本号 |
|
log file = /var/log/samba/log.%m |
#定义日志文件的存放位置与名称,参数%m为来访的主机名 |
|
max log size = 50 |
#定义日志文件的最大容量为50KB |
|
security = user |
#安全验证的方式,总共有4种 |
|
#share:来访主机无需验证口令;比较方便,但是安全性很差 |
||
#user:需验证来访主机提供口令后才可以访问;提高了安全性 |
||
#server:使用独立的远程主机验证来访主机提供的口令(集中管理账户) |
||
#domain:使用域控制器进行身份验证 |
||
passdb backend = tdbsam |
#定义用户后台的类型,共有3种 | |
#smbpasswd:使用smbpasswd命令为系统用户设置Samba服务程序的密码 |
||
#tdbsam:创建数据库文件并使用pdbedit命令建立Samba服务程序的用户 |
||
#ldapsam:基于LDAP服务进行账户验证 |
||
load printers = yes |
#设置在Samba服务启动时是否共享打印机设备 | |
cups options = raw |
#打印机的选项 | |
[homes] | #共享参数 | |
comment = Home Directories | #描述信息 | |
browseable = no | #指定共享信息是否在“网上邻居”中可见 | |
writable = yes | #定义是否可以执行写入操作,与"read only“相反 | |
[printers] | #打印机共享参数 |
[root@study ~]# mv /etc/samba/smb.conf /etc/samba/smb.conf.bak #备份配置文件
[root@study ~]# cat /etc/samba/smb.conf.bak |grep -v "#" |grep -v ";" | grep -v "^$" > /etc/samba/smb.conf #去掉以#号分号;开头的注释信息。
[root@study ~]# cat /etc/samba/smb.conf
配置共享资源
用于设置Samba服务程序的参数以及作用
参数 | 作用 |
[database] | 共享名称为database |
comment = Do not arbitrarily modify the database file | 警告用户不要随意修改数据库 |
path = /home/database | 共享目录为/home/database |
public = no | 关闭“所有人可见” |
writeable yes | 允许写入操作 |
第1步:创建用于访问共享资源的账户信息。在Centos7中Samba服务程序默认使用的是用户口令认证模式(user)。
pdbedit命令用于管理SMB服务程序的账户信息数据库,格式为“pdbedit [选项] 账户”。在第一次把账户信息写入到数据库时需要使用-a参数,以后执行修改密码、删除账户等操作时就不在需要该参数。
用于pdbedit命令的参数以及作用
参数 | 作用 |
-a 用户名 | 建立Samba账户 |
-x 用户名 | 删除Samba账户 |
-L | 列出账户列表 |
-Lv | 列出账户详细信息的列表 |
[root@study ~]# useradd Samba
[root@study ~]# id Samba
uid=1002(Samba) gid=1002(Samba) groups=1002(Samba)
[root@study ~]# pdbedit -a -u Samba
new password:输入密码
retype new password:再次输入密码
第2步:创建用于共享资源的文件目录。应当考虑文件读写权限问题。
[root@study ~]# mkdir /home/database
[root@study ~]# chown -Rf Samba:Samba /home/database
第3步:在Samba服务程序的主配置文件中,写入共享信息。
[root@study ~]# vim /etc/samba/smb.conf
1 [global]
2 workgroup = MYGROUP
3 server string = Samba Server Version %v
4 log file = /var/log/samba/log.%m
5 max log size = 50
6 security = user
7 passdb backend = tdbsam
8 load printers = yes
9 cups options = raw
10 [database]
11 comment = Do not arbitrarily modify the database file
12 path = /home/database
13 public = no
14 writable = yes
第4步:重启smb服务
[root@study ~]# systemctl restart smb
[root@study ~]# systemctl enable smb
利用Windows访问文件共享服务
Linux:192.168.218.138
Win+r
\\192.168.218.138
使用刚才设值的用户名密码登录测试增删改权限
Linux访问文件共享服务
Windows:192.168.0.105
[root@study ~]# yum install cifs-utils -y
在Linux客户端,按照Samba服务的用户名、密码、共享域的顺序将相关信息写入到一个认证文件中。权限修改为仅root管理员读写:
[root@study ~]# vim auth.smb
username=Samba
password=123456
domain=MYGROUP
[root@study ~]# chmod 600 auth.smb
在Linux客户端创建一个用于挂在Samba服务共享资源的目录,挂载信息写入到/etc/fstab文件中,确保挂载信息
[root@study ~]# vim /etc/fstab
//192.168.218.138/database /database cifs credentials=/root/auth.smb 0 0在服务器重启后依然生效:
[root@study ~]# mount -a
Linux客户端成功挂载了Samba服务的共享资源。可以看到Windows系统创建的qer.txt文件
[root@study ~]# cat /database/qer.txt
Linux使用Samba实现文件共享的更多相关文章
- linux和Windows实现文件共享之samba的安装与配置
背景: 项目需求linux的一个目录,需要在两台windows目录上面进行同时共享. 使用mount时发现,通过mount将同一个linux上面的目录挂载在两台windows机器上时,会出现文件隐藏的 ...
- 《linux就该这么学》课堂笔记15 vsftpd文件传输、Samba/NFS文件共享
1.为了能够在如此复杂多样的设备之间(Windows.Linux.UNIX.Mac等不同的操作系统)解决问题解决文件传输问题,文件传输协议(FTP)应运而生. FTP服务器是按照FTP协议在互联网上提 ...
- 使用Samba实现文件共享
1987年,微软公司和英特尔公司,共同制定了SMB(Server Messages Block 服务消息块)协议,指在解决局域网内的文件或打印机等资源的共享问题,这也使得在多个主机之间共享文件变得越来 ...
- Linux服务-samba
目录 1. samba简介 2. samba访问 Linux服务-samba 1. samba简介 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成. 在 ...
- Linux安装samba
说明:samba的作用是实现window环境和linux环境下的文件共享,相当于window里的网络邻居,有一定的价值,但是随着时代的发展,现在用各种ssh软件登录linux实现文件共享和传输的场景越 ...
- linux之samba使用
工作中,很多时候,我导出文件,或者上传文件的时候经常失败,报samba fail,但我并不知道samba是干什么用的,也老是听同事说什么samba没有挂载,但我基本上不知道什么是samba,更不要说什 ...
- linux之SAMBA共享目录服务端架设
samba 共享目录 1.SAMBA服务概述 协议 监听端口137 架构 samba:Linux系统的一种文件共享程序服务 通常在主机文件共享的应用场景中,由于文件系统的差异化,Windows和L ...
- Linux下samba的安装与配置
背景 在window7下面虚拟了一个CentOS6.3,为了学习命令行就没有装图形包,所以我的CentOS是黑屏的那种,呵呵,当然了,VMWare提供 的增强功能我就不能用了(或许能 ...
- 利用Linux的Samba服务模拟NT域
利用Linux的Samba服务模拟NT域 Samba是一个与Windows NT具有相同协议的软件包.我们可以利用Samba服务来模拟 Windows NT域,使用户从Windows计算机上直接使用一 ...
随机推荐
- arcgis api 4.x for js 图层拓展篇之mapvLayer(附源码下载)
因为在项目开发过程中,使用的arcgis js api版本是4.7,并不能支持客户端渲染热力图,想到arcgis js api 4.x的渲染是基于canvas,故琢磨着是否能借助类似于mapV.ech ...
- 流程控制之if,while,for
流程控制之if,while,for 一.if语法 就一个条件 age_of_girl = 18 if age_of_girl < 25: print("小姐姐") 两个条件 ...
- Centos7 下安装python3及卸载
一.安装python3 1.安装依赖包 yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel read ...
- mtu测试
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/jeromezmzx007/article ...
- 201777010217-金云馨《面向对象程序设计(Java)》第二周学习总结
项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p ...
- 201871010113-刘兴瑞《面向对象程序设计(java)》第十四周学习总结
项目 内容 这个作业属于哪个课程 <任课教师博客主页链接>https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 <作业链接地址>http ...
- vscode笔记
一.修改操作栏字体 https://www.cnblogs.com/liuyangfirst/p/9759966.html 1.代码改写,进入默认安装的如下路径,搜索workbench 2.用Vs c ...
- 剑指Offer-28.数组中出现次数超过一半的数字(C++/Java)
题目: 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字.例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}.由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2.如 ...
- WPF Datagrid 动态生成列 并绑定数据
原文:WPF Datagrid 动态生成列 并绑定数据 说的是这里 因为列头是动态加载的 (后台for循环 一会能看到代码) 数据来源于左侧列 左侧列数据源 当然num1 属于临时的dome使用 可 ...
- 第四组项目总结(UML图设计)
第四组项目总结(UML图设计) 相关链接: 墨刀原型链接:https://pan.baidu.com/s/1qrVI_je8NONVHT_FwH6Pwg 需求文档链接:https://www.cnbl ...