1. 程式人生 > >at定時執行任務命令

at定時執行任務命令

檢查at是否安裝

在使用前先使用whereis命令檢查at命令是否安裝,如果沒有安裝執行下面的yum命令進行安裝(安裝過程輸出內容省略)

[[email protected] ~]# yum provides at
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
at-3.1.10-48.el6.x86_64 : Job spooling tools
Repo        : base
Matched from:

[[email protected] ~]# yum -y install
at-3.1.10-48.el6.x86_64

開啟atd服務並設定開機自動啟動

centos6:

[[email protected] ~]# service atd start
Starting atd:                                              [  OK  ]
[[email protected] ~]# service atd status
atd (pid  1832) is running...
[[email protected] ~]# chkconfig --level 3 atd on
[[email protected]
~]# chkconfig --list | grep atd atd 0:off 1:off 2:off 3:on 4:on 5:on 6:off

有些Linux版本需要用 /etc/init.d/atd start 開啟 atd 服務
用法:/etc/init.d/atd {start|stop|restart|condrestart|status}

相關配置檔案

  • 時間規範的確切定義可以在/usr/share/doc/at-3.1.10/timespec中檢視
  • root使用者可以在任何情況下使用at命令,而其他使用者使用at命令的許可權定義在/etc/at.allow和/etc/at.deny檔案中
  • 如果/etc/at.allow檔案存在,只有在該檔案中的使用者名稱對應的使用者才能使用at
  • 如果/etc/at.allow檔案不存在,/etc/at.deny存在,所有不在/etc/at.deny檔案中的使用者可以使用at
  • 如果/etc/at.allow和/etc/at.deny檔案都不存在,只有root使用者能使用at
  • 一個空內容的/etc/at.deny表示任何使用者都能使用at命令,這是預設的配置

 at 的執行方式

既然是計劃任務,那麼應該會有任務執行的方式,並且將這些任務排進行程表中。那麼產生計劃任務的方式是怎麼進行的? 事實上,我們使用 at 這個命令來產生所要執行的計劃任務,並將這個計劃任務以文字檔的方式寫入 /var/spool/at/ 目錄內,該工作便能等待 atd 這個服務的取用與運行了。就這麼簡單。

不過,並不是所有的人都可以進行 at 計劃任務。為什麼? 因為系統安全的原因。很多主機被所謂的攻擊破解後,最常發現的就是他們的系統當中多了很多的黑客程式, 這些程式非常可能運用一些計劃任務來執行或蒐集你的系統執行資訊,並定時的傳送給黑客。 所以,除非是你認可的帳號,否則先不要讓他們使用 at 命令。那怎麼達到使用 at 的可控呢?

我們可以利用 /etc/at.allow 與 /etc/at.deny 這兩個檔案來進行 at 的使用限制。加上這兩個檔案後, at 的工作情況是這樣的:

先找尋 /etc/at.allow 這個檔案,寫在這個檔案中的使用者才能使用 at ,沒有在這個檔案中的使用者則不能使用 at (即使沒有寫在 at.deny 當中);

如果 /etc/at.allow 不存在,就尋找 /etc/at.deny 這個檔案,若寫在這個 at.deny 的使用者則不能使用 at ,而沒有在這個 at.deny 檔案中的使用者,就可以使用 at 命令了。

如果兩個檔案都不存在,那麼只有 root 可以使用 at 這個命令。

透過這個說明,我們知道 /etc/at.allow 是管理較為嚴格的方式,而 /etc/at.deny 則較為鬆散 (因為帳號沒有在該檔案中,就能夠執行 at 了)。在一般的 distributions 當中,由於假設系統上的所有使用者都是可信任的, 因此係統通常會保留一個空的 /etc/at.deny 檔案,意思是允許所有人使用 at 命令的意思 (您可以自行檢查一下該檔案)。 不過,萬一你不希望有某些使用者使用 at 的話,將那個使用者的帳號寫入 /etc/at.deny 即可! 一個帳號寫一行。

相關推薦

at定時執行任務命令

檢查at是否安裝 在使用前先使用whereis命令檢查at命令是否安裝,如果沒有安裝執行下面的yum命令進行安裝(安裝過程輸出內容省略) [[email protected] ~]# yum provides at Loaded plugins: fastestmirror Loading mir

Linux定時執行任務命令at和crontab

本文介紹在Linux下的兩種定時執行任務的方法:at命令,以及crontab服務。 (1)at命令 假如我們只是想要讓特定任務執行一次,那麼,這時候就要用到at監控程式了。 設定at命令很簡單,指示定執行的時間,那麼就會在哪個時候執行。at類似列印 程序,會把任務放

Linux下的crontab定時執行任務命令詳解

   crontab命令常見於Unix和類Unix的作業系統之中,用於設定週期性被執行的指令。該命令從標準輸入裝置讀取指令,並將其存放於“crontab”檔案中,以供之後讀取和執行。該詞來源於希臘語 chronos(χρνο),原意是時間。通常,crontab儲存的指令被守護

Linux下的cron定時執行任務命令詳解

