15.3.2 【Linux】系統的配置文件:/etc/crontab,/etc/cron.d/*

這個“ crontab -e ”是針對使用者的 cron 來設計的,如果是“系統的例行性任務”時, 該怎么辦呢?是否還是需要以 crontab -e 來管理你的例行性工作調度呢?當然不需要,你只要編輯/etc/crontab 這個文件就可以。有一點需要特別注意,那就是 crontab -e 這個 crontab 其實是 /usr/bin/crontab 這個可執行文件,但是 /etc/crontab 可是一個“純文本文件”,你可以root 的身份編輯一下這個文件。

基本上, cron 這個服務的最低偵測限制是“分鐘”,所以“ cron 會每分鐘去讀取一次/etc/crontab 與 /var/spool/cron 里面的數據內容 ”,因此,只要你編輯完 /etc/crontab 這個文件,并且將他儲存之后,那么 cron 的設置就自動的會來執行了!

在 Linux 下面的 crontab 會自動的幫我們每分鐘重新讀取一次 /etc/crontab 的例行工作事項,但是某些原因或者是其他的 Unix 系統中,由于 crontab 是讀到內存當中的,所以在你修改完 /etc/crontab 之后,可能并不會馬上執行, 這個時候請重新啟動 crond 這個服務:

systemctl restart crond

這個文件與將剛剛我們下達 crontab -e的內容幾乎完全一模一樣!只是有幾個地方不太相同:

MAILTO=root:

這個項目是說,當 /etc/crontab 這個文件中的例行性工作的指令發生錯誤時,或者是該工作的執行結果有 STDOUT/STDERR 時,會將錯誤訊息或者是屏幕顯示的訊息傳給誰?默不過, 由于 root 并無法在用戶端中以 POP3 之類的軟件收信,因此,通常都將這個 e-mail 改成自己的帳號,好讓我隨時了解系統的狀況!例如: MAILTO=dmtsai@my.host.name認當然是由系統直接寄發一封 mail 給 root。

PATH=....:

“分 時 日 月 周 身份 指令”七個字段的設置

這個 /etc/crontab 里面可以設置的基本語法與 crontab -e 不太相同!前面同樣是分、時、日、月、周五個字段, 但是在五個字段后面接的并不是指令,而是一個新的字段,那就是“執行后面那串指令的身份”為何!這與使用者的 crontab -e 不相同。由于使用者自己的 crontab并不需要指定身份,但 /etc/crontab 里面當然要指定身份啦!以上表的內容來說,系統默認的例行性工作是以 root 的身份來進行的。

crond 服務讀取配置文件的位置

一般來說,crond 默認有三個地方會有執行腳本配置文件,他們分別是:

/etc/crontab

/etc/cron.d/*

/var/spool/cron/*

這三個地方中,跟系統的運行比較有關系的兩個配置文件是放在 /etc/crontab 文件內以及/etc/cron.d/* 目錄內的文件, 另外一個是跟用戶自己的工作比較有關的配置文件,就是放在/var/spool/cron/ 里面的文件群。 現在我們已經知道了 /var/spool/cron 以及 /etc/crontab 的內容,那現在來瞧瞧 /etc/cron.d 里面的東西吧!

如果你想要自己開發新的軟件,該軟件要擁有自己的 crontab 定時指令時,就可以將“分、時、日、月、周、身份、指令”的配置文件放置到 /etc/cron.d/ 目錄下! 在此目錄下的文件是“crontab 的配置文件腳本”。

個人化的行為使用“ crontab -e ”:如果你是依據個人需求來創建的例行工作調度,建議直接使用 crontab -e 來創建你的工作調度較佳, 這樣也能保障你的指令行為不會被大家看到 。

系統維護管理使用“ vim /etc/crontab ”:如果你這個例行工作調度是系統的重要工作,為了讓自己管理方便,同時容易追蹤,建議直接寫入 /etc/crontab 較佳。

自己開發軟件使用“ vim /etc/cron.d/newfile ”:如果你是想要自己開發軟件,那當然最好就是使用全新的配置文件,并且放置于 /etc/cron.d/ 目錄內即可。

固定每小時、每日、每周、每天執行的特別工作:如果與系統維護有關,還是建議放置到 /etc/crontab 中來集中管理較好。 如果想要偷懶,或者是一定要再某個周期內進行的任務,也可以放置到上面談到的幾個目錄中,直接寫入指令即可。

15.3.3 一些注意事項

有的時候,我們以系統的 cron 來進行例行性工作的創建時,要注意一些使用方面的特性。 舉例來說,如果我們有四個工作都是五分鐘要進行一次的,那么是否這四個動作全部都在同一個時間點進行? 如果同時進行,該四個動作又很耗系統資源,如此一來,每五分鐘的某個時刻不是會讓系統忙得要死?所以要注意:

資源分配不均的問題

當大量使用 crontab 的時候,總是會有問題發生的,最嚴重的問題就是“系統資源分配不均”的問題,包括:

流量

區域內其他 PC 的流量偵測

CPU 使用率

RAM 使用率

線上人數實時偵測

如果每個流程都在同一個時間啟動的話,那么在某個時段時,我的系統會變的相當的繁忙,所以,這個時候就必須要分別設置,我可以這樣做:

注意:

取消不要的輸出項目,安全的檢驗,周與日月不可同時并存。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/36192.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/36192.shtml
英文地址,請注明出處:http://en.pswp.cn/news/36192.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

arcpy創建基本要素:點和多點

目錄 創建Point點要素步驟一:創建空間參考步驟二:創建要素類步驟三:創建字段步驟四:創建記錄并插入位置信息 創建Multipoint多點要素步驟一:創建空間參考(同上)步驟二:創建要素類步驟…

機器學習終極指南:特征工程(01/2) — 第 -2 部分

西姆蘭吉特辛格 一、介紹 歡迎來到“機器學習終極指南”的第二部分。在第一部分中,我們討論了探索性數據分析 (EDA),這是機器學習管道中的關鍵步驟。在這一部分中,我們將深入研究特征工程,這是機器學習過程…

使用shift關鍵字,寫一個帶二級命令的腳本(如:docker run -a -b -c中的run)

省流:shift關鍵字 探索思路 最近有一個小小的需求,寫一個類似于docker run -a -b -c這樣的腳本,這個腳本名為doline,它本身可以執行(doline -a -b -c),同時又帶有幾個如run、init、start這樣的…

Qt 之 QWidget QLabel

文章目錄 前言一、Qt 工程介紹二、窗口組件1. QWidget 組件2. QLabel組件 總結 前言 一、Qt 工程介紹 Qt Creator 以工程項目的方式對源碼進行管理一個Qt Creator工程包含不同類型的文件 。 .pro 項目描述文件.pro.user用戶配置描述文件- .h頭文件.cpp源文件.ui界面描述文件資…

verilog 實現異步fifo

理論知識參考 異步FIFO_Verilog實現_verilog實現異步fifo_Crazzy_M的博客-CSDN博客 代碼 /* 位寬8bit, 位深8 */ module async_fifo#(parameter FIFO_DEPTH 8,parameter FIFO_WIDTH 8 ) (input rst_n,input wr_clk,input wr_en,input [FIFO_WIDTH - 1:0…

