当前位置: 首页 > news >正文

Linux---对时/定时服务

文章目录

  • 目录

    文章目录

    前言

     一.对时服务

    服务端配置

    客户端配置 

    二.定时服务

    单次定时任务

     循环定时任务


前言

        在当今信息化高速发展的时代,时间的准确性和任务的定时执行对于各种系统和服务来说至关重要。Linux操作系统,凭借其强大的功能和灵活的配置,成为了众多服务器和应用的首选平台。其中,对时服务和定时任务管理更是Linux系统中不可或缺的重要功能。


 一.对时服务

        Chrony是一个开源自由的网络时间协议 NTP 的客户端和服务器软件。它能让计算机保持系统时钟与时钟服务器(NTP)同步,因此让你的计算机保持精确的时间,Chrony也可以作为服务端软件为其他计算机提供时间同步服务。

        NTP 是网络时间协议通过 udp 123 端口进行网络时钟同步。

安装Chrony软件 

yum install chrony -y

服务端配置

(1)使用vim 编辑器打开/etc/chrony.conf,修改如下信息:

pool 2.rhel.pool.ntp.org iburst 修改为 pool 127.0.0.1 iburst

        pool后面跟的是时间服务器,因为是服务端配置,自身就是时间服务器,所以时间服务器设置为本地IP:127.0.0.1

(2)指定允许访问的客户端

修改allow所在行,把注释符#去掉,并把后面的网段改为允许访问的网段

        服务端配置成时间服务器后,只允许192.168.23.0/24的客户端进行时间同步,如果要允许所有客户端都能向此服务器进行时间同步,可以写成allow all

(3) 配置此台服务器为ntp服务器

#local stratum 10  删除注释符号#---> local stratum 10

local stratum 10指示服务端在无法与外部时间源同步时,可以作为时间源为客户端提供服务。 

(4)重启chronyd服务并设置开机自启

[root@localhost ~]# systemctl restart chronyd.service
[root@localhost ~]# systemctl enable chronyd.service

(5)防火墙开放chrony服务的端口123和323

firewall-cmd --add-port=123/udp --permanent
firewall-cmd --add-port=323/udp --permanent
#刷新防火墙规则
firewalld-cmd --reload#也可以直接关闭防火墙
systemctl stop firewalld.service

客户端配置 

(1)使用vim 编辑器打开/etc/chrony.conf,修改如下信息:

pool 2.rhel.pool.ntp.org iburst 修改为 pool 192.168.23.145 iburst

时间源也可以使用国内的服务器如aliyun.com

pool 2.rhel.pool.ntp.org iburst 修改为 pool ntp.aliyun.com iburst

(2)重复服务端配置的第4和第5步

(3)显示系统当前配置的NTP服务器的状态信息并进行对时

chronyc sources

  •  * 表示chronyd当前同步到的源
  • + 表示可接受的信号源,与选定的信号源组合在一起
  • ? 指示已失去连接性或其数据包未通过所有测试的源。
  • Stratum 值:Stratum 是一个表示 NTP 服务器层级或准确度的数字。

  • Reach 值:Reach 值表示在过去 6 个测试周期内,时间源成功响应了多少次 Chrony 请求。

  • LastRx 值:LastRx 表示最后一次接收到该时间源数据的时间(以分钟计)

  • Last sample:这部分显示了最后一次与该时间源同步时的偏移量和其他统计数据。

二.定时服务

单次定时任务

        at 计划任务是一次性的,到了指定时间点就开始执行指定的命令,执行完成后,不会重复执行这个命令

at 命令相关配置文件:

  • /etc/at.allow,写在该文件的人可以使用at命令
  • /etc/at.deny,黑名单
  • 两个文件如果都不存在,只有root能使用

基础语法:

`at [参数] [时间]  `

 (1)查看系统中的计划任务

[root@localhost httpd]# at -l
[root@localhost httpd]# atq#计划任务保存在/var/spool/at目录下
[root@localhost ~]# ll /var/spool/at
总用量 0
drwx------. 2 root root 6 12月  1 22:32 spool

        若两个命令都没有任何输出,说明当前系统并不存在计划任务。

(2)下面开始创建计划任务 

at 日期 <按【Enter】键>
> 输入要执行的命令
Ctrl+D 提交

 案例:要在2024年12月1日执行hostname命令

