NFS笔记(二)NFS服务器配置实例

NFS笔记(二)NFS服务器配置实例,第1张

一、NFS服务器配置实例

实验拓扑

二、实验要求及环境

21实验环境

NFS服务器 IP:19216885

环境:

[root@server7 ~]# uname -a

Linux server7ctoszu 3100-514el7centosplusi686 #1 SMP Wed Jan 25 12:55:04 UTC 2017 i686 i686 i386 GNU/Linux

[root@server7 ~]# cat /etc/redhat-release

CentOS release 731611 (AltArch)

客户端IP:19216887

环境:

[root@client-A ~]# uname -a

Linux client-Actoszu 2632-696el6i686 #1 SMP Tue Mar 21 18:53:30 UTC 2017 i686 i686 i386 GNU/Linux

[root@client-A ~]# cat /etc/redhat-release

CentOS release 69 (Final)

22、实验要求

NFS服务器

1、/home/share 目录可读写,并且不限制用户身份,共享给19216880/24网段不的所有主机;

2、/home/zhidata 这个目录仅共享给19216887这台主机,以供该主机上面的zhi这个用户来使用,

也就是说zhi在19216885和19216887上均有账号,且账号均为zhi;

3、/home/upload 这个目录做为19216880/24网段的数据上传目录,其中/home/upload

的用户和所属组为nfs-upload这个名字,它的UID和GID均为222;

4、/home/nfs  这个目录的属性为只读,可提供除了网段内的工作站外,向Internet也提供数据内容。

三、服务器端设置

1、 编辑/etc/exports内容

[root@server7 etc]# cat /etc/exports

/home/share  19216880/24(rw,no_root_squash)

/home/zhidata  19216887(rw)

/home/upload   19216880/24(rw,all_squash,anonuid=222,anongid=222)

/home/nfs     19216880/24(ro)  (ro,all_squash)

2、按要求建立每个对应目录

    21、创建/home/share目录 任何人都可以在 /home/share内新增、修改文件,但

    仅有该文件/目录的建立者与root能够删除自己的目录或文件。
    [root@server7 etc]# mkdir -p  /home/share

    [root@server7 etc]# ll -d /home/share/

    drwxr-xr-x 2 root root 6 9月   5 15:50 /home/share/

    [root@server7 etc]# chmod 1777  /home/share/

    [root@server7 etc]# ll -d /home/share/

    drwxrwxrwt 2 root root 6 9月   5 15:50 /home/share/
    22、创建/home/nfs
    [root@server7 etc]# ll -d /home/nfs/

    drwxr-xr-x 2 root root 6 9月   5 16:52 /home/nfs/
    23、创建/home/zhidata目录
    [root@server7 etc]# mkdir -v /home/zhidata

    mkdir: 已创建目录 "/home/zhidata"

    [root@server7 etc]# ll -d /home/zhidata/

    drwxr-xr-x 2 root root 6 9月   5 16:57 /home/zhidata/

    [root@server7 etc]# useradd zhi

    root@server7 etc]# passwd zhi

    更改用户 zhi 的密码 。

    新的 密码:

    无效的密码: 密码少于 8 个字符

    重新输入新的 密码:

    passwd:所有的身份验证令牌已经成功更新。

    [root@server7 etc]# cat /etc/passwd | grep zhi

    zhi:x:1000:1000:zhi:/home/zhi:/bin/bash

    [root@server7 etc]# chmod 700 /home/zhidata/

    [root@server7 etc]# chown -R zhi:zhi /home/zhidata/

    [root@server7 etc]# ll -d /home/zhidata/

    drwx------ 2 zhi zhi 6 9月   5 16:57 /home/zhidata/
    24、创建/home/upload目录

#先建立对应账号与组名及UID

[root@server7 etc]# groupadd  -g 222 nfs-upload

[root@server7 etc]# useradd -g 222 -u 222 -M nfs-upload

[root@server7 etc]# cat /etc/passwd|grep nfs

rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin

nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin

nfs-upload:x:222:222::/home/nfs-upload:/bin/bash