Chrome小技巧---多用戶登錄同一網站不串信息

測試中經常需要用到瀏覽器需要登錄多個賬號 但是有一個問題就是會串號 通過添加不同的用戶再用這用戶登錄,就不串號了: 還可以在瀏覽器的偏好設置中添加啟動地址 這樣每次打開,就進到設置的地址中了

el-table自適應縮放大小

安裝依賴 npm install --save vue-draggable-resizable //或 cnpm install --save vue-draggable-resizablemain.js引入依賴 import VueDraggableResizable from vue-draggable-resizable import "vue-draggable-resizable/dist/VueDraggableResizable.css"; Vue.c…

基于Redis實現全局唯一Id

微信公眾號訪問地址:基于Redis實現全局唯一Id 推薦文章: 1、使用原生Redis命令實現分布式鎖 ? 2、為什么引入Redisson分布式鎖? 3、SpringBoot整合多數據源,并支持動態新增與切換(詳細教程) 4、Sprin…

JVM 查看配置 jinfo 及使用 jstat,查看堆棧jstack及GC

1. Jinfo 查看正在運行的Java應用程序的擴展參數: 包含 JVM 參數與 java 系統參數 命令: jinfo pid 2 jstat 查看堆內存使用情況及 GC 回收頻率等: jstat [-命令選項] [vmid] [間隔時間(毫秒)] [查詢次數] 2.1 jstat -gc pid 最常用,可…