[root@localhost httpd]# at 2024-12-1
warning: commands will be executed using /bin/sh
at> hostname
at> <EOT>
job 1 at Sun Dec  1 22:17:00 2024

        这里只指定了日期,并没有指定具体时间,那么,创建这个计划任务是几点几分,就会在设置日期的几点几分执行该任务。

at 时间点 日期 <按【Enter】键>
> 输入要执行的命令
Ctrl+D 提交

 案例:在2024年12月1日22:25执行hostname命令

[root@localhost httpd]# at 22:32 2024-12-1
warning: commands will be executed using /bin/sh
at> hostname
at> <EOT>
job 4 at Sun Dec  1 22:32:00 2024

 循环定时任务

        at计划任务是一次性的,执行完成就结束,如果想定期执行任务,就要用到crontab了。

crontab相关配置文件

(1)查看指定用户的contab计划任务

步骤一:使用root用户查看自己有没有crontab计划任务

[root@localhost at]# crontab -l
no crontab for root

步骤二:使用root用户查看tom用户是否有crontab计划任务 

[root@localhost at]# crontab -l -u zt
no crontab for zt

(2)创建计划任务 

步骤一:创建计划任务命令是crontab -e,会打开一个临时文件,可使用vim编辑。

[root@localhost at]# crontab -e

crontab定义计划任务的语法如下 :

分 时 日 月 周 命令

 案例1:每天上午7点执行hostname命令:

[root@localhost at]# crontab -e
crontab: installing new crontab
[root@localhost at]# crontab -l
0 7 * * * hostname

 案例2:每周一到周五上午7点执行hostname命令

[root@localhost at]# crontab -e
crontab: installing new crontab
[root@localhost at]# crontab -l
0 7 * * 1-5 hostname

 步骤二:为其它用户创建crontab任务

[root@localhost at]# crontab -e -u zt

总结

相关文章:

Linux---对时/定时服务

文章目录 目录 文章目录 前言 一.对时服务 服务端配置 客户端配置 二.定时服务 单次定时任务 循环定时任务 前言 在当今信息化高速发展的时代&#xff0c;时间的准确性和任务的定时执行对于各种系统和服务来说至关重要。Linux操作系统&#xff0c;凭借其强大的功能和灵活的…...

Agent

Agent核心 1、自主性 2、交互性 3、适应性 4、目的性 ReAct Reasoning and Acting范式 模型的推理过程分为 推理 Reason 和行动 Action 两个步骤&#xff0c;交替执行&#xff0c;直至获得最终结果。 推理 Reason 生成分析步骤&#xff0c;解释当前任务的上下文或状态…...

Oracle 数据库执行增删改查命令的原理与过程

摘要&#xff1a; 本文深入探讨当向 Oracle 数据库发送一个增删改查&#xff08;CRUD&#xff09;命令时&#xff0c;数据库内部的执行机制与详细过程。从用户发起命令开始&#xff0c;逐步剖析命令在 Oracle 数据库体系结构各组件中的流转、解析、优化以及执行路径&#xff0c…...

HBase难点

查询优化 一次Scan会返回大量数据&#xff0c;客户端向HBase发送一次Scan请求&#xff0c;实际上并不会将所有数据加载到本地&#xff0c;而是通过多次RPC请求进行加载&#xff0c;防止客户端OOM。禁止缓存优化&#xff1a;批量读取数据时会全表扫描一次业务表&#xff0c;这种…...

Y20030023 PHP+thinkphp+MYSQL+LW+基于PHP的健身房管理系统的设计与实现 源代码 配置 初稿

基于PHP的健身房管理系统 1.项目摘要2. 系统开发的背景及意义3.项目功能4.界面展示5.源码获取 1.项目摘要 近年来&#xff0c;随着社会发展和科技进步&#xff0c;人们越来越重视健康养生并关注电子商务对日常交流方式的影响。随着健身行业消费人群的增加&#xff0c;竞争变得…...

mongodb下载与使用

下载地址&#xff1a; Install MongoDB Community Kubernetes Operator | MongoDB 1、安装MongoDB (5.0.30) 将压缩包移动到C:\Program Files 下&#xff0c;然后解压创建C:\data\db目录&#xff0c;mongodb 会将数据默认保存在这个文件夹以mongodb 中 bin目录作为工作目录&…...