部落格引用處(以下內容在原有部落格基礎上進行補充或更改,謝謝這些大牛的部落格指導): Linux下的crontab定時執行任務命令詳解 在LINUX中,週期執行的任務一般由cron這個守護程序來處理[ps -ef|grep cron]。cron讀取一個或多個配置檔案,這些配置檔案中包含了

rpm -q vixie-cron =====> 檢測是否安裝 crontab 定時執行任務 命令格式與詳細例子

rpm -q vixie-cron      =====> 檢測是否安裝 crontab 基本格式 : *  *  *  *  *  command 分 時 日 月 周 命令 第1列表示分鐘1~59 每分鐘用*或者 */1表示 第2列表示小時1~23(0表

java中定時執行任務

views sch start bsp tails pri ted java file 現在項目中用到需要定時去檢查文件是否更新的功能。timer正好用於此處。 用法很簡單,new一個timer,然後寫一個timertask的子類即可。 代碼如下: [java] vie

Java定時任務:利用java Timer類實現定時執行任務的功能

lpad 虛擬 觀察 exce 就是 set ring 構造 trac 一、概述 在java中實現定時執行任務的功能,主要用到兩個類,Timer和TimerTask類。其中Timer是用來在一個後臺線程按指定的計劃來執行指定的任務。 TimerTask一個抽象類,它的子類代

crontab 定時執行任務

usr pac 啊啊啊 oca CA 日期 and 基本 ron 今天腦殘了,公司有個任務要每小時執行一次,然後我就 /1 * commond結果被老大啪啪打臉了,emmmm前面的分鐘寫的星號,肯定是每分鐘啊啊啊啊啊啊啊啊啊啊,所以再來學習一遍這個命令。 基本

crontab定時執行任務

標準輸入 管理 user shell 形式 也會 處理 例如 amp crontab定時執行任務一、意義通過crontab 命令,我們可以在固定的間隔時間執行指定的系統指令或 shell

PHP定時執行任務的3種方法詳解

round 利用 淮北 執行 多線程 href 等待 無限 exec 轉載 https://www.jb51.net/article/76720.htm 更新時間:2015年12月21日 10:38:56 作者:PHP淮北 我要評論PHP不支持多線程,有時候處理問

linux crontab定時執行任務

apache。 它的 相同 24小時 介紹 window 進度 打開 屏幕截圖 在使用一個計算機系統時,常常需要在日程表上執行某些重復的工作。你可以通過使用Linux Cron工具和Crontab命令更簡便地執行每一次所需的命令,而不是手動去執行。想知道如何使用這些命令在L

Scrapy騰訊分分cai搭建彩中添加定時執行任務的擴展

內部 進行 ret float password gin set asi nec 最近騰訊分分cai搭建彩 dsluntan.com VX:17061863513利用scrapy + redis搭建分布式爬蟲系統,有這樣一個要求: 定時性的針對某一url進行抓取。 當然

基於MVC 的Quartz.Net組件實現的定時執行任務調度

創建 .get 關系 成了 star +++ rep 清除 pub 新建mvc項目之後,首先引用Quartz組件。工具-->NuGet包管理器-->管理解決方案的 NuGet包管理器 組件安裝完成。 Quartz.Net一個最簡單任務至少包括三部分實現:

Jenkins+jmeter設置定時執行任務

命令 ima 一個 ins 定時 src alt 集成 .com 1、準備好你的jmeter腳本 2、測試命令行下腳本執行 1)cd進入腳本目錄 2)dir命令查看該目錄下的腳本文件 3)jmeter -n -t test.jmx -l result.jtl 命令執

schtasks 定時執行任務 windows 平臺

schtasks 定時執行任務 windows 平臺 遇到一個在windows 平臺執行定時指令碼任務的問題,開始的時候用 at ,但是一直執行不成功。 偶然在網上搜索到 schtasks 命令,下面是參考文件地址: schtask 執行定時任務 下面就來看一下怎麼使用 sc

使用schedule模組定時執行任務

import schedule import time   def job():     print("I'm working...")   schedule.every(10).minutes.do(job) schedule.every().hour.

Ubuntu 定時執行任務 cron

Ubuntu 安裝的時候,已經預設安裝了cron 服務 可以通過命令: pgrep cron 檢視cron服務是否執行,如果執行,則返回程序的ID號 開啟cron服務 service cron start 關閉cron服務 service cron stop 重啟cron服務 service c

linux定時執行任務crontab

crontab 檔案的格式: {minute} {hour} {day-of-month} {month} {day-of-week} {full-path-to-shell-script} o minute: 區間為 0 – 59 o hour: 區間為0 – 23 o da

Linux定時執行任務——例行性工作排程

第1章 什麼是例行性工作 舉例來說,如果你想要在家人的生日前一天就發出一封email提醒自己不要忘記,那麼發email這個工作就是例行性工作。例行性工作具有周期性和固定性,這些工作可以交由linux系統按時啟動與完成。 第2章 linux工作排程種類 工作排程有

springboot項目,啟動項目後啟動的定時器,定時執行任務

@override code bapi calendar time() exist pri ram list() package com.wiscom.ism.webapi.ismController; import org.springframework.boot.A