当前位置:首页 » 操作系统 » linux硬件时间同步

linux硬件时间同步

发布时间: 2022-11-17 23:42:12

linux系统下的NTP配置

第一步,选择最好的NTP服务地址

具体命令为ntpdate -q IP地址或域名

广东地区NTP优选结果如下:

①time4.cloud.tencent.com

②server time.asia.apple.com

③server cn.ntp.org.cn

④server ntp.aliyun.com

⑤server cn.pool.ntp.org

检查BIOS主板时间的命令

hwclock -r

NTP服务启停命令

sudo systemctl start/stop ntpd

检查查看ntp服务器有无和上层ntp连通

ntpstat

查看ntp服务器与上层ntp的状态

ntpq -pn

===server选项格式===

server host  [ key n ] [ version n ] [ prefer ] [ mode n ] [ minpoll n ] [ maxpoll n ] [ iburst ]

其中host是上层NTP服务器的IP地址或域名,随后所跟的参数解释如下所示:

◆ key: 表示所有发往服务器的报文包含有秘钥加密的认证信息,n是32位的整数,表示秘钥号。

◆ version: 表示发往上层服务器的报文使用的版本号,n默认是3,可以是1或者2。

◆ prefer: 如果有多个server选项,具有该参数的服务器优先使用。

◆ mode: 指定数据报文mode字段的值。

◆ minpoll: 指定与查询该服务器的最小时间间隔为2的n次方秒,n默认为6,范围为4-14。

◆ maxpoll:  指定与查询该服务器的最大时间间隔为2的n次方秒,n默认为10,范围为4-14。

◆ iburst: 当初始同步请求时,采用突发方式接连发送8个报文,时间间隔为2秒。

===同步硬件时钟===

ntp服务,默认只会同步系统时间。

如果想要让ntp同时同步硬件时间,可以设置/etc/sysconfig/ntpd文件,

在/etc/sysconfig/ntpd文件中,添加【SYNC_HWCLOCK=yes】这样,就可以让硬件时间与系统时间一起同步。

允许BIOS与系统时间同步,也可以通过hwclock -w 命令。

hwclock命令用来查询和设置硬件时钟。

hwclock -r 读取并打印硬件时钟

hwclock -s 将硬件时钟同步到系统时钟

hwclock -w  将系统时钟同步到硬件时钟

系统时钟与硬件时钟

在Linux中有硬件时钟与系统时钟等两种时钟。硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟。系统时钟则是指kernel中的时钟。当Linux启动时,系统时钟会去读取硬件时钟的设定,之后系统时钟即独立运作。所有Linux相关指令与函数都是读取系统时钟的设定。

参考文档:

Linux服务器NTP客户端配置——https://www.cnblogs.com/paul8339/p/10059364.html

NTP服务、客户端配置详解——https://blog.51cto.com/u_11392081/1784080

② linux硬件时间与系统时间同步

方法/步骤

  • 打开Ubuntu虚拟机,在桌面空白处右键 -- 打开终端。

③ linux 嵌入式软硬件时钟 怎么同步

置硬件时间,

开机时Linux会从硬件的rtc的时钟芯片中获取一次硬件时间,然后以此为基础来运行系统时间。
settimeofday 相当于date shell命令,紧紧能设置系统时间。

