NFS修改2049端口号

NFS修改2049端口号欢迎大家搜素微信公众号“东面而视”,分项技术及讨论技术《什么是NFS》   就是通过网络共享目录,让网络上的其他服务器能够挂载访问共享目录内的数据。(一般共享视频,图片等静态数据) 为什么修改NFS的2049端口1. 其他服务再用2049端口2. 由于某些规定(如端口号必须在10000以上)修改方法1. 检查LINUX是否按装NFS[root@CT5_6-32-22…

大家好,又见面了,我是你们的朋友全栈君。

欢迎大家搜素微信公众号“东面而视”,分项技术及讨论技术

《什么是NFS》

   就是通过网络共享目录,让网络上的其他服务器能够挂载访问共享目录内的数据。(一般共享视频,图片等静态数据)

 为什么修改NFS的2049端口

1. 其他服务再用2049端口

2. 由于某些规定(如端口号必须在10000以上)

修改方法

1. 检查LINUX是否按装NFS

[root@CT5_6-32-220-NFS01 ~]# rpm  -qa | egrep “nfs|portmap”   ####可以看到系统默认已经安装了。

portmap-4.0-65.2.2.1

nfs-utils-lib-1.0.8-7.6.el5

nfs-utils-1.0.9-50.el5

如果没有安装的话,可以使用yum Install nfs-utils portmap安装包名称来安装。

2. 关闭原来的端口号

   我在网上百度了一下,关掉端口的方式有三种,我选择了其中一种,杀掉2049端口的进程

     查询2049端口的进程号 > netstat anp|grep 2049

                            >kill -9 进程号

   3.在ROOT用户下修改文件 >vi /etc/services

                             >i

                             >ESC键     :wq!   (保存)

   

NFS修改2049端口号
标题

4启动NFS

#/etc/init.d/nfs   start

#/etc/init.d/nfs   status

[root@CT56-32-220-NFS01 ~]# /etc/init.d/nfs status  ####我们这里查看nfs的状态,这里却显示了3个程序的状态,那是因为NFS包含了mountd挂载,quotad配额的管理机制的程序。

rpc.mountd is stopped–>管理client端是否能够登入的问题

nfsd is stopped###这个是主程序->管理client端能够取得的权限

rpc.rquotad is stopped

说明:从NFS服务启动的信息中我们可以看到NFS默认需要启动的进程有rpc,mountd,nfsd,rpc,rquotad,rpc,idmapd。NFS服务器启动时最少需要两个daemons,一个管理client端是否能够登入的问题,另一个管理client端能够取得的权限。如果还需要管理quota的话,NFS还要加载rpc.rquotad程序。

[root@CT5_6-32-220-NFS01 ~]# /etc/init.d/nfs status

rpc.mountd (pid 12920) is running…

nfsd (pid 12917 12916 12915 12914 12913 12912 12911 12910) isrunning…

rpc.rquotad (pid 12892) is running…

1、nfsd(rpc.conf)

这个daemon的主要功能就是管理client端是否能够登入主机,其中还包含登入者的ID判别。

2、rpc.mount

这个daemon主要功能则是管理NFS的文件系统。当client端顺利通过rpc.nfsd登入主机后,在它可以使用NFS服务器提供规定文件之前,还会经过文件使用权限的认证程序。它会去读取NFS的配置文件/etc/exports来对比客户端的权限,当通过这一关之后,client端也就取得使用NFS文件的权限。这就是为什么单单在/etc/exports中设置NFS的权限是不够的。

 

NFS启动&信息查看

/etc/init.d/portmap start

rpcinfo –p  

/etc/init.d/nfs status

/etc/init.d/nfs start

RPC主程序的是三个进程

rpc.mountd  #nfs挂载程序

nfsd  nfs   #主程序

rpc.rqutod  #配额

 

5.查看是否修改成功 

rpcinfo –p (手动输入,粘贴的不行,不知道为啥) 

 

NFS修改2049端口号

修改成功。将2049修改为12049了

 

配置共享文件

配置/etc/exports(NFS配置文件)

修改完配置之后要重新reload一下。/etc/init.d/nfs reload

[root@CT5_6-32-220-NFS01 /]# cat  /etc/exports

[root@CT5_6-32-220-NFS01 /]# cat /etc/exports

/atong 192.168.40.0/22(rw.sync)

[root@CT5_6-32-220-NFS01 /]# /etc/init.d/nfs reload

exportfs: /etc/exports:1: unknown keyword “rw.sync”###roload的时候提示错误,重新编写了一下配置文件,就又正确了。以后要养成好的编写配置要备份的习惯。

[root@CT5_6-32-220-NFS01 /]# vi /etc/exports

/atong   192.168.41.0/22(rw,sync)

[root@CT5_6-32-220-NFS01 /]# /etc/init.d/nfs reload   重新reload就成功了。

到此NFS已经算是共享了目录,及设置了相应的权限。

 

客户端操作:

—————————————————————————————-

现在我们的服务器端在配置文件上已经设置了共享,并在配置文件中设置了权限rw。但其实服务器端的目录文件的rwxr-xr-x权限是还没有开放的。这个跟我们的windows共享也是很像的,不仅要共享权限有,目录本地安全权限也要有。现在就是让客户端来进行挂载就可以了。

—————————————————————————————-

1)查看portmap是否正常启动

[root@CT56-32-220-NFS01 ~]# /etc/init.d/portmap status

portmap (pid 2725) is running…

2)查看服务器端的共享信息。

Showmount –e192.168.1.1 来查看服务端给我们提供的有哪些共享。

