服务器linux环境
2013-06-26 21:18:01 guofengdidai 阅读数 4209

vmware虚拟机中在windows中如果安装tools后宿主机和虚拟机之间是能够互相拖拉资料的,但是windows和linux之间测不能拖拉信息,这是就需要一个服务器,一般情况下ftp、samba等都可以实现文件的共享,但是个人感觉在linux中samba比ftp在文件共享方面更好用,现在就说一下在linux中安装samba的方法。

① 检测linux中是否成功安装samba服务器软件     rpm -qa | grep samba

② 如果没有安装,那么首先安装rpm软件,rpm -ivh 软件名

③ 安装成功后开始配置samba的主配置文件,/etc/samba/smb.conf,打开文件后情况如下:

④ 修改文件,[]中的信息整理自http://blog.csdn.net/smonster/article/details/3361386

[  workgroup = MYGROUP

#这是设置服务器所要加入的工作组的名称,会在Windows 的“网上邻居”中能看到MYGROUP工作组,可以在此设置所需要的工作组的名称。 

netbios name=smb-server

#设置出现在“网上邻居”中的主机名。默认情况下,则使用真正的主机名。 

   server string = Samba Server

#这是设置服务器主机的说明信息,当在Windows 的“网上邻居”中打开Samba 上设置的工作组时,在Windows 的资源管理器窗口,会列出“名称”和“备注”栏,其中“名称”栏会显示出Samba服务器的NetBios名称,而“备注”栏则显示出此处设置的“Samba Server”。当然,可以修改默认的“Sambe Server”,使用自己的描述信息。 

 hosts allow = 192.168.1. 127

#这里是设置允许什么样的IP地址的主机访问Samba服务器。默认的情况下,hosts allow选项被注释,表示允许所有IP地址的主机访问。 

  guest account = pcguest

#设置当访问那些被设置了“guest ok=yes”参数的资源时所要使用的帐号名。默认的帐号为”nobody”,如果不想用默认的值,则应该去掉注释用的分号,用你想要的帐号(如pcguest、 zhangsan等 ),然后,你必需将这一新帐号加入到/etc/passwd文件中去。 

client  code  page=950

设置客户端访问Samba 服务器时所使用的字符编码表(code page),默认值为850,如果Samba 服务器要使用年中文名称来来命名共享的资源,要将此值改为950 

  log file = /var/log/samba/%m.log

#这一选项要求Samba服务器为每一个连接的机器使用一个单独的日志文件,指定文件的位置,名称。Samba会自动将%m转换成连接主机的NetBios名。 

   max log size = 0

指定日志文件的最大容量(以KB为单位),设置为0,表示没有限制。默认值为5000。 

max disk size =1000

#设置能够共享的最大磁盘空间,单位为MB,默认值为0,表示不作任何限制。 

max open file =100

#设置同一客户端最多能打开文件的数目,默认值为10000个。 

   security = user

#设置Samba服务器的安全等级。默认情况下,使用user等级。 

#Samba服务器一共有四种安全等级。 

share: 使用此等级,用户不需要帐号及密码可以登陆Samba服务器。 

user:  使用此等级,由提供服务的Samba服务器检查用户帐号及密码。 

server: 使用此等级,检查帐号及密码的工作可指定另一台Samba服务器负责。

domain: 使用此等级,需要指定一台Windows NT/2000/XP服务器(通常为域控制器),以验证用户输入的帐号及密码。 

;   password server = <NT-Server-Name>

#如果安全等级为“server”或“domain”,则使用此选项指定要验证密码的主机名。 

  password level = 8

  username level = 8

#设置当验证用户口令和帐号时最多允许几个大小写字不同。默认值为0。 

   encrypt passwords = yes

#设置当Samba客户端将帐号及密码传送到服务器端时,是否采取密码加密的方式。客户的操作系统如果是Windows 95 OSR2 及NT SP3以后的版本,应该将此选项的值设为yes,默认值为no。 

   smb passwd file = /etc/samba/smbpasswd

#设置在Samba服务器上存放加密的密码文件的位置(注意:Samba服务器与Linux采用不同的密码文件)。 

 ]