#创建目录,修改属主

[root@server7 etc]# mkdir /home/upload

[root@server7 etc]# chown -R nfs-upload:nfs-upload  /home/upload/

[root@server7 etc]# ll -d /home/upload/

drwxr-xr-x 2 nfs-upload nfs-upload 6 9月   6 08:38 /home/upload/

25、重启NFS服务

[root@server7 etc]# systemctl restart  nfs

[root@server7 etc]# systemctl status  nfs

● nfs-serverservice - NFS server and services

   Loaded: loaded (/usr/lib/systemd/system/nfs-serverservice; enabled; vendor preset: disabled)

   Active: active (exited) since 三 2017-09-06 08:41:40 CST; 8s ago

  Process: 9171 ExecStopPost=/usr/sbin/exportfs -f (code=exited, status=0/SUCCESS)

  Process: 9169 ExecStopPost=/usr/sbin/exportfs -au (code=exited, status=0/SUCCESS)

  Process: 9168 ExecStop=/usr/sbin/rpcnfsd 0 (code=exited, status=0/SUCCESS)

  Process: 9181 ExecStart=/usr/sbin/rpcnfsd $RPCNFSDARGS (code=exited, status=0/SUCCESS)

  Process: 9180 ExecStartPre=/usr/sbin/exportfs -r (code=exited, status=0/SUCCESS)

 Main PID: 9181 (code=exited, status=0/SUCCESS)

   CGroup: /systemslice/nfs-serverservice

9月 06 08:41:40 server7ctoszu systemd[1]: Starting NFS server and services

9月 06 08:41:40 server7ctoszu systemd[1]: Started NFS server and services

[root@server7 etc]# tail /var/log/messages

Sep  6 08:41:40 server7 systemd: Started NFS Mount Daemon

Sep  6 08:41:40 server7 rpcmountd[9178]: Version 130 starting

Sep  6 08:41:40 server7 systemd: Started NFSv4 ID-name mapping service

Sep  6 08:41:40 server7 systemd: Starting NFS server and services

Sep  6 08:41:40 server7 kernel: NFSD: starting 90-second grace period (net c0c932c0)

Sep  6 08:41:40 server7 systemd: Started NFS server and services

Sep  6 08:41:40 server7 systemd: Starting Notify NFS peers of a restart

Sep  6 08:41:40 server7 sm-notify[9198]: Version 130 starting

Sep  6 08:41:40 server7 sm-notify[9198]: Already notifying clients; Exiting!

Sep  6 08:41:40 server7 systemd: Started Notify NFS peers of a restart

26、查看NFS服务器共享出来目录

27、关闭防火墙、selinux

28查看配置

[root@server7 ~]# exportfs -v

/home/zhidata     19216887(rw,wdelay,root_squash,no_subtree_check,sec=sys,rw,secure,root_squash,no_all_squash)

/home/share       19216880/24(rw,wdelay,no_root_squash,no_subtree_check,sec=sys,rw,secure,no_root_squash,no_all_squash)

/home/upload      19216880/24(rw,wdelay,root_squash,all_squash,no_subtree_check,anonuid=222,anongid=222,sec=sys,rw,secure,root_squash,all_squash)

/home/nfs         19216880/24(ro,wdelay,root_squash,no_subtree_check,sec=sys,ro,secure,root_squash,no_all_squash)

/home/nfs         <world>(ro,wdelay,root_squash,all_squash,no_subtree_check,sec=sys,ro,secure,root_squash,all_squash)

四、客户端配置

41、客户端也要安装nfs-utils和rcpbind软件包

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

42、启动RPC

[root@client-A ~]# service rpcbind start  /systemctl start rpcbind

Starting rpcbind:                                          [  OK  ]

[root@client-A ~]# service rpcbind status

rpcbind (pid  1926) is running

[root@client-A ~]# chkconfig --list |grep rpcbind

43、客户端关闭防火墙、selinux

[root@client-A ~]# service iptables stop /systemctl stop firewalld

