飞道的博客

Linux文件服务NFS共享存储服务

416人阅读  评论(0)

  • 作者简介:一名99年软件运维应届毕业生,正在自学云计算课程。
  • 宣言:人生就是B(birth)和D(death)之间的C(choise),做好每一个选择。
  • 创作不易,动动小手给个点赞加关注吧,有什么意见评论区告诉我,一起学习。 

文章目录

 前言

一、NFS简介

二、安装nfs-utils

三、NFS的特点

四、实验的步骤

1、服务端安装nfs-utils

2、创建共享目录

3、配置文件设置分享

4、关闭防火墙并启动服务

5、客户端安装nfs-utils并启动

6、查看存储端共享

 7、挂载

7.1、手动挂载

7.2、fstab自动挂载

7.3、强制卸载挂载

8、查看挂载

9、客户端验证共享目录的访问

9.1、服务器创建内容

9.2、客户端查看共享文件内容

 SSH远程管理

1、查询SSH是否安装

2.启动服务

3、使用SSH远程管理

3.1、远程目标主机,并创建文件

 3.2、使用目标主机查看文件是否创建成功

总结


 前言

        本篇文章介绍一下NFS共享存储服务实验的步骤以及SSH远程服务的使用。

一、NFS简介

        NFS(Network File System)网络文件系统,是Sun公司开发的,多用于Unix操作系统中,它是连 接在网络上的计算机之间共享文件的一种方法,使远程的文件使用如同使用本地文件一样没有什么区 别,更适合于字符命令方式完成网络之间的文件共享。Linux/Unix系统之间共享文件的一种协议NFS的客户端主要为Linux,支持多节点同时挂载以及并发写入,提供文件共享服务,为Web Server配置集群中的后端存储。

二、安装nfs-utils

        在centos7中需要先安装nfs-utils软件包来提供共享服务,用于NFS共享文件与访问。


  
  1. [root@localhost ~] # rpm -q nfs-utils //检查是否安装
  2. [root@localhost ~] # yum -y install nfs-utils //安装nfs-utils
  3. [root@localhost ~] # systemctl start nfs-server //启动服务
  4. [root@localhost ~] # systemctl enable nfs-server //开机自启

三、NFS的特点

  • 不占本地工作站的磁盘空间   
  • 通过同步写磁盘可以实现分布式处理功能   
  • 利用字符命令方式,高性能,可灵活配置   
  • 扩充新的资源或环境时不需要改变现有的工作环境

四、实验的步骤

  1. 服务端安装nfs-utils
  2. 创建共享目录
  3. 配置文件设置分享
  4. 启动服务
  5. 客户端安装nfs-utils
  6. 查看存储端共享
  7. 手动挂载
  8. .查看挂载
  9. 客户端验证共享目录的访问

1、服务端安装nfs-utils


  
  1. [root@localhost ~] # rpm -q rpcbind nfs-utils //查询是否安装
  2. [root@localhost ~] # yum install -y nfs-utils //安装nfs软件包

2、创建共享目录

[root@localhost ~]# mkdir -p /test/web       //创建文件夹作为待共享文件

3、配置文件设置分享

        NFS的配置文件在/etc/exports,文件默认为空的,表示无任何共享。
在exports中配置共享文件格式为:共享文件位置    客户端IP(可以是一个网段)  (权限)。
例如:将服务器的/test/web文件共享给192.168.79.0/24网段,允许只读,配置如下


  
  1. [root@localhost ~] # vim /etc/exports
  2. /test/web 192.168 .79 .0/ 24 (ro)
  • ro:代表只读,o代表only
  • rw:代表读写

当文件需要共享给多个对象且分配不同的权限,只需要用空格隔开指定多个

4、关闭防火墙并启动服务

        需要关闭防火墙以及Linux的防火墙,防止客户端无法访问,建议关闭开启自弃。


  
  1. [root@localhost ~] # systemctl stop firewalld //关闭防火墙
  2. [root@localhost ~] # systemctl disable firewalld //关闭防火墙开机自启
  3. [root@localhost ~] # setenforce 0 //关闭系统另一个防火墙
  4. [root@localhost ~] # vim /etc/selinux/config //进入配置
  5. SELINUX=disable //关闭开机自启
  6. [root@localhost ~] # systemctl start nfs-server //启动nfs服务
  7. [root@localhost ~] # systemctl enable nfs-server //设置开机自启
  8. [root@localhost ~] # exportfs -v //检查NFS输出是否正常

5、客户端安装nfs-utils并启动

        客户端如果要访问服务器分享的文件,也需要在主机上安装nfs-utils软件包。


  
  1. [root@localhost ~] # yum -y install nfs-utils //安装nfs-utils
  2. [root@localhost ~] # systemctl start nfs-server.service //启动nfs-utils
  3. [root@localhost ~] # systemctl enable nfs-server.service //设置开机自启

6、查看存储端共享

[root@localhost ~]# showmount -e 192.168.79.130     //查案NFS服务器可用目录

 7、挂载