如果想设置硬件时间,需要一个hwclock -w shell原理的函数来写硬件的rtc。
扒一扒 busybox的 hwclock.c源码(http://www.codeforge.cn/read/97203/hwclock.c__html)
可以知道这么抄写功能源码:

[cpp] view plain
static void write_rtc(time_t t, int utc)
{
int rtc;
struct tm tm;

if (( rtc = open ( "/dev/rtc", O_WRONLY )) < 0 )
{
if (( rtc = open ( "/dev/misc/rtc", O_WRONLY )) < 0 )
bb_perror_msg_and_die ( "Could not access RTC

④ 如何把suse linux 系统时间同步

问题提出:
由于安装系统时,设置的系统时间比实际日期晚了一天,所以发布版本时,有些文件的建立时间比发布时间还晚,因为这个问题版本组还被人提过单;而且在makefile的时候也可能出错,因为makefile的判断条件是源文件的修改时间是不是比目的文件修改时间更早,所以日期不正常经常会造成麻烦。
后来尝试使用date命令和通过yast2管理工具来修改时间,修改后发现时间会回退到修改前的时间。
问题分析:
计算机系统有两个时钟,一个是BIOS,或者CMOS,或者说“硬件时钟”,还有一个就是“系统(操作系统)时钟”.
Linux启动时,其中的一个脚本(/etc/rc.d/rc.sysinit)会运行/sbin/hwclock程序,把当前的硬件时钟复制为系统时间;在系统运行过程中,为了保持系统时间与CMOS时间的一致性,Linux每隔一段时间会将系统时间写入CMOS.
我们使用date和yast修改的是系统时间。若是在修改时间在10分钟内就重启机器,修改的时间就可能没有被写入到CMOS中,而导致时间回退到修改前的时间。
解决方法:
1.以root用户登陆GBAM服务器。
2.输入命令rm/etc/adjtime,删除adjtime.
3.输入命令date月日时分年,修改和设置系统时间。
例如,如果想把GBAM时间设置成2006年11月26日12点01分,输入命令date 112612012006即可。
4.输入命令clock–w,同步硬件时钟和系统时间。
5.完成以上步骤后,使用reboot命令重启GBAM服务器,使用date命令看一下,时间是否已经正确修改。

⑤ linux系统怎么设置时间同步

命令行界面操作
1、对于linux系统大多数是命令行界面,所以先介绍字符界面同步时间方法。 首选安装ntpdate 时间同步服务, 利用yum install ntpdate

2、接着把linux系统时间同步到windows time公共时间服务器, ntpdate time.windows.com

3、设置时间同步脚本,虽然以上已经同步了时间,但是如果连不上网或者关机就不一样的时间了。可以通过设置计划任务,每天0点同步一下。
添加到crontab任务文件添加:00 0 1 * * root ntpate -s time.windows.com

4、除此之外,我们还可以通过用date命令查看 和手动设置系统时间(必须管理员账号权限。

图形界面设置
1、如果对命令行不熟悉,也可以通过图形界面设置来实现系统时间同步。 找到系统工具----管理员功能选项--- date\时间 和日期

2、启用网络时间,并且与之同步找到date\time 时间菜单之后,勾选“synchronize date and time over the network ”

3、设置正确的当地时区,除此之外,centos系统会根据当期语言来设置默认的时间和时区。对于咗嚛所在的china时间,是北京时间(下面那个UTC时间不要勾)

⑥ linux系统时间同步硬件时间

在Linux中设置系统时间,可以用date命令:
复制代码
1 //查看时间
2 [root@node1 ~]# date
3 Tue Feb 25 20:15:18 CST 2014
4 //修改时间
5 [root@node1 ~]# date -s "20140225 20:16:00" #yyyymmdd hh:mm:ss
6 Tue Feb 25 20:16:00 CST 2014
7 //date 有多种时间格式可接受,查看date --help

⑦ 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

⑧ 如何使两台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系统时钟同步命令

1. date命令
#date 查看系统时间
#date -set “10/30/20 11:30” 设置月/日/年/ 时:分:秒
2.clock命令
#clock -show 查看硬件时间
3.硬件时间和系统时间同步
重新启动系统,硬件时间会读取系统时间,实现同步。
但是,不重启的情况下,需要用clock命令实现同步。
#clock -systohc

⑩ 如何让linux时间与internet时间同步

首先来了解下面几个知识点:
1. date命令:
#date
显示系统时间
2.hwclock命令 (即hardwareclock系统硬件时间)
#hwclock
显示硬件时间
#hwclock -w
将系统时间写入到系统硬件当中
3.ntpdate
ntpdate 是一个linux时间同步服务软件,具体的详细资料请参考下网络,有很多详细的资料
第二、查看本机是否安装ntpdate服务,如果没有安装,请 yum install -y ntpdate
第三、同步时间
1. 输入ntpdate time.nist.gov同步网络时间
结果:3 Jun 15:42:39 ntpdate[4721]: adjust time server 211.115.194.21 offset -0.005885 sec
出现上述结果代表时间同步成功,上面的大致意思为调整时间为服务器211.115.194.21的时间,相差-0.005885秒的时间
如果上面time.nist.gov服务器同步不了,可以换下面几个时间服务器试试:
time.nist.gov
time.nuri.net
0.asia.pool.ntp.org
1.asia.pool.ntp.org
2.asia.pool.ntp.org
3.asia.pool.ntp.org
2.同步时间成功后调整硬件时间
#hwclock -w
执行成功后, 查看系统硬件时间(不出意外的话,现在date和hwclock现实的时间均为internet时间)
#date
#hwclock
执行上述命令,显示的时间应该一样的
四、定时执行时间同步任务,所以我们利用crontab -e 来添加定时任务
#* 1/ * * * root ntpdatetime.nuri.net;hwclock -w
即:每隔一个小时同步一下internet时间。

热点内容
内置存储卡可以拆吗 发布:2025-05-18 04:16:35 浏览:335
编译原理课时设置 发布:2025-05-18 04:13:28 浏览:378
linux中进入ip地址服务器 发布:2025-05-18 04:11:21 浏览:612
java用什么软件写 发布:2025-05-18 03:56:19 浏览:32
linux配置vim编译c 发布:2025-05-18 03:55:07 浏览:107
砸百鬼脚本 发布:2025-05-18 03:53:34 浏览:943
安卓手机如何拍视频和苹果一样 发布:2025-05-18 03:40:47 浏览:739
为什么安卓手机连不上苹果7热点 发布:2025-05-18 03:40:13 浏览:803
网卡访问 发布:2025-05-18 03:35:04 浏览:511
接收和发送服务器地址 发布:2025-05-18 03:33:48 浏览:371