【Linux基础】Linux基本指令

目录 1、pwd 指令 2、clear 指令 3、ls 指令 1、ls 显示当前路径下的文件或者目录名称 2、ls -l 显示当前路径下的文件或者目录的更详细的属性信息 3、ls -a &#xff1a;显示所有文件&#xff0c;包括隐藏文件 4、ls -d 将目录像文件一样显示&#xff0c;而不是显示其…...

【RISC-V CPU debug 专栏 3 -- Debugging RISC-V Cores】

文章目录 RISC-V 调试规范开源与多样性挑战调试规范的重要性外部调试支持的主要组件调试功能Lauterbach 的贡献RISC-V 调试规范 调试 RISC-V 内核涉及许多独特的挑战,这是由 RISC-V 的开源特性和多样化的生态系统所决定的。为了避免专有调试接口的泛滥,RISC-V 基金会内的工作…...

思科实现网络地址转换(NAT)和访问控制列表(ACL)和动态路由配置并且区分静态路由和动态路由配置。

实验拓扑(分为静态路由和动态路由两种) 静态路由互通 动态路由互通 实验背景 这个是想实现外网与内网的连接跟网络的探讨&#xff0c;最终实现互通以及使用并且在网络地址转换后能使用网络然后再这个基础上再配置访问控制列表和网络地址转换的的学习过程。 实验需了解的知识…...

基于 Python、OpenCV 和 PyQt5 的人脸识别上课打卡系统

大家好&#xff0c;我是Java徐师兄&#xff0c;今天为大家带来的是基于 Python、OpenCV 和 PyQt5 的人脸识别上课签到系统。该系统采用 Python 语言开发&#xff0c;开发过程中采用了OpenCV框架&#xff0c;Sqlite db 作为数据库&#xff0c;系统功能完善 &#xff0c;实用性强…...

MySQL 复合查询

实际开发中往往数据来自不同的表&#xff0c;所以需要多表查询。本节我们用一个简单的公司管理系统&#xff0c;有三张表EMP,DEPT,SALGRADE 来演示如何进行多表查询。表结构的代码以及插入的数据如下&#xff1a; DROP database IF EXISTS scott; CREATE database IF NOT EXIST…...

【Leetcode】19. 删除链表的第N个节点

【Leetcode】19. 删除链表的第N个节点 1. 题目介绍2. 方法一&#xff1a;计算链表长度逻辑流程:代码复杂度分析 1. 题目介绍 题目描述 给你一个链表&#xff0c;删除链表的倒数第 n 个结点&#xff0c;并且返回链表的头结点。 示例 1&#xff1a; 输入&#xff1a;head [1,2,…...

flutter底部导航栏中间按钮凸起,导航栏中间部分凹陷效果

关键代码: Scaffold中设置floatingActionButtonLocation: FloatingActionButtonLocation.centerDocked和extendBody: true&#xff0c; BottomAppBar中设置shape: const CircularNotchedRectangle() Scaffold(extendBody: true,//body是否延伸脚手架底部&#xff0c;在底部导航…...

<项目代码>YOLOv8 红绿灯识别<目标检测>

YOLOv8是一种单阶段&#xff08;one-stage&#xff09;检测算法&#xff0c;它将目标检测问题转化为一个回归问题&#xff0c;能够在一次前向传播过程中同时完成目标的分类和定位任务。相较于两阶段检测算法&#xff08;如Faster R-CNN&#xff09;&#xff0c;YOLOv8具有更高的…...

HTMLHTML5革命:构建现代网页的终极指南 - 4. 使用元素

HTML&HTML5革命&#xff1a;构建现代网页的终极指南 4. 使用元素 大家好&#xff0c;我是莫离老师。 到目前为止&#xff0c;我们已经了解了 HTML 和 HTML5 的基础概念&#xff0c;并且选择了适合自己的开发工具。 今天&#xff0c;我们将迈出实际开发的第一步&#xff0c…...

使用 Selenium 和 Python 爬取腾讯新闻:从基础到实践

