Linux 磁盘挂载和mount共享、NFS与防火墙配置

本文涉及的产品
云防火墙,500元 1000GB
简介:

一、Linux 磁盘挂载和mount共享


针对Linux服务器的磁盘挂载mount和共享做简单操作说明:

1、  查看已使用的磁盘情况

df –h


 

 

2、  查看所有磁盘

fdisk –l


 

3、  查看指定磁盘“/dev/xvde”的分区情况

fdisk -l /dev/xvde


 

如图可以看到,改磁盘并未分区

4、  我们现在需要将/dev/xvde磁盘挂载mount到文件系统的/opt/huiyy目录上,

首先对磁盘“/dev/xvde”分区(这里我们采用1个分区)

命令fdisk /dev/xvde回车,按如下操作进行:


 

输入w写入


 

使用fdisk –l查看刚刚分配的磁盘号


 

5、 格式化磁盘

命令mkfs -t ext3 /dev/xvde1

-t 指定格式化磁盘的文件系统类型为ext3,默认不指定为ext2(linux老文件系统类型)

后面跟刚刚创建的分区号“/dev/xvde1”


 

 

6、  挂载磁盘

a)        创建磁盘挂载目标文件夹

命令mkdir /opt/huiyy

b)        挂载磁盘

命令mount /dev/xvde1/opt/huiyy

c)        记录到/ext/fstab文件中(防止重启后挂载丢失)

命令vi /etc/fstab


 

至此磁盘挂载完成,现在我们可以向/opt/huiyy中写文件了,文件将会被写入到我们挂载的磁盘中。

 

7、  配置共享

共享目录“/opt/huiyy/resource”和“/opt/huiyy/log”权限“rw,sync,no_root_squash”

命令vi /etc/exports编辑内容后:wq保存退出


 

共享查看命令为 more/etc/exports


 

8、  客户端mount此目录

我们把以上配置共享目录的服务器作为服务器A,把我们现在准备mount共享目录的服务器作为服务器B

a)        登录服务器B

b)        mount目录 “/opt/huiyy/log”(其中61.132.254.160为服务器A)

mount  -t nfs -orw,bg,hard,nointr,rsize=32768,wsize=32768,tcp,vers=3,timeo=600,actimeo=061.132.254.160:/opt/huiyy/log /opt/huiyy/log

/opt/huiyy/log 是挂载到本机的目录,可以自己定义。

c)        保存mount挂载配置到/etc/fstab(防止服务器重启后挂载丢失)

命令vi /etc/fstab编辑

命令cat /etc/fstab查看配置


 

现在服务器B和文件源服务器A上都可以对目录“/opt/huiyy/log”下创建文件、目录了。

 


二、mount常用命令


1、启动NFS服务器

为了使NFS服务器能正常工作,需要启动portmap和nfs两个服务,并且portmap一定要先于nfs启动。

#service portmap start         

#service nfs start

RHEL4和5是portmap 和 nfs,RHEL6以后改名叫作rpcbind 和 nfs-server 

另外RHEL 7以后对服务的操作命令建议使用:systemctl [status|stop|start|restart] [serviceName] 

如:systemctl status rpcbind   、  systemctl restart nfs-server

 

2、查询NFS服务器状态

#service portmap status

#service nfs status

 

3、停止NFS服务器

要停止NFS运行时,需要先停止nfs服务再停止portmap服务,对于系统中有其他服务(如NIS)需要使用时,不需要停止portmap服务

#service nfs stop

#service portmap stop

 

4、重启portmap 和nfs 服务

#service portmap restart

#service nfs restart

#exportfs

 

5、设置NFS服务器的自动启动状态

对于实际的应用系统,每次启动LINUX系统后都手工启动nfs服务器是不现实的,需要设置系统在指定的运行级别自动启动portmap和nfs服务。

#chkconfig --list portmap

#chkconfig --list nfs

设置portmap和nfs服务在系统运行级别3和5自动启动。

#chkconfig --level 35 portmap on

#chkconfig --level 35 nfs on

 

6、服务器端使用showmount命令查询NFS的共享状态

#showmount –e       //默认查看自己共享的服务,前提是要DNS能解析自己,不然容易报错

#showmount –a IP    显示指定NFS服务器的客户端以及服务器端在客户端的挂载点

#showmount –d IP    显示指定NFS服务器在客户端的挂载点
#showmount –e IP    显示指定NFS服务器上的共享目录列表(或者叫输出列表)

 

7、显示已经与客户端连接上的目录信息

#showmount -a

 

8、客户端使用showmount命令查询NFS的共享状态

#showmount -e NFS服务器IP



三、mount与防火墙配置


如果服务器端的防火墙有开着的话,在我们执行mount的时候将会提示错误,如下:

mount:mount to NFS server '192.168.0.10' failed: System Error: No route to host.

这个主要是因为防火墙的问题导致的防火墙上开放对应端口即可
    
