zoukankan      html  css  js  c++  java
  • linux同步windows的时间

    找了很多的资料,都没有windows做时间服务,linux同步windows的时间的,最后自己找了一些软件,终于搞定了,写出来给大家共享,以免大家多走弯路

      首先在http://www.meinberg.de/english/sw/index.htm

      下载了一个windows的NTP服务程序:ntp4171.zip

      windows 192.168.1.32

      1.安装是提示设置服务器地址,我设置的本机widows机器的IP

      2.ntpd的控制在:

      控制面板->;管理工具->;组件服务-NetworkTimeProtocol

      3.可以启动ntpd守护进程保持时间同步

      4.在C:WINNT目录下有个ntp的配置文件ntp.conf

      设置为:

      server 127.127.1.0 prefer

      fudge 127.127.1.0 stratum 10

      5.确定ntp是否工作: ntpq -p

      linux和Windows同步,我用的是RedHat 9.0

      执行命令:ntpdate 192.168.1.32

      你就会发现你的时间变化了,和192.168.1.32的时间一样

      如果执行命令出现一下错误

      1.提示:7 Dec 19:24:55 ntpdate[2120]: the NTP socket is in use, exiting

      这个是你linux机器上已经存在这个进程,输入:ps -ef | grepntpd

      Kill掉ntp的进程

      2.提示:No Server suitable for synchronization found

      这个是最容易出现的问题,比较常见的是配置好服务器并启动服务器进程后,马上

      启动客户进程,那么客户进程就会报错。解决方法是,在大约3-5分钟以后启动进程就行

      我想每隔10分钟就和Windows服务同步时间

      1.创建自己的一个crontab文件,随便建立一个文件date.cron,首先可以使用任何文本

      编辑器建立一个新文件,然后向其中写入需要运行的命令和要定期执行的时间。

      vi date.cron加入下面要运行的命令和要定期执行的时间

      */10 * * * * /usr/sbin/ntpdate 192.168.1.32

      然后存盘退出

      2.使用crontab命令来安装这个文件,使之成为该用户的crontab文件。键入:

      crontabdate.cron

      这个文件已经建立好了

      3.使用命令:

      crontab -l (查看安排的作业序列)可以看到刚才的作业

      如:

      [root@NXD-TEST root]# crontab -l

      # DO NOT EDIT THIS FILE - edit the master and reinstall.

      # (date.cron installed on Tue Dec 7 18:22:42 2004)

      # (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixieExp $)

      */10 * * * * /usr/sbin/ntpdate 192.168.1.32

      现在就OK了,每隔10分钟Linux就和服务端同步一次。

    ====================================================================

    1、Linux主机做时间服务器(以RedHat9.0为例)
    第一步:检查是否已经安装有ntp软件包。输入“rpm -qa|grep ntp”,如果已经安装应该显示“ntp-4.1.2-0.rc1”。
      第二步:安装ntp软件,从ftp://ftp.redhat.com下载rpm包,输入“rpm -ivh ntp-xxx.rpm”执行安装。
      第三步:配置ntp服务。备份原/etc/ntp.conf文件后,输入以下内容
     server pool.ntp.org
    server pool.ntp.org
    server pool.ntp.org
    driftfile /etc/ntp/drift
    三行server都设pool.ntp.org是为了提供连接冗余,当第一个地址连接失败时,后面的地址提供时间服务,注意这里的pool.ntp.org对应一组IP地址,由DNS随机分配。
      第四步:启动ntp服务。输入“service ntp restart”。
      为了保证以后Linux机启动后ntp服务能自动启动,还要输入“chkconfig ntpd on”。Linux下的ntp软件不但能自动与互联网上的时钟保持同步,同时本身已经是一台SNTP服务器了,可以供局域网内的电脑校对时间。建议启动 NTP服务后,先用date命令手工校正一下时间,以后系统会自动与互联网上的主时间服务器保持同步。ntp服务还有一个好处,如果当前系统的时间与标准时间有所误差,它不是马上把时间校正,而是逐步缩小与标准时间的误差,以免系统内部出现时间突变。
    2、Windows2000、XP做时间服务器
      第一步:指定主时间服务器。在DOS方式输入“net time /setsntp:pool.ntp.org”,这里我们指定pool.ntp.org是主时间服务器,也可以是其它地址。
      第二步:开始与主时间服务器同步。先关闭windows time服务,再开启该服务。可以在“管理工具”的“服务”界面下完成,也可以以DOS方式输入“net stop w32time”、“net start w32time”。
      第三步:设置电脑的Windows time服务的启动方式为自动。在“管理工具”的“服务”界面下完成。
      注意这台windows主机不能加入任何域,否则无法启动windows time服务。此时,这台windows电脑已经是互联上主时间服务器的客户了,以后每次电脑启动时,都会自动与主时间服务器校对时间。如果网络不通,电脑也会过45分钟后再次自动校对时间。需要注意的是电脑的时钟与标准时间误差不能超过12小时,否则不能自动校对,而要手动校正了。
      第四步:使这台电脑成为时间服务器,供局域网内部的电脑校对时间。用“regedit”打开注册表,把 “HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeParameters”中的 LocalNTP改为1即可。
    3、Windows98做时间服务器
      一般不推荐Windows98系统做时间服务器,而且win98本身也不含时间服务器功能,需要安装第三方软件。本文后面介绍的nettime软件(http://nettime.sourceforge.net/)是一个非常优秀的时间客户端软件,它可以工作在windows98、2000、XP 系统中,当选中“Allow other computers to sync to this computer”时,可以把这台电脑当做成时间服务器。


    五、设置时间服务器的客户端
      客户端的主要任务是连接到局域网内的时间服务器,以保持电脑的时钟与服务器同步。同样分Linux、Windows98、2000、XP几种情况介绍
    1、LINUX主机
      其实在上面介绍Linux系统中的ntp服务时,已经提到ntp时间服务时同时也是一个时间服务的客户端,只要把/etc/ntp.conf文件中的 “server pool.ntp.org”改为“server 内部时间服务器IP地址”即可。如不想使用ntp服务,也可使用ntp软件包中带来的ntpdate命令,只要手工执行“ntpdate 时间服务器IP地址”即可。如想每天自动对时,可以把这条命令放在cron中,注意在同一台电脑上ntp服务与ntpdate命令不能同时使用。
    2、Windows2000主机
      执行设置时间服务器时的前三步即可
    3、WindowsXP主机
      可以按Windows2000主机的方法设置,也可双击任务栏右下角的时钟图标,打开“日期时间属性”对话框,在“Internet时间”卡片上选中“自动与Internet时间服务器同步”,并在服务器上填入内部时间服务器的IP地址即可。
    4、Windows98主机
      需要安装第三方软件,自由(free)软件nettime是个不错的软件,它支持SNTP(UDP123)、TIME(TCP37)、TIME- UDP(UDP37)三种方法进行时间同步。软件操作简单,只要在上图的“Hostname or IP Address”中输入局域网内时间服务器的IP地址,“Protocol”中选SNTP即可。
      当然在windows98电脑上执行“net time 机器名或IP地址 /set /yes”也可能与其它windows电脑同步时钟,前提是这些电脑在同一网段,并且安装有netbios协议。把该命令放在autoexec.bat 中,就可以做到开机自动对时了。

  • 相关阅读:
    matlab二维绘图学习摘要
    linux下有名管道进程通信
    《编写可读代码的艺术》第10章 抽取不相关的子问题
    《编写可读代码的艺术》第9章 变量可读性
    《编写可读代码的艺术》第8章 拆分超长的表达式
    《编写可读代码的艺术》第7章 简化循环和逻辑
    《编写可读代码的艺术》第6章 写出言简意赅的注释
    《编写可读代码的艺术》第5章 该写什么样的注释
    《编写可读代码的艺术》第4章 审美
    《编写可读代码的艺术》第3章 不会误解的名字
  • 原文地址:https://www.cnblogs.com/jinjiangongzuoshi/p/3831874.html
Copyright © 2011-2022 走看看