iptables: Setting chains to policy ACCEPT: filter          [  OK  ]

iptables: Flushing firewall rules:                         [  OK  ]

iptables: Unloading modules:                               [  OK  ]

44 测试网络

[root@client-A ~]# ping 19216885

PING 19216885 (19216885) 56(84) bytes of data

64 bytes from 19216885: icmp_seq=1 ttl=64 time=216 ms

64 bytes from 19216885: icmp_seq=2 ttl=64 time=0697 ms

64 bytes from 19216885: icmp_seq=3 ttl=64 time=0346 ms

64 bytes from 19216885: icmp_seq=4 ttl=64 time=0336 ms

64 bytes from 19216885: icmp_seq=5 ttl=64 time=0335 ms

64 bytes from 19216885: icmp_seq=6 ttl=64 time=0317 ms

64 bytes from 19216885: icmp_seq=7 ttl=64 time=0512 ms

64 bytes from 19216885: icmp_seq=8 ttl=64 time=0320 ms

^C

--- 19216885 ping statistics ---

8 packets transmitted, 8 received, 0% packet loss, time 7555ms

rtt min/avg/max/mdev = 0317/0629/2169/0595 ms

45 在客户端查看NFS服务器共享出来目录

[root@client-A ~]# showmount -e 19216885

Export list for 19216885:

/home/nfs     (everyone)

/home/upload  19216880/24

/home/share   19216880/24

/home/zhidata 19216887

46、挂载NFS服务器上/home/nfs目录到本地/opt/data目录下

#临时挂载

#永久挂载

编辑、/etc/fstab文件,新增如下条目:

19216885:/home/nfs  /opt/data/ nfs4 defaults 0 0

更多信息参考 nfs参数详解
#查看信息

[root@client-A data] # df -h

Filesystem            Size  Used Avail Use% Mounted on

/dev/mapper/VolGroup-lv_root

                      65G  644M  56G  11% /

tmpfs                 250M     0  250M   0% /dev/shm

/dev/sda1             477M   26M  426M   6% /boot

19216885:/home/nfs

                      80G  16G  65G  20% /opt/data

[root@client-A data]# mount

/dev/mapper/VolGroup-lv_root on / type ext4 (rw)

proc on /proc type proc (rw)

sysfs on /sys type sysfs (rw)

devpts on /dev/pts type devpts (rw,gid=5,mode=620)

tmpfs on /dev/shm type tmpfs (rw)

/dev/sda1 on /boot type ext4 (rw)

none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)

sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)

nfsd on /proc/fs/nfsd type nfsd (rw)

19216885:/home/nfs on /opt/data type nfs (rw,vers=4,addr=19216885,clientaddr=19216887)

#创建文件测试

[root@client-A data]# touch testabc