由于nfs服务需要开启 mountd,nfs,nlockmgr,portmapper,rquotad这5个服务,需要将这5个服务的端口加到iptables里面
     而nfs 和portmapper两个服务是固定端口的,nfs为2049,portmapper为111。其他的3个服务是用的随机端口,那就需要先把这3个服务的端口设置成固定的。

    用命令 rpcinfo -p 查看当前这5个服务的端口,并记录下来。

    其中nfs 2049、portmapper111,以及剩下3个服务的端口各记录一个,这样我们就得到了5个端口,如下:

    nfs 2049

    portmapper 111

    mountd 976

    rquotad 966

    nlockmgr 33993

    下面将mountd、rquotad、nlockmgr这3个端口设置为固定端口,修改/etc/service,添加以下内容:

    vi/etc/services

     在文件的最后一行添加:
    mountd  976/tcp
    mountd  976/udp
    rquotad  966/tcp
    rquotad  966/udp
    nlockmgr 33993/tcp
    nlockmgr 33993/udp
    保存并退出。

   

    然后设置nfs配置文件,配置端口使 rquotad、nlockmgr、mountd的端口固定,如下:

    vi/etc/sysconfig/nfs

RQUOTAD_PORT=966
LOCKD_TCPPORT=33993
LOCKD_UDPPORT=33993
MOUNTD_PORT=976

其中 portmapper和nfs 服务端口是固定的分别是 111和2049

    重启下nfs服务。 service nfs restart

    在防火墙中开放这5个端口

编辑iptables配置文件   
     vim /etc/sysconfig/iptables
     添加如下行:

-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p tcp --dport 111 -j ACCEPT

-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p tcp --dport 976 -j ACCEPT

-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p tcp --dport 2049 -j ACCEPT

-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p tcp --dport 966 -j ACCEPT

-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p tcp --dport 33993 -j ACCEPT

 

-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p udp --dport 111 -j ACCEPT

-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p udp --dport 976 -j ACCEPT

-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p udp --dport 2049 -j ACCEPT

-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p udp --dport 966 -j ACCEPT

-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p udp --dport 33993 -j ACCEPT

保存退出并重启iptables
service iptables restart

然后重新挂载即可。

 

补充资料:

ro                      只读访问

rw                      读写访问

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

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

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

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

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

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

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

no_hide                 共享NFS目录的子目录

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

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

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

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

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

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

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

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

 

 

---------------------------

(完)


目录
相关文章
|
2月前
|
关系型数据库 MySQL Java
安装和配置JDK、Tomcat、MySQL环境,以及如何在Linux下更改后端端口。
遵循这些步骤,你可以顺利完成JDK、Tomcat、MySQL环境的安装和配置,并在Linux下更改后端端口。祝你顺利!
158 11
|
1月前
|
Linux 网络安全 开发工具
在Linux下配置gitee与Github的远程仓库
注意,git push后,是输入你的账号与密码。这个步骤可以通过特殊设置省去,但是一开始还是不要太省。
59 0
|
3月前
|
安全 Linux 网络安全
在Linux(CentOS和AWS)上安装更新的git2的方法并配置github-ssh
经过以上这些步骤,你现在就能在GitHub上顺利往返,如同海洋中的航海者自由驰骋。欢迎你加入码农的世界,享受这编程的乐趣吧!
117 10
|
3月前
|
人工智能 Kubernetes Ubuntu
linux配置IP
linux配置IP
211 1
|
4月前
|
监控 Shell Linux
Android调试终极指南:ADB安装+多设备连接+ANR日志抓取全流程解析,覆盖环境变量配置/多设备调试/ANR日志分析全流程,附Win/Mac/Linux三平台解决方案
ADB(Android Debug Bridge)是安卓开发中的重要工具,用于连接电脑与安卓设备,实现文件传输、应用管理、日志抓取等功能。本文介绍了 ADB 的基本概念、安装配置及常用命令。包括:1) 基本命令如 `adb version` 和 `adb devices`;2) 权限操作如 `adb root` 和 `adb shell`;3) APK 操作如安装、卸载应用;4) 文件传输如 `adb push` 和 `adb pull`;5) 日志记录如 `adb logcat`;6) 系统信息获取如屏幕截图和录屏。通过这些功能,用户可高效调试和管理安卓设备。
|
11月前
|
安全 Linux 应用服务中间件
在Linux中,包过滤防火墙与代理应用防火墙有什么区别?有哪些相应的产品?
在Linux中,包过滤防火墙与代理应用防火墙有什么区别?有哪些相应的产品?
|
7月前
|
监控 安全 Linux
启用Linux防火墙日志记录和分析功能
为iptables启用日志记录对于监控进出流量至关重要
206 1
|
10月前
|
机器学习/深度学习 安全 网络协议
Linux防火墙iptables命令管理入门
本文介绍了关于Linux防火墙iptables命令管理入门的教程,涵盖了iptables的基本概念、语法格式、常用参数、基础查询操作以及链和规则管理等内容。
330 73
|
8月前
|
存储 运维 Linux
Linux防火墙firewall的使用
CentOS 7 中的 firewalld 是基于 Netfilter 的防火墙服务,支持动态配置,无需重启服务即可生效。它通过区域管理网络流量,每个区域可以设置不同的防火墙规则。默认区域为 public,可以通过命令行工具 firewall-cmd 进行管理和配置。firewalld 提供了丰富的预定义服务和区域,方便用户根据需求进行灵活配置。
140 0
|
12月前
|
网络协议 Linux 网络安全
入职必会-开发环境搭建39-Linux常用操作-Linux防火墙操作
在CentOS 7中,新引入了firewalld服务(防火墙),取代了CentOS 6之前的iptables服务(防火墙)。
入职必会-开发环境搭建39-Linux常用操作-Linux防火墙操作