7.1、手动挂载

        我们需要挂载的是目录需要将整个目录挂载到本地目录上,如果web下有具体的文件也不可以直接挂载文件,挂载一定是挂载目录。

[root@localhost ~]# mount -t nfs 192.168.79.130:/test/web  /var/www/html

7.2、fstab自动挂载

        修改/etc/fstab文件内容,加入NFS共享资源挂载设置文件系统格式为nfs。

        /etc/fstab文件的每一行都遵循以下格式:

        <device> <dir> <type> <options> <dump> <pass>

  • device:指定加载的磁盘分区或移动文件系统,除了指定设备文件外,也可以使用UUID、LABEL来指定分区;
  • dir:指定挂载点的路径;
  • type:指定文件系统的类型,包括ext2、ext3、reiserfs、nfs、vfat等
  • options:指定挂载的选项,默认为defaults,其他可用选项包括acl,noauto,ro等等;
  • dump:表示该挂载后的文件系统能否被dump备份命令作用;0表示不能,1表示每天都进行dump备份,2表示不定期进行dump操作。
  • pass:表示开机过程中是否校验扇区;0表示不要校验,1表示优先校验(一般为根目录),2表示为在1级别校验完后再进行校验;

  
  1. [root@localhost ~] # vim /etc/fstab
  2. 192.168 .79 .130:/test/web /var/www/html nfs defaults 0 0

7.3、强制卸载挂载

        当服务器突然停止了nfs服务,这个时候客户端就会出现卡死的现象用普通的umount命令是无法卸载的。

[root@localhost ~]# umount -lf  /var/www/html

使用 umount 命令卸载,其中-l 选项表示解除正在繁忙的文件系统,-f 选项表示强制。

8、查看挂载

        通过df命令来查看挂载情况,如下图所示,服务器下的/test/web已经被挂载到客户端主机的/var/www/html上了。

9、客户端验证共享目录的访问

        首先在服务器创建一个文件,在文件中输入一些内容,这个时候客户端也同时可以访问该文件的内容。

9.1、服务器创建内容

[root@localhost ~]# echo "这里是nfs共享资源" >> /test/web/index.html     //编写内容到index文件

9.2、客户端查看共享文件内容

 通过客户端来查看服务器的共享文件。


  
  1. [root@localhost ~] # cat /var/www/html/index.html
  2. 这里是nfs共享资源

 SSH远程管理

        linux中ssh是“Secure Shell”的缩写,是建立在应用层和传输层基础上的一种安全协议,用于计算机之间的加密登录;ssh既可以远程联机服务器,又可以借助ssh协议来传输数据,提供更安全的SFTP服务。

1、查询SSH是否安装


  
  1. [ root@localhost ~] # rpm -qa | grep ssh //查看是否安装ssh
  2. openssh-clients -7.4p1 -21.el7.x86_64
  3. openssh-server -7.4p1 -21.el7.x86_64
  4. libssh2 -1.8 .0 -4.el7.x86_64
  5. openssh -7.4p1 -21.el7.x86_64

如果没有安装使用命令:yum install openssh-server安装。

2.启动服务


  
  1. [root@localhost ~] # systemctl start sshd //启动服务
  2. [root@localhost ~] # netstat -antp | grep sshd //22端口提供SSH服务
  3. tcp 0 0 0.0 .0 .0: 22 0.0 .0 .0:* LISTEN 980/sshd
  4. tcp6 0 0 ::: 22 :::* LISTEN 980/sshd
  5. [root@localhost ~] # systemctl enable sshd //开机自启

3、使用SSH远程管理

3.1、远程目标主机,并创建文件


  
  1. [root@localhost ~] # ssh root@192.168.79.128
  2. The authenticity of host '192.168.79.128 (192.168.79.128)' can 't be established.
  3. ECDSA key fingerprint is SHA256:kkXlMjUlNdeXTvzRuJhng+yS34OH8Fi65CY7esfyr9g.
  4. ECDSA key fingerprint is MD5:be: 98:bf: 4a:cd:d8:d5: 48: 62:b2:c2:e3: 2c: 9d: 3a:d9.
  5. Are you sure you want to continue connecting (yes/no)? yes
  6. root@192.168.79.128's password: //这里输入目标用户的密码是秘闻输入
  7. Last login: Mon Dec 12 15:04:30 2022 from 192.168.79.130
  8. [root@localhost ~]# touch /test/130create //创建一个文件
  9. [root@localhost ~]# exit //退出登录
  10. 登出
  11. Connection to 192.168.79.128 closed.

通过查看ip可以得到是远程了目标主机的。

 3.2、使用目标主机查看文件是否创建成功


  
  1. [root@localhost ~] # ls /test
  2. 130create 192.168 .79 .130 dir log.txt m mountmsg share.txt tengine

 创建成功!!!


总结

        通过本篇文章学习NFS共享文件的操作。


转载:https://blog.csdn.net/s1429583654/article/details/128282662
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场