⑤ 创建linux用户,此用户也就是samba服务器的用户,设置用户密码,如果全局中设置UNIX password  sync=YES,测linux用户和samba服务器的用户密码是一致的,如果想设置的不一致,那么就设置UNIX password  sync=NO,然后设置samba服务器的用户密码,如果UNIX password  sync=YES,那么就不需要设置了,如果不一致,那么使用命令smbpasswd + 用户名 设置该用户的samba服务器密码。

⑥ 启动samba服务器,然后在windows系统的网上邻居中输入\\samba服务器ip地址,弹出输入用户名和密码的窗口,输入即可。到此samba服务器就安装成功了。

⑦ 可能在windows中会出现如下情况

解决办法:

1.网络不通,用ping命令实验一下,如果不通那么重新配置让它通。

2.samba服务器未启动,启动samba服务器,在启动过程中可能出现错误 ,在这种情况下你就按照错误提示进行修改。

3.用户名和密码真的错了,在这种情况下就查找自己的用户名和密码然后重新输入

4.限制访问配置问题,分析及解决办法:在配置文件samba.conf中启用了interfaces或hosts allow,但所限制的网段或IP正式你访问使用的机器,是否为此问题造成可通过在行hosts allow = 和 interfaces = 前加;注释掉这些设置进行测试。

5.网络工作组设置问题,分析及解决办法:不在同一个网络工作组,查看samba.conf行workgroup = /你设置的网络工作组名/和你访问所使用的机器的网络工作组名一致,如不一致,可能会出现无法访问。

6.win7系统访问问题。

    分析及解决办法:XP下可以正常访问,win7无法访问,进行如下设置:
    首先,单击[开始]——[运行] 输入 “secpol.msc”打开管理工具,展开“本地策略(Local Policies)”。
    然后,单击“安全选项(Security Options)”。 双击“网络安全:LAN Manager 身份验证级别(Network Security: LAN Manager authentication level)”
    最后,单击列表中:发送LM和NTLMv2,如果已协商,则使用NTLMv2协议(LM and NTLM – use NTLMV2 session security if negotiated)。
7.虚拟用户映射问题,分析及解决办法:可能是用户虚拟用户映射问题,将samba.conf中行username map = /etc/samba/smbusers 用;注释掉进行测试,如果每个windows用户在samba服务器中有帐户这个可以不设。
8.samba用户未激活,smbpasswd -e 用户名     进行激活。
至此,linux和windows就可以交互信息了。
2018-12-27 10:01:55 qq_18144905 阅读数 35

linux环境

首先Ubuntu上搭建好node服务器,开启服务器,前端进行接口调用,查看运行情况。
以下是前端上传本地压缩包并实现自动解压功能的后台监控。参考我的上一篇博客

控制台查看服务器运行情况

在这里插入图片描述

修改服务器后,需要重启服务

实现服务器端接口调试

在这里插入图片描述

Windows环境

采用工具进行服务器接口的调试

在这里插入图片描述
CRT是指令控制台界面,FXP是文件上传界面。双击运行登录LINUX服务器就可以了。
在这里插入图片描述

2019-03-03 13:48:24 Evan1911 阅读数 10

 1,
//安装epel
yum install epel-release
//安装Node.js
yum install nodejs
//检查node是否成功安装,查看一下node的版本号
node --version// 更新到最新版node
//全局安装nnpm install -g n//升级到最新稳定版 n stable
//升级到定制版n v10.0.0//切换使用版本n 8.0.0 (ENTER)!注意如果没有npm模块可以直接yum install npm 尝试直接安装2,安装mongo方法一
//安装MongoDB服务端
yum install mongodb-server
//安装MongoDB客户端
yum  install  mongodb
//查看一下mongodb客户端的版本号
mongo --version方法二// 配置包管理系统
[mongodb-org-4.0]name=MongoDB Repositorybaseurl=https://repo.mongodb.org/yum/amazon/2013.03/mongodb-org/4.0/x86_64/gpgcheck=1enabled=1gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc// 安装yum install -y mongodb-org
//使用mongo
(1)创建存储数据的目录 -> mkdir -p /data/db
  (2)  mongod --dbpath=/data/db --port=27017 前台启动MongoDB
  (3)  mongod --dbpath=/data/db --port=27017 --fork --logpath=/var/log/mongd.log 已守护进程的方式启动,并将日志文件写入到。var/log/mongod.log中