[root@CT56-32-220-NFS01 ~]# showmount  -e 192.168.41.220

Export list for 192.168.41.220:

/atong  192.168.41.0/22  —-》看到已经有这个共享了。

3)在客户端挂载服务器共享出来的目录。

#mount -t nfs 192.168.1.1:/atong  /mnt(本地目录)我们可以自己新建一个要挂载的目录。

[root@CT56-32-220-NFS01 ~]# mount -t nfs  192.168.41.220:/atong  /atong  

#mount 命令格式如下:

####mount -t  类型   device   localedir(本地目录)

#以上这个命令device=192.168.41.220:/atong

[root@CT56-32-220-NFS01 ~]# df

Filesystem          1K-blocks      Used Available Use%Mounted on

/dev/sda3              7765136   1655612  5708704  23% /    

/dev/sda1               101086     11601    84266  13% /boot

tmpfs                    62532         0    62532   0% /dev/shm

192.168.41.220:/atong   7765152   1655296  5709024  23% /atong

[root@CT56-32-220-NFS01 ~]# touch  /atong/test.txt

touch: cannot touch `/atong/test.txt’: Permissiondenied—》发现没有现在是没有权限的,因为我们服务器的本地的rwx权限没有开启来。

[root@CT56-32-220-NFS01 ~]# ll /atong/

total 4

-rw-r–r– 1 root root    0 May 28 08:14 test1

drwxr-xr-x 2 root root 4096 May 28 08:15 test-dir1

##### 在服务器端创建了目录,要过段时间才能同步到客户端。额,这样的情况有办法解决没有?

4)查看挂载和共享的文件是否一致。

#df  来查看一下我们系统中的文件系统情况。

[root@CT56-32-220-NFS01~]# df 

Filesystem           1K-blocks      Used Available Use% Mounted on

/dev/sda3              7765136   1655612  5708704  23% /

/dev/sda1               101086     11601    84266  13% /boot

tmpfs                    62532         0    62532   0% /dev/shm

192.168.41.220:/atong   7765152   1655296  5709024  23% /atong

检查客户端中挂载的内容是否和服务端的目录一样。

5)在客户端执行写操作。

权限说明:当我们在/etc/exports中给了NFS  rw权限。但为什么客户端还是写不了。因为如果我们仅在NFS配置文件中配置了rw权限。只表明了网络端的主机能够有权限去服务器端去写文件,但还需要通过服务器端的本地目录的权限。那么也就是说客户端需要通过两层的权限来控制的。NFS配置文件—>共享目录文件的权限。并且客户端往服务端去写文件,的用户身份是nfsnobody、nfsnobody UID=65534。

 

 

(完)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/153587.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 网络安全2020年前景展望:九大未来的安全威胁

    网络安全2020年前景展望:九大未来的安全威胁

    2022年4月2日
    52
  • npm卸载与安装(npm安装失败)

    1.卸载nodenpm(1)先卸载npm:sudonpmuninstallnpm-g  (2)然后卸载Node.js.  (2.1)如果是Ubuntu系统并使用apt-get安装的,可以使用命令:sudoapt-getremovenodejs  (2.2)源文件安装的node,卸载方式:首先cd到解压后到目录: sudom…

    2022年4月10日
    66
  • java 正则表达式语法_JAVA正则表达式语法大全

    java 正则表达式语法_JAVA正则表达式语法大全元字符描述\将下一个字符标记符、或一个向后引用、或一个八进制转义符。例如,“\\n”匹配\n。“\n”匹配换行符。序列“\\”匹配“\”而“\(”则匹配“(”。即相当于多种编程语言中都有的“转义字符”的概念。^匹配输入字符串的开始位置。如果设置了RegExp对象的Multiline属性,^也匹配“\n”或“\r”之后的位置。$匹配输入字符串的结束位置。如果设置了RegExp对象的Multiline…

    2022年7月19日
    14
  • python对csv文件的读写

    python对csv文件的读写首先先简单说一下csv文件,csv的全称是Comma-SeparatedValues,意思是逗号分隔值,通俗点说就是一组用逗号分隔的数据。CSV文件可以用excel打开,会显示如下图所示:这个文件用notepad打开显示是这样的,这是它原始的样子:好了,下班我们来用python对csv文件进行读写操作1.读文件如何用Python像操作Excel一样提取其中的一列,即一个字段,利用Py…

    2022年7月21日
    11
  • 漫画什么是分布式事务_分布式事务框架

    漫画什么是分布式事务_分布式事务框架点击上方“程序员小灰”,选择“置顶公众号”有趣有内涵的文章第一时间送达!————— 第二天 —————————————————假如没有分布式事务在一系列微服务系统当中,假如不存在分布式事务,会发生什么呢?让我们以互联网中常用的交易业务为例子:上图中包含了库存和订单两个独立的微服务,每个微服务维护了自己的数据库。在交易系统的业务逻辑中,一个商品在下单之前需要先调用库存服务,进行扣除库存,再调用订

    2022年10月23日
    0
  • 写一段代码在遍历 ArrayList 时移除一个元素?

    写一段代码在遍历 ArrayList 时移除一个元素?今天楼主继续分享一道经典Java面试题并进行相关知识点的拓展: 上题:写一段代码在遍历ArrayList时移除一个元素?该问题的关键在于面试者使用的是ArrayList的remove()还是Iterator的remove()方法。是使用正确的方式来实现在遍历的过程中移除元素,而不会出现ConcurrentModificationException异常的示例代码。…

    2022年7月22日
    9

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号