nfs:网络文件系统。传统意义来,文件系统是在内核中实现的。
rpc:远程主机调用协议。一部分功能是由本地程序完成,另一部分是由远程主机上的函数完成。
NFC基于IP认证:
nfs的端口tcp/udp 2049
rcp的端口:111
# rpcinfo -p 查看rpc服务的进程portmapper
# rpcinfo -p 172.16.0.1 查看其它主机向rpc注册的服务
[[email protected] /]# service nfs start 启动服务
Starting NFS services: [ OK ]
Starting NFS quotas: [ OK ]
Starting NFS mountd: [ OK ]
Starting NFS daemon: [ OK ]
Starting RPC idmapd: [ OK ]
nfs的配置文件路径:
/etc/exports 文件的项的格式很简单。需要共享一个文件系统,只需要编辑/etc/exports并使用下面的格式给出这个文件系统和选项即可
配置nfs:
1,创建一个目录
# mkdir /shared/nfs -pv
2,编辑# vi /etc/exports
/shared/nfs 172.16.250.81(rw) 172.16.249.134(ro)
# service nfs restart 重启即可
查看主机共享的文件系统和可访问的主机(showmount -e ip 可以查看nfs服务器端共享的文件系统)
[[email protected] local /]# showmount -e 172.16.249.134
Export list for 172.16.249.134:
/shared/nfs 172.16.249.134,172.16.250.81
在客户端挂载挂载共享的文件系统:
[[email protected] /]# mount -t nfs 172.16.249.134:/shared/nfs /mnt
[[email protected] /]# cd mnt/
nfs的配置文件的常用选项:
secure:缺省选项,使用了1024以下的tcp/ip端口实现NFS的练级诶,指定insecure可以禁用这个选项。
rw:该选项允许NFS 客户机进行读写访问,缺省选项是只读的。
async:该选项是改进性能的,如果没有完全关闭NFS的守护进程就是从新启动NFS服务,这也可能会造成数据丢失,缺省值设置为sync。
no_wdelay:这个选项关闭写延迟时,如果设置了async,那么Nfs就会忽略这个选项
nohide:如果将一个目录挂载到另一个目录之上,那么原来的目录就像空看起来跟空的一样,要禁用这种行为,需要启用hide选项。
no_subtree_check:这个选项关闭子树检查,子树检查会执行一些不想忽略的安全性检查,缺省选项是启用子树检查。
no_auth_nlm:该选项也可以作为insecure_locks指定,告诉nfs守护进行不要对加锁请求进行认证,如果关心安全性问题,那么久避免使用这个选项,缺省选项是auth_nlm 或secure_locks
mp(mountpoint=path):通过显式的声明这个选项,NFS要求挂载所导出的目录。
fsid=num: 这个选项通常都在NFS故障恢复的情况中使用。
导出选项:
rw,async,sync,root_squash,no_root_squash,all_squash,anonuid,anongid
exportfs :维护exports文件导出的文件系统表的专用工具:
exportfs -ar :重新导出所有的文件系统
exportfs -au :关闭导出的所有文件系统
exportfs -u FS :关闭指定导出的文件系统
开机自动挂载NFS,编辑/etc/fstab
server:/path/to/exported_fs /mount_point fs defaults,_netdev 0 0
_netdev选项是系统检查发现如果加载不了就会超时跳过,不会一直卡住
================= samba 基本应用======================
smb:server message block
cifs:common intelnet file system
端口:137/udp,138/udp,139/tcp,445/tcp
NetBios:Windows基于主机实现相互通信的机制。(15个字符)
samba的服务:
nmbd:netbios 主机解析
smbd:cifs 主机发现
winbindd:
查看所有samba开头的安装包:
[[email protected] ~]# yum list all samba*
共享访问方式:
wind下是的unc路径:\\server\path
linux下是smbclient:
1,[[email protected] ~]# smbclient -L 172.16.250.81 -U test (-L指定主机,-U指定用户 输入密码)
获取到共享信息之后,
[[email protected] ~]# smbclient //172.16.250.81/pack -U test
输入ls可查看,lcd 可以切换目录,put 可以上传文件
2,挂载的方式进行访问
[[email protected] ~]# mount -t cifs //172.16.250.81/pack /mnt -o username=test,password=test
samba安装配置:
samba安装:
[[email protected] /]# yum install -y samba
服务脚本:
/etc/rc.d/init.d/nmb 提供的是upd的协议第一次启动需要
/etc/rc.d/init.d/smb samba的共享服务,只要修改,必须重启。
主配置文件:
/etc/samba/smb.conf samba的主配置文件
samba用户:都是系统用户,但是密码samba服务都自有密码文件。
# smbpasswd 用户将系统用户转换为samba用户
启用samba服务:
[[email protected] ~]# service nmb start;service smb start
# chkconfig smb on
# chkconfig nmb on 把服务添加到开机启动
[[email protected] ~]# netstat -tnul查看端口
445,137,138,139
修改linux下的工作组名称,编辑主配置文件smb.conf:把mygroup修改成wordgroup
workgroup = WORDGROUP
重启samba服务:
[[email protected] ~]# service nmb restart;service smb restart
[[email protected] ~]# useradd smbuser1 新建smbuser1系统用户
[[email protected] ~]# smbpasswd -a smbuser1 添加系统用户为samba用户
{-a添加系统用户为samba用户|-d禁用用户| -e启用用户 | -x删除}
然后在wind资源管理器即可访问. 在linux下切换至smbuser1用户在该用户的家目录即可查看文件夹
smb.conf配置文件:
[global]
workgroup = MYGROUP
server string = Samba Server Version 4.0
log file = /var/log/samba/log.%m
max log size = 50
security = user
passdb backend = tdbsam
[vmhshare]
comment = This is share
path = /var/www/share
guest ok = no
writable = yes
全局设定:
特定共享的设定
私有家目录:
打印机共享:
自定义共享:
[shared] 共享名
path=/shared/samba 共享目录路径
comment= hello test. 共享注释
guest ok = yes 是否公开
wiritable=yes 是否可写
readd only=yes 同上
browseables =no 是否浏览
write list=+staff
[[email protected] share]# testparm 测试配置文件语法错误
即可测试访问…
[[email protected] ~]# smbclient //172.16.249.134/shared -U smbuser1
测试之后不能上传,所以得知共享权限是取共享和文件系统权限的交集所以再次修改文件系统的权限,设置为smbuser1对/shared/samba文件夹由可读写执行权限
[[email protected] share]# setfacl -m u:smbuser1:rwx /shared/samba/
安装samba图形界面
[[email protected] /]# yum install samba-swat -y
[[email protected] /]# cd /etc/xinetd.d/
编辑配置文件# vim swat:
only_from = 172.16.0.0/16
disable = no
[[email protected] xinetd.d]# service xinetd start 启用服务
[[email protected] xinetd.d]# ss -tnl 查看901端口是否启动
在其他ie浏览器访问输入root密码 即可:http://172.16.249.134:901/