Linux:SAMBA共享、NFS共享、Autofs自动挂载
SAMBA、NFS共享区别
NFS开源文件共享程序:NFS(NetworkFile System)是一个能够将多台Linux的远程主机数据挂载到本地目录的服务,属于轻量级的文件共享服务,不支持Linux与 Windows系统间的文件共享。
Samba服务程序是一款基于SMB协议并由服务端和客户端组成的开源文件共享软件,实现了Linux与Windows系统间的文件共享。也可以实现Linux与Linux之间的共享服务。
SMB(Server Messages Block)协议:实现局域网内文件或打印机等资源共享服务的协议。
SAMBA共享服务配置
samba服务器:192.168.10.10 Linux客户端:192.168.10.20 Windows客户端:192.168.10.30
Samba配置文件说明:
服务器端安装Samba服务:yum install samba -y
浏览配置文件:cat/etc/samba/smb.conf 过滤掉注释
mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
cat /etc/samba/smb.conf.bak | grep -v "#" | grep -v ";" | grep -v "^$" > /etc/samba/smb.conf
| [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:需由SMB服务验证来访主机提供的口令后才可建立访问,更加的安全。 | ||
| #server:使用独立的远程主机验证来访主机提供的口令(集中管理帐号)。 | ||
| #domain:使用PDC来完成验证 | ||
| passdb backend = tdbsam | #定义用户后台的类型,共有3种。 | |
| #smbpasswd:使用SMB服务的smbpasswd命令给系统用户设置SMB密码。 | ||
| #tdbsam:创建数据库文件并使用pdbedit建立SMB独立的用户。 | ||
| #ldapsam:基于LDAP服务进行帐户验证。 | ||
| load printers = yes | #设置是否当Samba服务启动时共享打印机设备。 | |
| cups options = raw | #打印机的选项 | |
| [homes] | #共享参数 | |
| comment = Home Directories | #描述信息 | |
| browseable = no | #指定共享是否在“网上邻居”中可见。 | |
| writable = yes | #定义是否可写入操作,与"read only"相反。 | |
| [printers] | #打印机共享参数 | |
| comment = All Printers | ||
| path = /var/spool/samba | #共享文件的实际路径(重要)。 | |
| browseable = no | ||
| guest ok = no | #是否所有人可见,等同于"public"参数。 | |
| writable = no | ||
| printable = yes | ||
| 参数 | 作用 |
| [linuxprobe] | 共享名称为linuxprobe |
| comment = Do not arbitrarily modify the database file | 警告用户不要随意修改数据库 |
| path = /home/database | 共享文件夹在/home/database |
| public = no | 关闭所有人可见 |
| writable = yes | 允许写入操作 |
----------------------------------------------Linux服务器与Windows之间的共享实验(user口令验证)-------------------------------------
第1步:更改为user验证模式,后台用户类型为tdbsam
security = user
passdb backend = tdbsam
第2步:创建共享文件夹:
mkdir /database
第2步:描述共享文件夹信息。
在SMB服务主配置文件的最下面追加共享文件夹的配置参数:
[database]
comment = Do not arbitrarily modify the database file
path = /database
public = no
writable = yes
第3步:创建SMB服务独立的帐号。
SMB服务配置文件中密码数据库后台类型为"tdbsam",所以这个帐户和口令是Samba服务的独立帐号信息,我们需要使用pdbedit命令来创建SMB服务的用户数据库
pdbedit命令用于管理SMB服务的帐户信息数据库,格式为:“pdbedit [选项] 帐户”。
| 参数 | 作用 |
| -a 用户名 | 建立Samba用户 |
| -x 用户名 | 删除Samba用户 |
| -L | 列出用户列表 |
| -Lv | 列出用户详细信息的列表 |
先建立系统用户smbuser,再samba用户映射到系统用户:
useradd smbuser
此系统用户提升为SMB用户:
[root@linuxprobe ~]# pdbedit -a -u smbuser
new password:设置SMB服务独立的密码
retype new password:
Unix username: smbuser
NT username:
Account Flags: [U ]
User SID: S-1-5-21-4146456071-3435711857-2069708454-1000
Primary Group SID: S-1-5-21-4146456071-3435711857-2069708454-513
Full Name:
Home Directory: \\linuxprobe\smbuser
HomeDir Drive:
Logon Script:
Profile Path: \\linuxprobe\smbuser\profile
Domain: LINUXPROBE
Account desc:
Workstations:
Munged dial:
Logon time: 0
Logoff time: Wed, 06 Feb 2036 23:06:39 CST
Kickoff time: Wed, 06 Feb 2036 23:06:39 CST
Password last set: Sat, 11 Jul 2015 18:27:04 CST
Password can change: Sat, 11 Jul 2015 18:27:04 CST
Password must change: never
Last bad password : 0
Bad password count : 0
Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
第4步:允许防火墙和SELinux设置:命令
iptables -F
service iptables save
chown -Rf smbuser:smbuser /database
setsebool -P samba_enable_home_dirs on
semanage fcontext -a -t samba_share_t /database
restorecon -Rv /database/
第5步:验证
-------------------------------------------------------------Linux与Linux之间的共享---------------------------------------------------------------
NFS共享
第1步:创建NFS服务端的共享目录。
清空iptables iptables -F service iptables save
创建nfsfile共享目录:mkdir /nfsfile
为共享目录设置权限(让其他人可以有写入权限):chmod -Rf 777 /nfsfile
写入一个文件,用于NFS客户端读取:echo "welcome to linuxprobe.com" > /nfsfile/readme
NFS服务端配置文件是"/etc/exports"
[root@linuxprobe ~]# vim /etc/exports
//格式为:共享目录的绝对路径 允许访问NFS资源的客户端(权限参数)
/nfsfile 192.168.10.*(rw,sync,root_squash)
NFS配置共享的参数有:
| 参数 | 作用 |
| ro | 只读默认 |
| rw | 读写模式 |
| root_squash | 当NFS客户端使用root用户访问时,映射为NFS服务端的匿名用户。 |
| no_root_squash | 当NFS客户端使用root用户访问时,映射为NFS服务端的root用户。 |
| all_squash | 不论NFS客户端使用任何帐户,均映射为NFS服务端的匿名用户。 |
| sync | 同时将数据写入到内存与硬盘中,保证不丢失数据。 |
| async | 优先将数据保存到内存,然后再写入硬盘,效率更高,但可能造成数据丢失。 |
第2步:启动NFS服务端
红帽RHEL7系统中RPC服务已经默认运行(active)了,所以无需再配置RPC服务啦
直接启动NFS服务端
systemctl start nfs-server
systemctl enable nfs-server
第3步:配置NFS客户端
查询远程NFS服务端中可用的共享资源:(showmount命令用于查询NFS服务端共享信息,格式为:“showmount [参数] [远程主机])
| 参数 | 作用 |
| -e | 显示NFS服务端的共享列表 |
| -a | 显示本机挂载NFS资源的情况 |
| -v | 显示版本号 |
[root@linuxprobe ~]# showmount -e 192.168.10.10
Export list for 192.168.10.10:
/nfsfile (everyone)
创建本地挂载目录: mkdir /nfsfile
挂载: mount -t nfs 192.168.10.10:/nfsfile /nfsfile
查看到刚刚写入文件内容:cat /nfsfile/readme
开机后自动将NFS资源挂载到本地,可以通过修改fstab文件来实现
[root@linuxprobe ~]# vim /etc/fstab
192.168.10.10:/nfsfile /nfsfile nfs defaults 0 0
Autofs自动挂载
进入自动挂载目录中:
Linux:SAMBA共享、NFS共享、Autofs自动挂载的更多相关文章
- Linux服务——二、配置NFS及autofs自动挂载服务
一.NFS服务配置步骤 NFS的作用:能够使两台虚拟机之间实现文件共享.数据同步 准备:主机名.网络.yum源 Server端: 1.安装nfs-util和rpcbind:(图形化自带) [root@ ...
- NFS使用autofs自动挂载
NFS自动挂载设置在/etc/fstab和/etc/rc.local可能挂载不成功,假如是服务端NFS宕机还可能导致客户端无法启动,可以使用autofs实现自动挂载 安装autofs yum -y i ...
- linux autofs自动挂载
autofs:自动挂载器 自动挂载器是一个监视目录的守护进程,并在目标子目录被引用时,自动执行预定义的NFS挂载 自动挂载器由autofs服务脚本管理 自动挂载器由auto.master配置文件进行配 ...
- 配置samba和NFS共享服务
配置samba和NFS共享服务 1案例1:配置SMB文件夹共享 1.1问题 本例要求在虚拟机server0上发布两个共享文件夹,具体要求如下: 此服务器 ...
- centos samba/squid 配置 samba配置 smbclient mount fstab自动挂载samba curl -xlocalhost:3128 www.qq.com squid配置 3128 DNSPOD 第二十七节课
centos samba/squid 配置 samba配置 smbclient mount fstab自动挂载samba curl -xlocalhost:3128 www.qq.com squ ...
- autofs 自动挂载.
autofs 自动挂载. 操作环境:redhat 6 一.autofs 说明 自动挂载器是一个监视目录的守护进程,并在目标子目录被引用时,自动执行预定义的挂载 自动挂载器由autofs服务脚本管理 自 ...
- Linux 通过 UUID 在 fstab 中自动挂载分区
Linux 通过 UUID 在 fstab 中自动挂载分区 summerm6关注 2019.10.17 16:29:00字数 1,542阅读 605 https://xiexianbin.cn/lin ...
- 2-5-NFS服务器配置和autofs自动挂载-配置Samba服务器配置现实文件共享
大纲: NFS服务器运行原理 实战配置NFS服务器 配置Samba服务器配置现实文件共享 ----------------------------------------------- 问题: # 怎 ...
- 实现nfs持久挂载+autofs自动挂载
实验环境: 两台主机 node4:192.168.37.44 NFS服务器 node2:192.168.37.22 客户端 在nfs服务器,先安装nfs和rpcbind [root@node4 fen ...
随机推荐
- 4.2 Context-Free Grammars
4.2 Context-Free Grammars Grammars were introduced in Section 2.2 to systematically describe the syn ...
- 第八周 Leetcode 44. Wildcard Matching 水题 (HARD)
Leetcode 44 实现一种类似正则表达式的字符串匹配功能. 复杂度要求不高, 调代码稍微费点劲.. 好像跟贪心也不太沾边, 总之 *把待匹配串分成若干个子串, 每一个子串尽量在模式串中靠前的部分 ...
- SVN导出指定版本差异文件 ***
当一个项目进入运营维护阶段以后,不会再频繁地更新全部源文件到服务器,这个时间的修改大多是局部的,因此更新文件只需更新修改过的文件,其他 没有修改过的文件就没有必要上载到服务器.但一个稍微上规模的项目文 ...
- uva11149
Consider an n-by-n matrix A. We define Ak = A ∗ A ∗ . . . ∗ A (k times). Here, ∗ denotes the usual m ...
- gitlab-ce平台调试
SMTP使用QQ exmail 遇到的问题:使用qinrui@easyunion.net对516059158@qq.com能发送验证邮件,但是无法打开验证连接
- 贪心 Codeforces Round #135 (Div. 2) C. Color Stripe
题目传送门 /* 贪心:当m == 2时,结果肯定是ABABAB或BABABA,取最小改变量:当m > 2时,当与前一个相等时, 改变一个字母 同时不和下一个相等就是最优的解法 */ #incl ...
- 设计模式学习之代理模式(Proxy)
一.代理模式的初衷 不想让客户端直接访问具体实现接口,客户端不应该直接访问具体实现,一般会涉及到以下四个对象 业务接口:定义客户端访问的接口,是实现类和代理类都需要实现的 实现类:实现了业务接口,真正 ...
- Java 8 (2) 使用Lambda表达式
什么是Lambda? 可以把Lambda表达式理解为 简洁的表示可传递的匿名函数的一种方式:它没有名称,但它有参数列表.函数主体.返回类型,可能还有一个可以抛出的异常列表. 使用Lambda可以让你更 ...
- MVC的学习-EF的认识
1.什么是EF EF又称持久层框架:平时C#定义的变量是保存到内存中的,一断电就没有了.而持久的意思是数据保存到硬盘盘里(数据库的sql查询是在硬盘里进行的,所以速度很慢).EF帮我们将一个对象保存到 ...
- 【C++】Item18. Make interfaces easy to use correctly and hard to use incorrectly
接口容易被正确使用,不易被误用 c++简单工厂模式时,初级实现为ITest* CreateTestOld(), 然后用户负责释放返回的对象.如果忘记释放就会造成memory leak,所以在设计工厂接 ...