linux同步系统时间
㈠ linux硬件时间与系统时间同步
方法/步骤
打开Ubuntu虚拟机,在桌面空白处右键 -- 打开终端。
㈡ linux怎么让系统时间硬件时间同步
Centos系统,必须同时修改系统时间和硬件时间,才可以保证修改有效,单纯的使用date命令修改系统时间,是立即生效,重启后系统还原。具体操作如下:
1.date {查看目前本地的时间}
2.hwclock --show {查看硬件的时间}
3.如果硬件时间和系统时间不同,那就对硬件的时间进行修改
4.hwclock --set --date '014-12-15 15:15:15' {设置硬件时间为14年12月15日15点15分15秒}
5.hwclock --hctosys {设置系统时间和硬件时间同步}
6.clock -w {保存时钟}
㈢ linux服务器怎么同步修改时间
一、搭建时间服务器
1、在一台linux服务器安装ntp server
2、修改ntp.conf配置文件
vi /etc/ntp.conf
restrict default nomodify
(允许任何IP的客户机都可以进行时间同步,如果是只允许某个网段的客户机进行时间同步可以这样写restrict 10.58.26.0 mask 255.255.255.0 nomodify)
3、以守护进程启动ntpd
#/etc/rc.d/init.d/ntpd -c /etc/ntp.conf -p /tmp/ntpd.pid
#/etc/rc.d/init.d/ntpd start
二、配置时间同步客户机
ntpdate 10.128.14.25
hwclock -w
使用cron 定时同步
vi /var/spool/cron/root(或crontab -e)
增加一行,在每天的1点10分、9点10分、17点10分与时间同步服务器进行同步并写入BIOS
10 1 ,9,17* * * root /usr/sbin/ntpdate 10.128.14.25; /sbin/hwclock -w
㈣ 如何在linux 上配置NTP 时间同步
一:NTP是网络时间同步协议,就是用来同步网络中各个计算机的时间的协议。
二:NTP服务端配置
2.1、检查系统是否安装了NTP包(linux系统一般自带NTP4.2),没有安装我们直接使用yum命令在线安装: yum install ntp
2.2、NTP服务端配置文件编辑: vim /etc/ntp.conf
结果:
restrict 控制相关权限。
语法为: restrict IP地址 mask 子网掩码 参数
其中IP地址也可以是default ,default 就是指所有的IP
参数有以下几个:
ignore :关闭所有的 NTP 联机服务
nomodify:客户端不能更改服务端的时间参数,但是客户端可以通过服务端进行网络校时。
notrust :客户端除非通过认证,否则该客户端来源将被视为不信任子网
noquery :不提供客户端的时间查询:用户端不能使用ntpq,ntpc等命令来查询ntp服务器
notrap :不提供trap远端登陆:拒绝为匹配的主机提供模式 6 控制消息陷阱服务。陷阱服务是 ntpdq 控制消息协议的子系统,用于远程事件日志记录程序。
nopeer :用于阻止主机尝试与服务器对等,并允许欺诈性服务器控制时钟
kod : 访问违规时发送 KoD 包。
restrict -6 表示IPV6地址的权限设置。
root@www ~]#vim /etc/ntp.conf# 1. 先处理权限方面的问题,包括放行上层服务器以及开放区网用户来源:restrict default kod nomodify notrap nopeer noquery <==拒绝 IPv4 的用户restrict -6 default kod nomodify notrap nopeer noquery <==拒绝 IPv6 的用户restrict 220.130.158.71 <==放行 tock.stdtime.gov.tw 进入本 NTP 服务器restrict 59.124.196.83 <==放行 tick.stdtime.gov.tw 进入本 NTP 服务器restrict 59.124.196.84 <==放行 time.stdtime.gov.tw 进入本 NTP 服务器restrict 127.0.0.1 <==底下两个是预设值,放行本机来源restrict -6 ::1restrict 192.168.100.0 mask 255.255.255.0 nomodify <==放行区网来源# 2. 设定主机来源,请先将原本的 [0|1|2].centos.pool.ntp.org 的设定注解掉:server 220.130.158.71 prefer <==以这部主机为最优先server 59.124.196.83server 59.124.196.84# 3.预设时间差异分析档案与暂不用到的 keys 等,不需要更动它:driftfile /var/lib/ntp/driftkeys /etc/ntp/keys
ntpd、ntpdate的区别
下面是网上关于ntpd与ntpdate区别的相关资料。如下所示所示:
使用之前得弄清楚一个问题,ntpd与ntpdate在更新时间时有什么区别。ntpd不仅仅是时间同步服务器,它还可以做客户端与标准时间服务器进行同步时间,而且是平滑同步,并非ntpdate立即同步,在生产环境中慎用ntpdate,也正如此两者不可同时运行。
时钟的跃变,对于某些程序会导致很严重的问题。许多应用程序依赖连续的时钟——毕竟,这是一项常见的假定,即,取得的时间是线性的,一些操作,例如数据库事务,通常会地依赖这样的事实:时间不会往回跳跃。不幸的是,ntpdate调整时间的方式就是我们所说的”跃变“:在获得一个时间之后,ntpdate使用settimeofday(2)设置系统时间,这有几个非常明显的问题:
第一,这样做不安全。ntpdate的设置依赖于ntp服务器的安全性,攻击者可以利用一些软件设计上的缺陷,拿下ntp服务器并令与其同步的服务器执行某些消耗性的任务。由于ntpdate采用的方式是跳变,跟随它的服务器无法知道是否发生了异常(时间不一样的时候,唯一的办法是以服务器为准)。
第二,这样做不精确。一旦ntp服务器宕机,跟随它的服务器也就会无法同步时间。与此不同,ntpd不仅能够校准计算机的时间,而且能够校准计算机的时钟。
第三,这样做不够优雅。由于是跳变,而不是使时间变快或变慢,依赖时序的程序会出错(例如,如果ntpdate发现你的时间快了,则可能会经历两个相同的时刻,对某些应用而言,这是致命的)。因而,唯一一个可以令时间发生跳变的点,是计算机刚刚启动,但还没有启动很多服务的那个时候。其余的时候,理想的做法是使用ntpd来校准时钟,而不是调整计算机时钟上的时间。
NTPD 在和时间服务器的同步过程中,会把 BIOS 计时器的振荡频率偏差——或者说 Local Clock 的自然漂移(drift)——记录下来。这样即使网络有问题,本机仍然能维持一个相当精确的走时。
㈤ linux虚拟机时间与windows时间如何同步
要让虚拟机的linux和实际时间一致,最简单的步骤是:
(1)将虚拟机linux和主机时间同步,可以先在虚拟机的设置里面-选项-VMware Tools开启客户机与主机时间同步(其实默认就开的)
(2)开启了时间同步但是还是和实际时间不一样,那么可能是时区设置不对,这时最简单的方法是进入系统的图形界面,点击右上角的时间,进入时间、时区设置(和window设置时间差不多),edit location,add location,城市输入shanghai或者beijing,等它自动识别(前提是虚拟机系统联网了)。最后重启系统!
注意:也可以从菜单进入system->administration->date&time设置
(3)如果只是虚拟机系统的时间和实际的时间相差16个小时则可以按照下面介绍的方法设置
系统启动后发现时间显示问题:
[root@pps ~]# date
Sat Mar 7 08:58:27 PST 2009
其实现在是北京时间 2009年3月8日00:58,相差16个小时。
网上搜索一下PST时间,原来PST时间为美国太平洋标准时间,此时区位于格林威治向西8个时区,晚北京时间16个小时。
发现 /etc/sysconfig/clock 文件配置的是美国时间:
[root@pps ~]# cat /etc/sysconfig/clock
ZONE="America/Los_Angeles"
UTC=true
ARC=false
UTC为true表示RTC保存的时间是UTC时间,false表示保存的是本地时间。
于是将其修改为:
[root@pps ~]# cat /etc/sysconfig/clock
ZONE="Asia/Shanghai"
UTC=false
ARC=false
重启系统后问题依旧!于是想到了 locale
[root@pps ~]# locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
[root@pps ~]# cat /etc/sysconfig/i18n
LANG="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"
修改后为:
[root@pps ~]# cat /etc/sysconfig/i18n
LANG="zh_CN.UTF-8" /* 英文环境可以改成zh_US.UTF-8 */
SYSFONT="latarcyrheb-sun16"
保存退出再次登陆执行date
[root@pps ~]# date
2009年 03月 07日 星期六 09:13:44 PST
如果上面的是设置不行,尝试一下下面的命令:
还是显示PST时间,
# rm /etc/localtime
# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
㈥ linux系统时钟同步命令
1. date命令
#date 查看系统时间
#date -set “10/30/20 11:30” 设置月/日/年/ 时:分:秒
2.clock命令
#clock -show 查看硬件时间
3.硬件时间和系统时间同步
重新启动系统,硬件时间会读取系统时间,实现同步。
但是,不重启的情况下,需要用clock命令实现同步。
#clock -systohc
㈦ windows时间和linux时间同步吗
两者可通过手动调整同步,如果任意一方在virtualbox虚拟机也可在settings->system->motherboard界面下选中hardware clock in utc-time,这时与宿主系统自动同步。
㈧ linux系统如何设置时间同步
linux自带了ntp服务
--
/etc/init.d/ntpd,这个服务不仅可以设置让本机和某台/某些机器做时间同步,他本身还可以扮演一个time server的角色,让其他机器和他同步时间。
配置文件就是/etc/ntp.conf。
为了测试,设置让node2
--
192.168.1.102和node1
--
192.168.1.101做时间同步。
第一步,
node1做time
server,node1本身不和其他机器时间同步,就是取本地时间。
所以,先把node1机器的时间调准了:
[root@node1
~]date
-s
08/03/2011
[root@node1
~]date
-s 11:12:00
[root@node1
~]clock
-w
[root@node1
~]hwclock
--systohc
后两个命令是把设置的时间写到硬件时间中去(也就是cmos里面的时间)。
第二步,
然后将node1配置成一个time
server,修改/etc/ntp.conf,
[root@node1
~]vi
/etc/ntp.conf
其他的配置不怎么需要改,只需要关注restrict的配置:
1.
注释掉原来的restrict
default
ignore这一行,这一行本身是不响应任何的ntp更新请求,其实也就是禁用了本机的ntp
server的功能,所以需要注释掉。
2.
加入:restrict
192.168.1.0
mask
255.255.255.0
--
让192.168.1.0/24网段上的机器能和本机做时间同步
3.
这样就可以了,记得下面的:
server
127.127.1.0
#
local
clock
fudge
127.127.1.0
stratum
10
这两行需要,这是让本机的ntpd和本地硬件时间同步。
当然,我们也可以添加server
xxx.xxx.xxx.xxx,让他和其他的time
server时间同步。
4.
/etc/init.d/ntpd
restart
5.
chkconfig
ntpd
on
6.
修改iptables配置,将tcp和udp
123端口开放,这是ntp需要的端口,在/etc/services中可以查到这个端口。
第三步,
这样node1就成为一台time
server了,现在我们配置node2这台机器,也是修改/etc/ntp.conf
,
[root@node2
~]vi
/etc/ntp.conf
1.
restrict
default
ignore这行保留为注释状态,因为sales不需要做time
server
2.
注释掉server
127.127.1.0,
fudge
127.127.1.0
stratum
10这两行,因为这台机器不需要和本地硬件时钟同步了。
3.
加入server
192.168.1.101这行,和node1机器同步。
这样就ok了。看看时间,已经和node1同步了。往后默认配置好像是5分钟和time
server同步一次。ntpdate命令是显式的和某台机器做时间同步,以前将ntpdate放到crontab中定期同步也是可以的,但是既然ntpd本身就可以做这个时间
第四步,将ntpdate放到crontab中定期步也是可以的
[root@node2
~]#vi
ntpupdate.sh
/usr/sbin/ntpdate
192.168.1.101
[root@node2
~]#chmod
755
ntpupdate.sh
[root@node2
~]#crontab
-e
*/1
*
*
*
*
/root/ntpupdate.sh
[root@node2
~]#/etc/init.d/crond
restart
㈨ linux系统硬件时间和系统时间
在Linux中有硬件时钟与系统时钟两种时钟。硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟。系统时钟则是指kernel中的时钟。所有Linux相关指令与函数都是读取系统时钟的设定。因为存在两种不同的时钟,那么它们之间就会存在差异。当Linux启动时,系统时钟会去读取硬件时钟的设定,之后系统时钟即独立运作。
用date命令对系统时间进行设置后,并不会去修改硬件时钟,所以系统重启后,系统时间还算会去读取硬件时间,这就是为何date设置失效到原因。
因此,需要在设置系统时间后,将系统时间同步到硬件时钟。
clock/hwclock:
显示与设定硬件时钟(query and set the hardware clock (RTC)),两个命令相同。RTC=Real Time Clock,也就是硬件时钟。
命令参数:
-r, --show 读取并打印硬件时钟(read hardware clock and print result)-s, --hctosys 将硬件时钟同步到系统时钟(set the system time from the hardware clock)-w, --systohc 将系统时钟同步到硬件时钟(set the hardware clock to the current system time)
命令示例:
1. 查看硬件时钟
2014年03月27日 星期四 11时03分50秒 -0.328520 seconds
[root@localhost ~]# hwclock -r
2014年03月27日 星期四 11时03分53秒 -0.797264 seconds
[root@localhost ~]# hwclock --show
2014年03月27日 星期四 11时04分01秒 -0.672267 seconds
2. clock与hwclock相同
同步网络时间到系统时间
[root@localhost ~]# ntpdate 210.72.145.4427 Mar 11:11:24 ntpdate[4766]: adjust time server 210.72.145.44 offset 0.011401 sec
210.72.145.44(中国西安授时中心的官方时间同步服务器IP域名)
同步网络时间到系统时间后,就可以用hwclock -w将系统时间同步到硬件时间。
修改时区
可能部分系统在执行以上两步后,在重启后仍然失效,所以需要进行时区修改。
[root@localhost ~]# tzselect #按照提示进行选择时区
[root@localhost ~]# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
修改系统时间配置文件
[root@localhost ~]# /etc/sysconfig/clock
#打开clock文件,将相关内容改成以下内容
UTC=false
ARC=false
ZONE="Asia/Shanghai"
重启系统
[root@localhost ~]# reboot