NFS服务(基于CentOS 7.0)

NFS(Network File System),网络文件系统,是linux与linux之间进行文件共享的服务,在NFS应用,本地NFS的客户端可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。

安装服务

[root@nfs-server ~]# yum install nfs-utils rpcbind -y

服务配置

NFS服务安装后,并没有任何共享配置,需要自己新建一个目录进行共享

[root@nfs-server ~]# echo "/share *(sync,rw)"  >> /etc/exports  #/share是共享的目录,*表示所有可访问该共享的ip,可以写一个ip地址或者网络,sync表示同步类型,rw表示访问权限
[root@nfs-server ~]# mkdir /share/    #创建目录

共享参数说明(绿色常用):

  ro                      只读访问

  rw                      读写访问

  sync                    所有数据在请求时写入共享

  async                  在写入数据前可以相应请求

  hide                    在NFS共享目录中不共享其子目录

  no_hide                 共享NFS目录的子目录

  secure                  NFS通过1024以下的安全TCP/IP端口发送

  insecure                NFS通过1024以上的端口发送

  wdelay                  如果多个用户要写入NFS目录,则归组写入(默认)

  no_wdelay               如果多个用户要写入NFS目录,则立即写入,当使用async时,无需此设置。

  subtree_check           如果共享/usr/bin之类的子目录时,强制NFS检查父目录的权限(默认)

  no_subtree_check        和上面相对,不检查父目录权限

  all_squash              共享文件的UID和GID映射匿名用户anonymous,适合公用目录

  no_all_squash           保留共享文件的UID和GID(默认)

  root_squash             root用户的所有请求映射成如anonymous用户一样的权限(默认)

  no_root_squas           root用户具有根目录的完全管理访问权限

  anonuid=xxx             指定NFS服务器/etc/passwd文件中匿名用户的UID

  anongid=xxx             指定NFS服务器/etc/passwd文件中匿名用户的GID

启动服务

nfs服务共享是通过rpc协议共享,所以需要同时开放nfs和rpc的防火墙访问

[root@nfs-server ~]# firewall-cmd --permanent --add-service=nfs
success
[root@nfs-server ~]# firewall-cmd --reload
success
[root@nfs-server ~]# firewall-cmd --permanent --add-service=rpc-bind
success
[root@nfs-server ~]# firewall-cmd --reload
success
[root@nfs-server ~]# systemctl start nfs-server
[root@nfs-server ~]# systemctl enable nfs-server
ln -s '/usr/lib/systemd/system/nfs-server.service' '/etc/systemd/system/nfs.target.wants/nfs-server.service'

服务验证

查询服务端的共享点

[root@nfs-client ~]# showmount -e 192.168.1.10  #前提是服务器端防火墙放行mountd服务
Export list for 192.168.1.10:
/share *

客户端挂载共享点

[root@nfs-client ~]# mount 192.168.1.10:/share /mnt      #挂载nfs共享的目录
[root@nfs-client ~]# df -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 48G 4.7G 44G 10% /
devtmpfs devtmpfs 103M 0 103M 0% /dev
tmpfs tmpfs 112M 0 112M 0% /dev/shm
tmpfs tmpfs 112M 4.8M 108M 5% /run
tmpfs tmpfs 112M 0 112M 0% /sys/fs/cgroup
/dev/sda1 xfs 297M 109M 189M 37% /boot
192.168.1.10:/share nfs4 48G 4.8G 44G 10% /mnt

写入数据验证

[root@nfs-client ~]# touch /mnt/abc.txt      #权限限制,匿名访问是用nobody用户,因为该目录本身对于其他用户的权限是没有写入权限
touch: cannot touch ?.mnt/abc.txt?. Permission denied

修改服务端共享点目录的权限

[root@nfs-server ~]# chmod  777 /share/

再次验证写入即可

[root@nfs-client ~]# touch /mnt/abc.txt
[root@nfs-client ~]# ls /mnt/abc.txt
/mnt/abc.txt

crond服务

在linux中用于设置周期性被执行的指令,在特定的时间点执行一项作业,并且在以后相同的时间点重复执行

crond由多个配置文件和系统文件控制,每个用户对应一个配置文件。

crontab管理工具

命令格式:

  crontab [选项] [参数]

选项说明:

  -l  列出当前用户的计划任务

  -r  删除当前用户所有的计划任务

  -e  编辑当前用户的计划任务

  -u  指定用户

配置周期作业字段组成:

  示例:* * * * *  /usr/bin/echo "1111111" >> /root/aaa.txt

  说明:每分钟向aaa.txt追加一行1111111

    第一个星号表示分钟:0-59,*表所有,下同

    第二个星号表示小时:0-23

    第三个星号表示日期:1-31

    第四个星号表示月份:1-12

    第五个星号表示周几:0-7(0和7表示周日)

    注:*表示始终,即每分钟、每小时、每天、每月、每周几,可以用数字表示

    注:x-y        表示范围

x,y        表示一个类,列表

例:分钟位  5,10-13,17         表示每小时5、10、11、12、13、17分钟执行

*/x        x表示时间间隔

    /usr/bin/echo "1111111" >> /root/aaa.txt  执行的命令,命令关键字必须是绝对路径

计划任务示例:

[root@crond-test ~]# crontab -e
50 7 * * * /sbin/service sshd start #每天早上7:50自动开启sshd服务,22点50时关闭
50 22 * * * /sbin/service sshd stop
0 * */5 * * /bin/rm -rf /var/ftp/pub/* #每隔5天清空一次FTP服务器公共目录/var/ftp/pub
30 7 * * 6 /sbin/service httpd restart #每周六的7:30时,重新启动httpd服务
30 17 * * 1,3,5 /bin/tar jcvf httpdconf.tar.bz2 /etc/httpd #每周一、三、五的17:30时,打包备份/etc/httpd目录
[root@crond-test ~]# crontab -e -u jerry
55 23 * * 7 /bin/cp /etc/passwd /home/jerry/pwd.txt #jerry用户每周日晚上23:55时将“/etc/passwd”文件的内容复制到宿主目录中,保存为pwd.txt文件

   

Linux基础系列-Day7的更多相关文章

  1. Linux基础系列-Day2

    基础命令(文件内容管理) 1.cat:在当前终端显示文本文件内容 格式:cat [文件路径] -n 从1开始对所有输出的行数编号 -b 和-n相似,只不过对于空白行不编号:2.head:从文件内容开头 ...

  2. Linux基础系列-Day1

    Linux发展简史 Unix:1969年由美国电话电报公司(AT&T)贝尔实验室的两个工程师所创造的操作系统,它允许计算机同时处理多用户和程序. BSD:重要的Unix分支,1977年由加州大 ...

  3. Linux基础系列—Linux内核源码目录结构

    /** ****************************************************************************** * @author    暴走的小 ...

  4. Linux基础系列—Linux体系结构和Linux内核结构

    /** ****************************************************************************** * @author    暴走的小 ...

  5. Linux基础系列-Day8

    Shell编程基础 Shell介绍 Shell俗称壳(用来区别于核),是指“提供使用者使用界面”的软件(命令解析器).它类似于windows下的的cmd.exe.它接收用户命令,然后调用相应的应用程序 ...

  6. Linux基础系列-Day6

    Samba服务(基于CentOS 7.0) Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成,Samba主要用于Linux或UNIX和Windows系统之 ...

  7. Linux基础系列-Day5

    网络管理 ifconfig网络管理工具 ifconfig依赖于命令中使用一些选项属性,不仅可以被用来简单地获取网络接口配置信息,还可以修改这些配置,但是通过ifconfig修改的通常为临时配置,即系统 ...

  8. Linux基础系列-Day4

    top系统监控 top命令可以实时动态地查看系统的整体运行情况,是一个综合了多方信息监测系统性能和运行信息的实用工具.通过top命令所提供的互动式界面,用热键可以管理. [root@centos-py ...

  9. Linux基础系列-Day3

    Vim文本编辑器 •Linux设计的重要原则是信息存储在基于文本的文件中.  注:Linux“一切皆文件”是指包含文本文件和用户不可读的二进制文件(如block设备文件) •文本文件:无格式文件,作用 ...

随机推荐

  1. 【BZOJ3998】弦论 [SAM]

    弦论 Time Limit: 10 Sec  Memory Limit: 256 MB[Submit][Status][Discuss] Description 对于一个给定长度为N的字符串,求它的第 ...

  2. lua滚动文字效果

    基本的思想都是创建一个clippingNode,将要截取的节点添加到clippingNode中,节点加上action即可. 下面是左右滚动的代码,如果是上下滚动,更简单了,只需修改Y坐标即可,都不用动 ...

  3. Java21个基础知识点

    类装载器就是寻找类的字节码文件,并构造出类在JVM内部表示的对象组件.在Java中,类装载器把一个类装入JVM中,要经过以下步骤: (1) 装载:查找和导入Class文件: (2) 链接:把类的二进制 ...

  4. Linux 入门记录:十九、Linux 包管理工具 RPM

    一.源代码管理 绝大多数开源软件都是直接以源代码形式发布的,一般会被打包为 tar.gz 的归档压缩文件.程序源代码需要编译为二进制可执行文件后才能够运行使用.源代码的基本编译流程为: ./confi ...

  5. 64_c2

    coin-or-Bcp-1.4.3-3.fc26.i686.rpm 22-May-2017 21:07 250866 coin-or-Bcp-1.4.3-3.fc26.x86_64.rpm 22-Ma ...

  6. 己动手创建最精简的Linux

    己动手创建最精简的Linux http://blog.sina.com.cn/s/blog_71c87c170101e7ru.html 首次 LFS 搭建全过程 http://zmyxn.blog.5 ...

  7. redis线程安全性

    总体来说快速的原因如下: 1)绝大部分请求是纯粹的内存操作(非常快速) 2)采用单线程,避免了不必要的上下文切换和竞争条件 3)非阻塞IO 内部实现采用epoll,采用了epoll+自己实现的简单的事 ...

  8. 图论-强连通分量-Tarjan算法

    有关概念: 如果图中两个结点可以相互通达,则称两个结点强连通. 如果有向图G的每两个结点都强连通,称G是一个强连通图. 有向图的极大强连通子图(没有被其他强连通子图包含),称为强连通分量.(这个定义在 ...

  9. saltstack安装和配置

    [root@web9 salt]# vi filetest.sls //ADD file_test: file.managed: - name: /tmp/lulu.com - source: sal ...

  10. WordPress个人博客搭建

    搭建LNMP环境 请参考前面的博文自行搭建 部署WordPress #创建数据库和用户 mysql -uroot -p123456 -S /data/3306/mysql.sock create da ...