使用 Selenium 和 Python 爬取腾讯新闻&#xff1a;从基础到实践 在这篇博客中&#xff0c;我们将介绍如何利用 Selenium 和 Python 爬取腾讯新闻的内容&#xff0c;并将结果保存到 CSV 文件中。本教程包含以下内容&#xff1a; 项目简介依赖安装实现功能的代码实现中的关键技…...

CAD深度清理工具-AVappsDrawingPurge9.0.0(2024.8.27版本) 支持版本CAD2022-2025-供大家学习研究参考

图形文件DWG体积很大&#xff1a;通常没有明显的数据。同时&#xff0c;还其他症状包括&#xff1a; &#xff08;1&#xff09;无法复制和粘贴图元。 &#xff08;2&#xff09;悬挂较长时间选择文本与 “特性”选项板上打开。 &#xff08;3&#xff09;图形文件需要很长时间…...

vue3+vite使用vite-plugin-electron-renderer插件和script-loader插件有冲突

报错信息&#xff1a;Error: Dynamic require of "path" is not supported 报错问题是在使用vite-plugin-electron-renderer插件不支持import动态引入&#xff0c;该报错信息并不准确&#xff0c;实际原因是vite-plugin-electron-renderer插件和script-loader插件有…...

领养我的宠物:SpringBoot开发指南

第2章 开发环境与技术 本章节对开发宠物领养系统需要搭建的开发环境&#xff0c;还有宠物领养系统开发中使用的编程技术等进行阐述。 2.1 Java语言 Java语言是当今为止依然在编程语言行业具有生命力的常青树之一。Java语言最原始的诞生&#xff0c;不仅仅是创造者感觉C语言在编…...

直击高频编程考点:聚焦新版综合编程能力考查汇总

目录 一、业务性编程和广度能力考查 &#xff08;一&#xff09;基本定义 &#xff08;二&#xff09;必要性分析 二、高频考查样题&#xff08;编程扩展问法&#xff09; 考题1: 用java 代码实现一个死锁用例&#xff0c;说说怎么解决死锁问题&#xff1f;&#xff08;高…...

【EI会议征稿 | ACM出版 】第六届计算机信息和大数据应用国际学术会议(CIBDA 2025)

大会官网&#xff1a;www.ic-cibda.org 大会时间&#xff1a;2025年3月14-16日 大会地点&#xff1a;中国-武汉 收录检索&#xff1a;EI Compendex&#xff0c;Scopus 接受/拒稿通知&#xff1a;投稿后约3~8天 大会简介 第六届计算机信息和大数据应用国际学术会议&#xff…...

淘宝商品数据获取:Python爬虫技术的应用与实践

引言 随着电子商务的蓬勃发展&#xff0c;淘宝作为中国最大的电商平台之一&#xff0c;拥有海量的商品数据。这些数据对于市场分析、消费者行为研究、商品推荐系统等领域具有极高的价值。然而&#xff0c;如何高效、合法地从淘宝平台获取这些数据&#xff0c;成为了一个技术挑…...

【C++】getchar() 与 putchar() 的深入解析

博客主页&#xff1a; [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: C 文章目录 &#x1f4af;前言&#x1f4af;函数原型及头文件包含&#x1f4af; getchar() 和 putchar() 的基本概念2.1 getchar() 函数2.2 putchar() 函数 &#x1f4af;输入输出的关系与返回值的解释3.1 getchar() …...

Centos7安装MySQL8.0详细教程(压缩包安装方式)

本章教程&#xff0c;主要介绍如何在Centos7上安装MySQL8.0版本数据库&#xff08;压缩包安装方式&#xff09; 一、卸载系统自带的 Mariadb 1、查询 rpm -qa|grep mariadb2.、卸载 如果有查询结果&#xff0c;就进行卸载&#xff0c;没有就跳过该步骤。 rpm -e --nodeps mar…...

深度学习的python基础(1)

一.tensor创建 1.张量的定义 张量在形式上就是多维数组&#xff0c;例如标量就是0维张量&#xff0c;向量就是一维张量&#xff0c;矩阵就是二维张量&#xff0c;而三维张量就可以想象RGB图片&#xff0c;每个channel是一个二维的矩阵&#xff0c;共有三个channel&#xff0…...

拥抱 OpenTelemetry:阿里云 Java Agent 演进实践

