关闭

Linux NFC共享配置

1324人阅读 评论(0) 收藏 举报
分类:

NFS介绍

NFS全名为Network File System(网络文件系统)

NFS最早是有sun公司于1984年开发出来的,其目的就是让不同计算机不同操作系统之间可以彼此共享文件。

由于NFS使用起来非常方便,因此很快得到了大多数的UNIX/Linux系统的广泛支持,而且还被IETE(国际互联网工程组)制定为RFC1904、RFC1813和RFC3010标准

NFS是不可以单独进行工作的,它必须跟portmap来协商生成的。Portmap用于提供RPC协议(远程过程调用)

要想启动NFS,必须要启动portmap服务。先启portmap,后启nfs

下面是关于NFS这个服务的属性

NFS的的相关软件包

[root@localhost ~]# rpm -qa | grep nfs

nfs-utils-lib-1.0.8-7.6.el5

[root@localhost ~]# rpm -qa | grep portmap

portmap-4.0-65.2.2.1

[root@localhost ~]#

NFS的守护进程

rpc.nfsd:它是基本的NFS守护进程,主要功能是管理客户端是否能够登录服务器

rpc.mountd:它是RPC安装守护进程,主要功能是管理NFS的文件系统。当客户端顺利通过rpc.nfsd登录NFS服务后,在使用NFS服务所提供的文凭前,还必须通过文件使用权限的验证。它会读取NFS的配置文件/etc/exports来对比客户端权限。

portmapportmap的主要功能是进行端口映射工作。当客户端尝试连接并使用RPC服务器提供的服务(如NFS服务)时,portmap会将所管理的与服务对应的端口提供给客户端,从而使客户可以通过该端口向服务器请求服务。

NFS的脚本

/etc/init.d/nfs

NFS的端口

Nfsd2049    portmap : 111   其他的端口都是由portmap(111)来分配的

NFS的配置文件

/etc/exports(主配置文件)     /etc/sysconfig/nfs(全局配置文件)

下面具体配置NFS的主配置文件

Vim /etc/exports

/var/ftp/pub   192.168.0.0/24(ro,sync)

~                                                                              

/var/ftp/pub            共享的目录

192.168.0.0/24      共享给那些计算机

ro   sync                权限  ro(只读)  sync(同步)

这样,NFS的配置就完成了,就这么简单,当然,还可以对共享文件进行更多的权限

这个时候,启动服务,先启动portmap    然后在启动nfs

[root@localhost ~]# service portmap restart

Stopping portmap:                                              [ OK  ]

Starting portmap:                                              [ OK  ]

[root@localhost ~]# service nfs restart

Shutting down NFS mountd:                                 OK]

Shutting down NFS daemon:                                 OK]

Shutting down NFS services:                                [ OK]

Starting NFS services:                                          [ OK  ]

Starting NFS daemon:                                        [  OK  ]

Starting NFS mountd:                                        OK  ]

[root@localhost ~]#

Ok以后,可以使用showmount –e 来查看文件是否被共享

[root@localhost ~]# showmount -e 192.168.0.254

Export list for 192.168.0.254:

/var/ftp/pub 192.168.0.0/24

[root@localhost ~]#

已经看到192.168.0.254上面的共享目录了

客户端如何去挂载nfs server上面的共享资源呢,可以使用mount命令去手动挂载,当然也可以使用自动挂载器。

[root@localhost ~]# mount -t nfs 192.168.0.254:/var/ftp/pub /mnt/nfs/

[root@localhost ~]#

[root@localhost ~]# df

Filesystem            1K-blocks      Used      Available      Use%     Mounted on

/dev/sda3               4061572     2587972    1263952    68%           /

/dev/sda6               505604       10545        468955      3%            /home

/dev/sda2               4061572     2880780    971144      75%          /var

/dev/sda1               101086       13588        82279       15%           /boot

tmpfs                     192132        0               192132      0%            /dev/shm

/dev/hdc                2935370      2935370     0              100%         /media/RHEL_5.4 i386 DVD

192.168.0.254:/var/ftp/pub

                            4061600      2880800    971168      75%           /mnt/nfs

[root@localhost ~]# cd /mnt/nfs/

[root@localhost nfs]# ls

Cluster  ClusterStorage  Server  VT

[root@localhost nfs]#

nfs的共享资源已经被挂载到/mnt/nfs目录下面了,如果挂载的时候出现问题,很可能是因为你的客户端没有启动portmap。

那能不能够往共享里面写东西呢?

[root@localhost nfs]# mkdir file