(4)已守护进程启动的mongd可以使用 mongod --shutdown命令结束
(5)可以直接在命令行使用命令链接对应的数据库 mongo 127.0.0.1:27017

2017-09-20 08:20:42 weixin_34223655 阅读数 4

注:本博客内容仅在Ubuntu上测试过,其他发行版不一定适用,望知晓。

FTP服务器- vsftpd

  1. 安装vsftpd服务器

    sudo apt-get install vsftpd
  2. 进入vsftpd.conf文件配置

     sudo vi /etc/vsftpd.conf
  3. 具体设置

    • 设置anonymous_enable=NO,关闭匿名上传
    • 指定ftp上传目录 local_root=/home/joysoarkey/ftp
    • 允许本机登录 local_enable=YES
    • 修改允许登录的用户

          chroot_list_enable=YES
          chroot_list_file=/etc/vsftpd.chroot_list
    • 允许上传文件到FTP服务器

          write_enable=YES
      
  4. 新建文件vsftpd.chroot_list

    sudo vi /etc/vsftpd.chroot_list

    在其中放入被允许登录的ubuntu用户名

  5. 更改权限【重要】

    将/home/joysoarkey/ftp文件夹拥有者的权限减去w

       sudo chmod u-w /home/joysoarkey/ftp
  6. 重启FTP服务器

    sudo /etc/init.d/vsftpd restart

    ftp
    若重启成功,则终端会显示以下信息

        [ ok ] Restarting vsftpd (via systemctl): vsftpd.service.

    在其他机器连接服务器(ip地址视具体情况而定),若显示登录成功则说明FTP服务正常,可以使用。

     
     ```
     C:\Users\Soarkey>ftp 192.168.0.104
     连接到 192.168.0.104。
     220 (vsFTPd 3.0.3)
     200 Always in UTF8 mode.
     用户(192.168.0.104:(none)): joysoarkey
     331 Please specify the password.
     密码:
     230 Login successful.
     ftp>
     ```
     
     
  7. 上传下载

    上传:put 文件名

    下载:get 文件名

    有图形化界面的开源ftp软件:FileZilla

    ftp

SSH服务器 - openssh-server

  1. 检查是否已经安装
    在终端输入ssh localhost,若出现以下提示说明未安装

    joysoarkey@Ubuntu-PC:~$ ssh localhost
    ssh: connect to host localhost port 22: Connection refused

    以下提示说明已经安装

    joysoarkey@Ubuntu-PC:~$ ssh localhost
    joysoarkey@localhost's password: 
    Welcome to Ubuntu 16.10 (GNU/Linux 4.8.0-59-generic x86_64)
    
     * Documentation:  https://help.ubuntu.com
     * Management:     https://landscape.canonical.com
     * Support:        https://ubuntu.com/advantage
0 packages can be updated.
0 updates are security updates.

Last login: Sun Jul 30 20:19:51 2017 from 192.168.0.101