作者&#xff1a;陈承 背景 在 2018 年的 2 月&#xff0c;ARMS Java Agent 的第一个版本正式发布&#xff0c;为用户提供无侵入的的可观测数据采集服务。6 年后的今天&#xff0c;随着软件技术的迅猛发展、业务场景的逐渐丰富、用户规模的快速增长&#xff0c;我们逐渐发现过…...

003 MATLAB基础计算

01 方程组的求解 多项式及其运算 多项式在MATLAB中以向量形式存储。 即n次多项式用一个长度为n1的系数向量来表示&#xff0c;且按降幂&#xff0c;缺少的幂次对应的向量元素为0。 多项式的运算主要包括多项式的四则运算、求导、求值和求根运算 多项式的四则运算&#xff1a…...

安卓逆向之Android-Intent介绍

Intent是各个组件之间交互的一种重要方式&#xff0c;它不仅可以指明当前组件想要执行的动作&#xff0c;而且还能在各组件之间传递数据。Intent一般可用于启动Activity、启动Service、发送广播等场景。Intent有多个构造函数的重载。 显式intent 显式 Intent 明确指定要启动的…...

数据库日期时间用什么类型?

数据库中的日期时间类型主要包括DATE、TIME、DATETIME和TIMESTAMP等&#xff0c;它们在存储、格式和范围等方面有所不同。以下是这些类型的详细说明和异同比较&#xff1a; 1. DATE类型 用途&#xff1a;用于存储日期值&#xff0c;不包含时间部分。格式&#xff1a;YYYY-MM-…...

Python中字符串和正则表达式

Python中字符串和正则表达式 在Python编程中&#xff0c;字符串是最常用的数据类型之一。字符串用于表示文本数据&#xff0c;而正则表达式则是一种强大的工具&#xff0c;用于处理和匹配字符串中的模式。本文将介绍Python中的字符串操作、字符串格式化以及如何使用正则表达式…...

wordpress前端用什么/浏阳廖主任打人

为什么80%的码农都做不了架构师&#xff1f;>>> 我们开发就是喜欢各种酷炫的东西&#xff0c;对于有洁癖的我&#xff0c;连命令行都不放过了 先上图看效果&#xff0c;命令行显示高亮部分 实现过程&#xff1a; 第一步&#xff1a;.bash_prompt脚本 # ~/.bash_p…...

科技因子网站建设方案/电商代运营公司排名

从字面上理解很简单resultType 就是返回的类型resultMap 返回的是一个结果集&#xff0c;这个结果集一般是用过resultMap节点来配置的&#xff0c;相应的type一般是一个Model。而resultType则就是类型&#xff0c;包括了&#xff0c;int,sring,以及类似model这样的Object类型。…...

苏州做网站推广的/网上销售

最近更新的博客 华为OD机试 - 猴子爬山 | 机试题算法思路 【2023】华为OD机试 - 分糖果(Java) | 机试题算法思路 【2023】华为OD机试 - 非严格递增连续数字序列 | 机试题算法思路 【2023】华为OD机试 - 消消乐游戏(Java) | 机试题算法思路 【2023】华为OD机试 - 组成最大数…...

wordpress 小程序投稿/sem搜索引擎营销是什么

【小白从小学Python、C、Java】 【Python全国计算机等级考试】 【Python数据分析考试必会题】 ● 标题与摘要 Python中缺失值删除 pd.dropna()函数 ● 选择题 以下关于dropna()函数说法错误的是&#xff1a; A 用于删除缺失数据 B axis0&#xff1a;若某列有空值&#x…...

网站301做排名/东莞做网站哪家好

需求&#xff1a;给一个数组arr&#xff0c;给一个数num&#xff0c;将数组中小于num的数放在左边&#xff0c;等于num的数放在中间&#xff0c;大于num的数全部放在右边。 代码&#xff1a; import java.util.Arrays;public class HeLanGuoQi {public static void main(String…...

专门做甜点的视频网站/河南seo和网络推广

创建线程 MsgThread : TMsgThread.Create(False) ; //创建并执行线程 MsgThread : TMsgThread.Create(True) ; //创建线程后挂起 constructor Create(CreateSuspended: Boolean); 中的参数CreateSuspended表示创建后是否挂起线程。 2&#xff09;设置线程里没有设置循环执行的话…...