mkdir: cannot create directory `file': Read-only file system

[root@localhost nfs]#

很明显是不可以的,他提示我们这是个只读的,好,把共享权限设置成可读可写,看下能不能够写进去。

/var/ftp/pub   192.168.0.0/24(rw,sync)

~  

已经改成rw了,改完也重启一下服务。

[root@localhost nfs]#

[root@localhost nfs]# mkdir file

[root@localhost nfs]#

[root@localhost nfs]# ls

Cluster    ClusterStorage    file     Server    VT

[root@localhost nfs]#

现在已经可以建立文件了,(前提是/var/ftp/pub这个目录的权限已经开放了,不然我还是写不进去的)

下面在讨论一下NFS的默认权限

[root@localhost nfs]#

[root@localhost nfs] #  ll | grep file

drwxr-xr-x 2 nfsnobody nfsnobody   4096 Feb 19 20:21 file

[root@localhost nfs]#

可以看到,当在共享文件夹目录里面创建了一个文件,他的拥有人和拥有组都是nfsnobody,在默认情况下面,拥有人和拥有组应该是root。这个是因为在系统默认的共享权限里面设置了anonuid=65534,anongid=65534。而这个65534id号其实就是nfsnobody用户。可以用id  nfsnobody 命令来查询一下

[root@localhost ~]# id nfsnobody

uid=65534(nfsnobody) gid=65534(nfsnobody) groups=65534(nfsnobody)

[root@localhost ~]#

关于刚才文件属于nfsnobody的原因,这个是由于系统默认的NFS共享权限中的root_squash 导致的

root_squash:当登陆NFS主机使用共享目录的使用者是root时,其权限被转换成匿名使用者,通常它的UID与GID都会变成nobody身份。

其实NFS有很多默认的权限,我们可以去看看

[root@localhost ~]# exportfs -v

/var/ftp/pub    192.168.0.0/24(rw,wdelay,root_squash,no_subtree_check,anonuid=65534,anongid=65534)

[root@localhost ~]#

我们把root_squash变成no_root_squash然后看看会发生什么事情。

/var/ftp/pub   192.168.0.0/24(rw,sync,no_root_squash)

~                                                   

[root@localhost ~]#

[root@localhost ~]# cd /mnt/nfs/

[root@localhost nfs]# mkdir file1

[root@localhost nfs]# ll | grep file1

drwxr-xr-x 2 root      root        4096 Feb 19 20:25 file1

0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

Linux下nfs实现跨机器的文件共享(个人项目经验)

目前的项目开发过程中都是采用分布式,在上传文件的时候,文件不一定会在同一台机器中,因此就需要跨机器共享文件,在这里就简单的采用nfs实现跨机器的文件共享。 1、安装nfs和rpcbind(在cent...
  • millery22
  • millery22
  • 2016-02-26 13:15
  • 2116

搭建nfs,实现linux之间共享存储

一句话介绍nfs:网络文件系统,实现linux之间共享存储 准备环境 关闭防火墙:systemctl stop firewalld 临时关闭防火墙(临时关闭);systemctl disable ...
  • Ayhan_huang
  • Ayhan_huang
  • 2017-06-01 17:26
  • 2080

device_nfc配置文件

  • 2015-02-20 15:23
  • 9KB
  • 下载

Linux_NFC_Subsystem

  • 2017-10-17 13:57
  • 445KB
  • 下载

Android 平台(Linux3.10) NXP NFC(PN547PN548) 移植流程归纳

WPI ATU Younix @ 2016.7.28
  • dearsq
  • dearsq
  • 2016-07-28 16:14
  • 5147

Develop -- Training(十一) -- 通过NFC共享文件

Android Beam 进场通信,通过 NFC 来分享照片、视频、蓝牙配对,进行一些通信操作。 Android Beam 只有在 Android 版本40.以上,API等级14。将文件发送到另一台...
  • u012301841
  • u012301841
  • 2016-03-06 23:29
  • 397

Linux 文件共享 samba 配置

  • 2012-06-13 11:09
  • 48KB
  • 下载

linux-windows共享文件配置

  • 2013-06-10 11:49
  • 15KB
  • 下载

linux的安装与配置samba共享

  • 2012-06-14 14:00
  • 438KB
  • 下载

linux的samba共享服务器详细配置实例

  • 2011-04-12 14:27
  • 418KB
  • 下载
    个人资料
    • 访问:976457次
    • 积分:13133
    • 等级:
    • 排名:第1186名
    • 原创:462篇
    • 转载:4篇
    • 译文:0篇
    • 评论:28条
    文章分类
    最新评论