```
  1. 安装ssh-server

    sudo apt-get install openssh-server
  2. 远程登录

    ssh 用户名@IP
    

安装JDK

  1. 下载JDK
    JDK官网下载地址
  2. 解压JDK
    设置存放路径为/opt(可自定义),进入到root账户,将下载好的JDK文件拷贝到/opt目录

            cp jdk-8u144-linux-i586.tar.gz /opt

    解压

        tar zxvf jdk-8u144-linux-i586.tar.gz 

    等待一段时间,JDK就解压完成了。JDK目录下有以下文件
    JDK目录

  3. 设置环境变量
    在/etc/profile中进行JDK环境变量的编辑。

        vi /etc/profile

    在文件的最后加入以下几行(对应的位置填你的JDK解压目录)【注意不要输错】

        export JAVA_HOME=/opt/jdk1.8.0_144
        export JRE_HOME=/opt/jdk1.8.0_144/jre
        export PATH=$JAVA_HOME/bin:$PATH 
        export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 

    配置完成之后,一定记得要用命令source /etc/profile刷新配置文件,让配置文件生效!!!

  4. 检验是否安装成功
    在终端输入java,出现以下界面说明已经安装配置成功了!恭喜!

    root@ubuntu:~$ java
    Usage: java [-options] class [args...]
               (to execute a class)
       or  java [-options] -jar jarfile [args...]
               (to execute a jar file)
    where options include:
        -d32      use a 32-bit data model if available
        -d64      use a 64-bit data model if available
        -client      to select the "client" VM
        -server      to select the "server" VM
        -minimal      to select the "minimal" VM
                      The default VM is client.
    
        -cp <class search path of directories and zip/jar files>
        -classpath <class search path of directories and zip/jar files> A : separated list of directories, JAR archives, and ZIP archives to search for class files.
         -D<name>=<value>
                      set a system property
        -verbose:[class|gc|jni]
                      enable verbose output
        -version      print product version and exit
        -version:<value>
                      Warning: this feature is deprecated and will be removed
                      in a future release.
                      require the specified version to run
        -showversion  print product version and continue
        -jre-restrict-search | -no-jre-restrict-search
                      Warning: this feature is deprecated and will be removed
                      in a future release.
                      include/exclude user private JREs in the version search
        -? -help      print this help message
        -X            print help on non-standard options
        -ea[:<packagename>...|:<classname>]
        -enableassertions[:<packagename>...|:<classname>]
                      enable assertions with specified granularity
        -da[:<packagename>...|:<classname>]
        -disableassertions[:<packagename>...|:<classname>]
                      disable assertions with specified granularity
        -esa | -enablesystemassertions
                      enable system assertions
        -dsa | -disablesystemassertions
                      disable system assertions
        -agentlib:<libname>[=<options>]
                      load native agent library <libname>, e.g. -agentlib:hprof
                      see also, -agentlib:jdwp=help and -agentlib:hprof=help
        -agentpath:<pathname>[=<options>]
                      load native agent library by full pathname
        -javaagent:<jarpath>[=<options>]
                      load Java programming language agent, see java.lang.instrument
        -splash:<imagepath>
                      show splash screen with specified image
    See http://www.oracle.com/technetwork/java/javase/documentation/index.html for more details.
    
  5. 编写一个java文件测试
    编辑Hello.java文件

    public class Hello{
          public static void main(String[] args){
                System.out.println("Hello World!");
          }
    }

    编译:javac Hello.java

    执行:java Hello

    顺利输出:Hello World!

    至此,JDK的配置已经完成!

Tomcat服务器

  1. 下载Tomcat
    Tomcat官网下载
  2. 解压Tomcat
    先将下载好的安装包拷贝到/opt中(目录可根据你自己喜好而定)

        cp apache-tomcat-9.0.0.M22.tar.gz /opt 

    解压

        tar zxvf apache-tomcat-9.0.0.M22.tar.gz
  3. 启动server服务
    进入到tomcat的bin目录下,启动服务

        ./startup.sh

    启动成功后会输出

        Using CATALINA_BASE:   /opt/apache-tomcat-9.0.0.M22
        Using CATALINA_HOME:   /opt/apache-tomcat-9.0.0.M22
        Using CATALINA_TMPDIR: /opt/apache-tomcat-9.0.0.M22/temp
        Using JRE_HOME:        /opt/jdk1.8.0_144
        Using CLASSPATH:       /opt/apache-tomcat-9.0.0.M22/bin/bootstrap.jar:/opt/apache-tomcat-9.0.0.M22/bin/tomcat-juli.jar
        Tomcat started.

    此时即可在浏览器中通过IP:8080访问tomcat了。

mysql

  1. 安装mysql

    sudo apt-get install mysql-server mysql-client

    在安装过程中会出现以下提示,这里输入数据库root用户的密码。安装mysql安装mysql

  2. 检查mysql是否安装成功

    sudo netstat -tap | grep mysql

    成功的话会显示如下信息成功信息

  3. 常用操作

    • 登录: mysql -uroot -p
    • 检查MySQL服务器占用端口: netstat -nlt|grep 3306
    • 检查MySQL服务器系统进程: ps -aux|grep mysql
    • 查看数据库的字符集编码: show variables like '%char%';
  4. 开启mysql远程访问
    如果你输入命令 netstat -nlt|grep 3306 ,显示的不是0.0.0.0:*,而是127.0.0.1:3306
    那么就需要开启mysql的远程访问功能。
    (1)打开mysql配置文件

    sudo vim /etc/mysql/my.cnf
    #找到将bind-address = 127.0.0.1注销​
    #bind-address            = 127.0.0.1

    (2)修改完重启mysql

    sudo /etc/init.d/mysql restart

    (3)检查mysql占用端口

    netstat -nlt|grep 3306
    tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN

    此时即为成功开启远程访问

    注:mysql版本不同的话,可能设置也不同。可以参考以下文章。

  5. 设置字符集为UTF-8
    首先查看数据库字符编码,输入 show variables like 'character\_set_%';

    mysql> show variables like 'character_set_%';
    +--------------------------+----------------------------+
    | Variable_name            | Value                      |
    +--------------------------+----------------------------+
    | character_set_client     | utf8                       |
    | character_set_connection | utf8                       |
    | character_set_database   | latin1                     |
    | character_set_filesystem | binary                     |
    | character_set_results    | utf8                       |
    | character_set_server     | latin1                     |
    | character_set_system     | utf8                       |
    | character_sets_dir       | /usr/share/mysql/charsets/ |
    +--------------------------+----------------------------+
    8 rows in set (0.03 sec)

    接下来将latin1编码的属性改为utf8,有两种方法,一种是通过mysql命令修改,一种是通过配置文件修改。

    • 通过mysql命令行

      mysql> set character_set_client=utf8;
      Query OK, 0 rows affected (0.00 sec)
      mysql> set character_set_connection=utf8;
      Query OK, 0 rows affected (0.00 sec)
      mysql> set character_set_database=utf8;
      Query OK, 0 rows affected (0.00 sec)
      mysql> set character_set_results=utf8;
      Query OK, 0 rows affected (0.00 sec)
      mysql> set character_set_server=utf8;
      Query OK, 0 rows affected (0.00 sec)
      mysql> set character_set_system=utf8;
      Query OK, 0 rows affected (0.01 sec)
      mysql> set collation_connection=utf8;
      Query OK, 0 rows affected (0.01 sec)
      mysql> set collation_database=utf8;
      Query OK, 0 rows affected (0.01 sec)
      mysql> set collation_server=utf8;
      Query OK, 0 rows affected (0.01 sec)
    • 通过配置文件修改

        打开mysql配置文件:
          sudo vim/etc/mysql/my.cnf
        在[client]下追加:
           default-character-set=utf8在[mysqld]下追加:
           character-set-server=utf8
        在[mysql]下追加:
           default-character-set=utf8

      再次查看字符编码,确保已经修改成功,如下

      mysql> show variables like 'character%';
      +--------------------------+----------------------------+
      | Variable_name            | Value                      |
      +--------------------------+----------------------------+
      | character_set_client     | utf8                       |
      | character_set_connection | utf8                       |
      | character_set_database   | utf8                       |
      | character_set_filesystem | binary                     |
      | character_set_results    | utf8                       |
      | character_set_server     | utf8                       |
      | character_set_system     | utf8                       |
      | character_sets_dir       | /usr/share/mysql/charsets/ |
    1. rows in set (0.00 sec)

相关资料

2017-10-30 14:49:24 weixin_33937499 阅读数 0


一、软件环境

1、操作系统版本

[root@Geeklp201 etc]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)

2、实践环境IP规划

服务端:192.168.237.201

客户端:192.168.237.202        192.168.237.203

二、安装服务端及客户端相关软件

服务端(192.168.237.201)需安装ntpd服务,ntpdate会被作为依赖包被安装。当然,也可以直接找到ntpdrpm包单独安装。强烈不建议使用源码安装。

[root@Geeklp201 ~]# yum -y install  ntp

安装完成之后我们会看到以下提示。

已安装:

ntp.x86_64 0:4.2.6p5-25.el7.centos.2                                                                                                                                

作为依赖被安装:

ntpdate.x86_64 0:4.2.6p5-25.el7.centos.2

查看一下当前系统时间:

[root@Geeklp201 ~]# date

2017年 10月 26日 星期四 18:51:45 CST

查看一下刚刚安装的ntpd服务:

[root@Geeklp201 ~]# systemctl status ntpd

● ntpd.service - Network Time Service

  Loaded:loaded (/usr/lib/systemd/system/ntpd.service; disabled; vendor preset:disabled)

  Active:inactive (dead) since 四 2017-10-26 16:21:00 CST; 2h 30min ago

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

… ….

我们可以看到,服务并未运行,也没有开机启动。今天应该是1027日,但是实际显示的时间是26日。这是由于我自己的系统时间设置就是26日。

启动ntpd服务:

[root@Geeklp201 ~]# systemctl start ntpd

设置ntpd服务开机启动:

[root@Geeklp201 ~]# systemctl enable ntpd

Created symlink from/etc/systemd/system/multi-user.target.wants/ntpd.service to/usr/lib/systemd/system/ntpd.service.

稍等片刻之后,再次执行date命令,时间已经正确显示:

[root@Geeklp201 ~]# date

2017年 10月 27日 星期五 09:56:24 CST

接下来分别在2台客户机上安装ntpdate

[root@Geeklp202 ~]# yum -y install ntpdate

安装完毕之后执行命令:

[root@Geeklp202 ~]# ntpdate 192.168.237.201

27 Oct 10:32:36ntpdate[7318]: no server suitable for synchronization found

时间同步并没有成功,原因是在服务端我们开启了防火墙,关闭防火墙:

[root@Geeklp201 ~]# systemctl stop firewalld

如果使用的是iptables防火墙,那么也是需要关闭的:

[root@Geeklp201 ~]# systemctl stop iptables

[root@Geeklp201 ~]# systemctl stop ip6tables

再次在客户端执行:

[root@Geeklp202 ~]# ntpdate 192.168.237.201

27 Oct 10:36:35ntpdate[7320]: adjust time server 192.168.237.201 offset 0.017485 sec

时间同步成功。如果没有什么其他要求,NTP服务器至此完全搭建完成。

三、个性化配置

1、关于防火墙设置

关闭NTP服务器上的防火墙并非万全之策,毕竟存在即合理。最好的解决方案一定不会是关闭防火墙。接下来,我们尝试把ntpd服务添加到防火墙策略里面。由于CentOS7默认使用的防火墙是firewalld,所以只需要配置firewalld开放ntpd使用的123端口即可。

由于此NTP服务器需要放在dmz区域,所以我们需要把dmz区设置为默认区:

[root@Geeklp201 ~]# firewall-cmd --set-default-zone=dmz

把接口添加到dmz区:

[root@Geeklp201 ~]# firewall-cmd --permanent --zone=dmz--add-interface=ens33

ntpd服务使用的端口是123,协议是udp协议,添加到防火墙策略:

[root@Geeklp201 ~]# firewall-cmd --permanent --zone=dmz--add-port=123/udp

重载防火墙:

[root@Geeklp201 ~]# firewall-cmd --reload

在服客户端行ntpdate命令:

[root@Geeklp202 ~]# ntpdate 192.168.237.201

27 Oct 11:23:24ntpdate[7436]: adjust time server 192.168.237.201 offset 0.023007 sec

如果使用的是iptables防火墙,也需要作相关配置,在此不作赘述。

2ntpd.conf的个性化配置

在ntp.conf配置文件内可以利用“restrict”来控管权限,这个参数的设定方式为:

restrict [你的IP] mask[netmask_IP] [parameter]

由于公司内网网段划分比较复杂,在此并未作限制。使用原有默认设置:

restrict default nomodify notrap nopeer noquery

restrict参数作用如下如下,可根据时间情况进行添加:

ignore:拒绝所有类型的 NTP 联机;

nomodify:客户端不能使用ntpc与ntpq这两支程序来修改服务器的时间参数,但客户端仍可透过这部主机来进行网络校时的;

noquery:客户端不能够使用 ntpq,ntpc 等指令来查询时间服务器,相当于不提供 NTP 的网络校时;

notrap:不提供 trap 这个远程事件登录(remote event logging) 的功能;

notrust:要求客户端必须通过认证,否则拒绝没有认证的客户端;

nopeer:用于阻止主机尝试与服务器对等,并允许欺诈性服务器控制时钟;

kod:访问违规时发送 KoD 包;

restrict-6:表示IPV6地址的权限设置。

在本配置文件中以serve打头这一行,就是为我们提供ntp服务的上层服务器域名或IP。我使用了如下几个提供ntp服务的域名:

server cn.ntp.org.cn perfer

server edu.ntp.org.cn iburst

server0.centos.pool.ntp.org iburst

server1.centos.pool.ntp.org iburst

server2.centos.pool.ntp.org iburst

server3.centos.pool.ntp.org iburst

配置文件修改完毕,保存之后重启ntp服务:

[root@Geeklp201 ~]# systemctl restart ntpd

看一下当前NTP服务器对上层服务的联机情况:

[root@Geeklp201 ~]# ntpq -p

ntpq -p可以列出目前我们的 NTP与相关的上层 NTP的状态,表头的的几个字段的意义为:

remote NTP主机的 IP或主机域名,注意最左边的符号

如果有『 *』代表目前正在使用中的上层 NTP

如果是『 +』代表也有连上线,而且可作为下一个提供时间更新的候选者

refid:参考的上一层 NTP主机的地址

st:就是 stratum级别,正在响应请求的NTP服务器的级别;

when:几秒钟前曾经做过时间同步化更新的动作

poll:下一次更新在几秒钟之后;

reach:已经向上层 NTP服务器要求更新的次数

delay:网络传输过程当中延迟的时间,单位为 10^(-6)

offset:时间补偿的结果,单位与 10^(-3)

jitterLinux系统时间与 BIOS 硬件时间的差异时间,单位为 10^(-6)秒。

我们还可使用ntpstat查看一下当前NTP服务器的同步情况:

[root@Geeklp201 ~]# ntpstat

synchronisedto NTP server (202.112.31.197) at stratum 3

  time correct to within 41 ms

  polling server every 64 s

3、客户端设置

修改/etc/sysconfig/ntpdate,让ntpdate每次同步时间之后把时间写入hwclock,相当于命令hwclock -w

把最后一行SYNC_HWCLOCK=no修改为:SYNC_HWCLOCK=yes

4、客户端定时任务配置

[root@Geeklp202 ntp]# crontab -e

5923 * * */sbin/ntpdate 192.168.237.201

设置为每天23:59分执行,重启crond服务。至此,NTP服务器构建完成。

[root@Geeklp202 ntp]# systemctl status crond

在CentOS7中,系统已经集成了另一款更好用的NTP服务软件chrony,在后续的文章中我们将进一步讨论。

参考资料:

https://www.eecis.udel.edu/~mills/ntp/html/index.html  

http://blog.csdn.net/sztyler/article/details/5937458

http://www.ntp.org

没有更多推荐了,返回首页