touch: cannot touch `testabc': Read-only file system

47挂载/home/upload 目录到客户端/opt/upload目录下

#挂载

[root@client-A data]# mkdir /opt/upload

[root@client-A data]# mount -t nfs  19216885:/home/upload   /opt/upload/

#查看挂载是否成功

[root@client-A data]# df -h

Filesystem            Size  Used Avail Use% Mounted on

/dev/mapper/VolGroup-lv_root

                      65G  644M  56G  11% /

tmpfs                 250M     0  250M   0% /dev/shm

/dev/sda1             477M   26M  426M   6% /boot

19216885:/home/nfs

                      80G  16G  65G  20% /opt/data

19216885:/home/upload

                      80G  16G  65G  20% /opt/upload
#客户端创建nfs-upload用户

[root@client-A ~]# groupadd  -g 222 nfs-upload

[root@client-A ~]# useradd -g 222 -u 222 -m nfs-upload
#测试,可以看到创建的文件及目录默认属主为nfs-upload属组为nfs-upload

[zhi@client-A upload]$ pwd

/opt/upload

[zhi@client-A upload]$ ll

total 0

#测试创建文件

[zhi@client-A upload]$ touch test123

测试创建目录

[zhi@client-A upload]$ mkdir  testdir

[zhi@client-A upload]$ ll -a

total 4

drwxr-xr-x  3 nfs-upload nfs-upload   36 Sep  6 10:28

drwxr-xr-x 4 root       root       4096 Sep  6 18:22

-rw-rw-r--  1 nfs-upload nfs-upload    0 Sep  6 10:28 test123

drwxrwxr-x  2 nfs-upload nfs-upload    6 Sep  6 10:28 testdir

# 在客户端用root用户创建文件测试

root@client-A upload]# touch testabc

[root@client-A upload]# ll

total 0

-rw-r--r-- 1 root       root       0 Sep  6 10:31 nfstest123

-rw-r--r-- 1 nfs-upload nfs-upload 0 Sep  6 10:32 testabc

drwxrwxr-x 2 nfs-upload nfs-upload 6 Sep  6 10:28 testdir

可以看到用root用户创建的文件属主仍是nfs-upload

#测试删除文件

[zhi@client-A upload]$ rm test123

[zhi@client-A upload]$ ll

total 0

drwxrwxr-x 2 nfs-upload nfs-upload 6 Sep  6 10:28 testdir

如何实现服务器向客户端发出一条通知?
当向服务器数据库插入一条数据时,服务器就向客户端发出一条信息,让客户端及时知道;
如何实现呢?
能描述清楚点吗?问题太大概了吧。
向客户发送消息的sendMessage方法是不是已经准备好了?
那接下来就是选择在程序中100%确定已经向数据库插入了数据的地方调用sendMessage方法。
简单的实现可以用js的alert方法。
执行数据库插入 *** 作,后返回值,js判断,根据返回的值,如果插入成功,则alert('插入成功')
ejb的拦截器应该能实现,给向数据库插入数据的这个方法加个拦截器,在这个拦截器类里边先调用这个方法,然后实现向客户端发消息
得看你做B/S还是C/S
看不懂说的啥。。
在消息库里插一条 消息数据。 再查询出来 不就好了。 这是简单的方式咯。 复杂点就用推送技术吧
基本上就两招:
要么是 短连接下的客户端发起轮询 模型;
要么是 长连接下的服务器端主动推送 模型。
C/S没玩过,B/S用过推模式,比轮询要好的多
我现在用的数据库连接字符串是private static string conStr = @"Data Source=192168137,1611;Initial Catalog=QLYM;User ID=sa;Pwd=system";这是局域网的!那连接服务器数据库应该什么写呢?
当服务器数据库数据有更新时,客户端如何及时知道?客户端是client的,轮询会对服务器有压力,有什么技术更好的?
客户端只设置两个,每分钟访问服务器一次,这样服务器的压力应该不大吧?

一、安装CentOS 73

成功引导系统后,会出现下面的界面

界面说明:

Install CentOS 7 #安装CentOS 7

Test this media & install CentOS  7 #测试安装文件并安装CentOS  7

Troubleshooting #修复故障

这里选择Install CentOS Linux7,安装CentOS  7,回车,进入下面的界面

语言选择界面,正式生产服务器建议安装英文版本。

Continue继续

选择-系统SYSTEM-安装位置INSTALLTION DESTINATION,进入磁盘分区界面

选择-其它存储选项Other Storage Options-分区Partitoning-我要配置分区I will configure partitioning,

点左上角的“完成Done”,进入下面的界面

新挂载点使用以下分区方案:标准Standard Partition

完成Done

分区前先规划好,swap #交换分区,一般设置为内存的2倍,/ #剩余所有空间

备注:生产服务器建议单独再划分一个/data分区存放数据

点左下角的“+”号,挂载点:swap,期望容量:4096,添加挂载点,如下图所示,继续点左下角的“+”号,挂载点:“ / ”期望容量:留空   #默认为剩余所有空间,添加挂载点,如下图所示

点左上角的“完成Done”,进入下面的界面

接受更改Accept Changes,进入下面的界面

软件SOFTWARE”-“软件选择SOFTWARE SELECTION”,我们使用的是Minimal版本,默认是最小化安装。

设置完成后,点Done

开始安装Begin Installation

进入下面的界面

选择-用户设置USER SETTINGS-ROOT密码,进入下面的界面

设置Root密码

如果密码长度少于5位,会提示要按“完成”两次来确认,安装继续。安装完成之后,会进入下面的界面

重启Reboot

进入登录界面,输入用户名root密码itnihao,系统登录成功

回到顶部

二、设置IP地址、网关DNS

说明:CentOS 7x默认安装好之后是没有自动开启网络连接的,所 以需要我们自己配置。

在命令行输入#vi  /etc/sysconfig/network-scripts/ifcfg-ens33  #编辑配置文件,添加修改或添加以下内容。
BOOTPROTO=static#启用静态IP地址
ONBOOT=yes  #开启自动启用网络连接
IPADDR=192168173   #设置网关
GATEWAY=19216811
NETMASK=2552552550
DNS1=114114114114
DNS2=8888

:wq!  #保存退出

service network restart   #重启网络

ping >

ip addr  #查看IP地址

至此,CentOS 731611系统安装配置图解教程完成!

回到顶部

三:附加

1、修改主机名

#hostnamectl set-hostname  compute1

2修改网卡名

CentOS 7x系统中网卡命名规则被重新定义,可能会是”ifcfg-ens33”等,下面我们把网卡改为ifcfg-eth0这种。

1、cd  /etc/sysconfig/network-scripts/

mv  ifcfg-ens33  ifcfg-eth0  #修改名称

vi  ifcfg-eth0  #编辑

NAME=eth0   #修改

DEVICE=eth0   #修改

:wq! #保存退出

2、vi /etc/sysconfig/grub  #编辑

在”GRUB_CMDLINE_LINUX“变量中添加一句”netifnames=0 biosdevname=0“

:wq! #保存退出

3、运行命令:grub2-mkconfig -o /boot/grub2/grubcfg  #重新生成grub配置并更新内核参数

4、添加udev的规则

在”/etc/udev/rulesd“目录中创建一个网卡规则”70-persistent-netrules“,并写入下面的语句:

SUBSYSTEM=="net",ACTION=="add",DRIVERS=="",ATTR{address}=="00:0c:29:1e:a3:77",ATTR{type}=="1" ,KERNEL=="eth",NAME="eth0"

#ATTR{address}=="00:0c:29:1e:a3:77"是网卡的MAC地址

cd  /etc/udev/rulesd

vi  70-persistent-netrules   #添加

SUBSYSTEM=="net",ACTION=="add",DRIVERS=="",ATTR{address}=="00:0c:29:1e:a3:77",ATTR{type}=="1" ,KERNEL=="eth",NAME="eth0"

:wq! #保存退出

shutdown -r now  #重启系统

网卡已经更改为eth0

服务器对外断网问题:
1检查安全策略中的53端口是否有打开,允许udp协议,所有ip均接受;
2检查开始-管理工具-本地安全策略-IP安全策略是否有进行过设置;
3检查本地连接属性中的dns是否正常。
服务器上是否有安装安全狗之类的服务器防护软件。看看是否是设置不当,导致的,可以先退出防护,然后看下是否可以恢复正常。如果恢复正常了,那估计就是防护软件没设置好,可以重新调整下设置。如果退出后还不能正常,那么可以继续启用起来进行防护,然后排查下服务器系统本身设置是否有设置出错。
请采纳,谢谢!

这个要看风扇的类型不同

廉价的普通风扇,没有测速或者反馈线的,直接接通一个电阻,只要电流通着就会象征电子元件正常运转。

一些高配的优质风扇是有转速测试的,这个没办法。

特别注意,服务器和普通电脑不同,需要长时间高负载运转,所以对风扇要求很高,甚至一半的风扇转速不能满足散热需求。。。所以撤掉风扇并不是好的选择,想办法解决问题才是关键。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/13446946.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-08
下一篇 2023-08-08

发表评论

登录后才能评论

评论列表(0条)

保存