C語言必會題目(2)

W...Y的主頁 😊 代碼倉庫分享💕 今天繼續分享C語言必會的題目,上一篇文章主要是一些選擇題,而今天我們主要內容為編程題的推薦與講解 準備好迎接下面的題了嗎?開始發車了!!! 輸入…

OSI參考模型及TCP/IP協議棧

一、網絡概述 1.1、什么是網絡? 1、網絡的本質就是實現資源共享 2、將各個系統聯系到一起,形成信息傳遞、接收、共享的信息交互平臺 1.2、典型的園區網拓撲 1.3、網絡歷史發展,ARPA和ARPANET 1、1969年,美國國防部高級研究計…

前后端分離------后端創建筆記(03)前后端對接(下)

本文章轉載于【SpringBootVue】全網最簡單但實用的前后端分離項目實戰筆記 - 前端_大菜007的博客-CSDN博客 僅用于學習和討論,如有侵權請聯系 源碼:https://gitee.com/green_vegetables/x-admin-project.git 素材:https://pan.baidu.com/s/…

數據結構--棧和隊列3.1(棧-順序結構)

目錄 棧(Stack)棧頂(top)棧底(bottom)空棧(不含任何元素) 創建棧 入棧操作 出棧操作 銷毀一個棧 計算棧的當前容量 實例分析 棧的插入操作叫做進棧(Push&#xf…

基于Mybatis Plus的SQL輸出攔截器。完美的輸出打印 SQL 及執行時長、statement

我們需要想辦法打印出完成的SQL,Mybatis為我們提供了 org.apache.ibatis.plugin.Interceptor接口,我們來實現該接口做一些打印SQL的工作 package org.springjmis.core.mp.plugins;import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; impor…

創新零售,京東重新答題?

繼新一輪組織架構調整后,京東從低價到下沉動作不斷。 新成立的創新零售部在京東老將閆小兵的帶領下悄然完成了整合。近日,京喜拼拼已改名為京東拼拼,與七鮮、前置倉等業務共同承載起京東線上線下加速融合的夢想。 同時,拼拼的更…

【從零學習python 】19. 循環遍歷列表和列表嵌套的應用

文章目錄 列表的循環遍歷1. 使用while循環2. 使用for循環3. 交換2個變量的值1. 列表嵌套2. 應用 進階案例 列表的循環遍歷 1. 使用while循環 為了更有效率的輸出列表的每個數據,可以使用循環來完成 namesList [xiaoWang,xiaoZhang,xiaoHua] length len(namesLi…

零售行業供應鏈管理核心KPI指標(一) – 能力、速度、效率和成本

有關零售行業供應鏈管理KPI指標的綜合性分享,涉及到供應鏈能力、速度、效率和成本總共九大指標,是一個大框架,比較核心也比較綜合。 衡量消費品零售企業供應鏈管理效率和水平的核心KPI通常有哪些? 圖片來源-派可數據(…

C++ unique_ptr概述 常用操作

文章目錄 unique_ptr概述unique_ptr常用操作 unique_ptr概述 uniue_ptr是一個獨占式的指針,同一個時刻, 就只能有一個unique_ptr指向這個對象(內存),unique_ptr的使用格式 unique_ptr<Class_Tyep> P_Name; unique_ptr的常規初始化: unique_ptr<int> p; 創建一個空…

監控Kafka的關鍵指標

Kafka 架構 上面綠色部分 PRODUCER&#xff08;生產者&#xff09;和下面紫色部分 CONSUMER&#xff08;消費者&#xff09;是業務程序&#xff0c;通常由研發人員埋點解決監控問題&#xff0c;如果是 Java 客戶端也會暴露 JMX 指標。組件運維監控層面著重關注藍色部分的 BROKE…

Vue 實現重定向、404和路由鉤子(六)

一、重定向 1.1 修改 Main.vue <template><div><el-container><el-aside width"200px"><el-menu :default-openeds"[1]"><el-submenu index"1"><template slot"title"><i class"…