Linux常見的日誌文件詳述如下
1、/var/log/boot.log(自檢過程)
2、/var/log/cron (crontab守護進程crond所派生的子進程的動作)
3、/var/log/maillog (發送到系統或從系統發出的電子郵件的活動)
4、/var/log/syslog (它只記錄警告信息,常常是系統出問題的信息,所以更應該關注該文件)
要讓系統生成syslog日誌文件,
在/etc/syslog.conf文件中加上:*.warning /var/log/syslog
該日誌文件能記錄當用戶登錄時login記錄下的錯誤口令、Sendmail的問題、su命令執行失敗等信息
5、/var/run/utmp
該日誌文件需要使用lastlog命令查看
6、/var/log/wtmp
(該日誌文件永久記錄每個用戶登錄、注銷及系統的啟動、停機的事件)
last命令就通過訪問這個文件獲得這些信息
7、/var/run/utmp
(該日誌文件記錄有關當前登錄的每個用戶的信息) 《Linux就該這么學》 一起學習linux
8、/var/log/xferlog
(該日誌文件記錄FTP會話,可以顯示出用戶向FTP伺服器或從伺服器拷貝了什麼文件)
⑵ 我想使用linux的crontab每天對crontab內容備份
crontab -l的內容實際都在 /var/spool/cron/ 目錄下的文件裡面
其實用或者cp備份就夠了
另外crontab裡面的命令最好用絕對路徑,否則要聲明一下環境變數,否則很容易命令找不到的。
1、任務調度設置文件的寫法
可用crontab -e命令來編輯,編輯的是/var/spool/cron下對應用戶的cron文件,也可以直接修改/etc/crontab文件
具體格式如下:
Minute Hour Day Month Dayofweek command
分鍾 小時 天 月 天每星期 命令
每個欄位代表的含義如下:
Minute 每個小時的第幾分鍾執行該任務
Hour 每天的第幾個小時執行該任務
Day 每月的第幾天執行該任務
Month 每年的第幾個月執行該任務
DayOfWeek 每周的第幾天執行該任務
Command 指定要執行的程序
在這些欄位里,除了「Command」是每次都必須指定的欄位以外,其它欄位皆為可選
欄位,可視需要決定。對於不指定的欄位,要用「*」來填補其位置。
舉例如下:
5 * * * * ls 指定每小時的第5分鍾執行一次ls命令
30 5 * * * ls 指定每天的 5:30 執行ls命令
30 7 8 * * ls 指定每月8號的7:30分執行ls命令
30 5 8 6 * ls 指定每年的6月8日5:30執行ls命令
30 6 * * 0 ls 指定每星期日的6:30執行ls命令[註:0表示星期天,1表示星期1,
以此類推,也可以用英文來表示,sun表示星期天,mon表示星期一等。]
30 3 10,20 * * ls 每月10號及20號的3:30執行ls命令[註:「,」用來連接多個不連續的時段]
25 8-11 * * * ls 每天8-11點的第25分鍾執行ls命令[註:「-」用來連接連續的時段]
*/15 * * * * ls 每15分鍾執行一次ls命令 [即每個小時的第0 15 30 45 60分鍾執行ls命令 ]
30 6 */10 * * ls 每個月中,每隔10天6:30執行一次ls命令[即每月的1、11、21、31日是的6:30執行一次ls 命令。 ]
每天7:50以root 身份執行/etc/cron.daily目錄中的所有可執行文件
50 7 * * * root run-parts /etc/cron.daily [ 註:run-parts參數表示,執行後面目錄中的所有可執行文件。 ]
2、新增調度任務可用兩種方法:
1)、在命令行輸入: crontab -e 然後添加相應的任務,wq存檔退出。
2)、直接編輯/etc/crontab 文件,即vi /etc/crontab,添加相應的任務。
⑶ 如何查看查看crontab運行日誌文件
您好,很高興為您解答。
1. linux
看 /var/log/cron這個文件就可以,可以用tail -f /var/log/cron觀察
2. unix
在 /var/spool/cron/tmp文件中,有croutXXX001864的tmp文件,tail 這些文件就可以看到正在執行的任務了。
3. mail任務
在 /var/spool/mail/root 文件中,有crontab執行日誌的記錄,用tail -f /var/spool/mail/root 即可查看最近的crontab執行情況。
⑷ linux命令crontab -l會顯示當前crontab的內容,怎樣才可以顯示指定文件的路徑
可以使用crontab-l命令列出文件的全部信息,crontab -l顯示的內容將包括的文件路徑;
示例:版
權$crontab-l
#(crondaveinstalledonTueMay413:07:431999)
#DT:
0,15,30,4518-06***/bin/echo`date`>/dev/tty1
#DT:deletecorefiles,at3.30amon1,7,14,21,26,26daysofeachmonth
3031,7,14,21,26**/bin/find-name"core'-execrm{};
⑸ linux下編寫定時任務crontab
linux下的crontab服務:
1、crontab 是用來讓使用者在固定時間或固定間隔執行程序之用
在linux平台上如果需要實現任務調度功能可以編寫cron腳本來實現。
以某一頻率執行任務
linux預設會啟動crond進程,crond進程不需要用戶啟動、關閉。
crond進程負責讀取調度任務並執行,用戶只需要將相應的調度腳本寫入cron的調度配置文件中。
cron的調度文件有以下幾個:
1. crontab
2. cron.d
3. cron.daily
4. cron.hourly
5. cron.monthly
6. cron.weekly
如果用的任務不是以hourly monthly weekly方式執行,則可以將相應的crontab寫入到crontab 或cron.d目錄中。
示例:
每隔一分鍾執行一次腳本 /opt/bin/test-cron.sh
可以在cron.d新建腳本 echo-date.sh
內容為
*/1 * * * * root /opt/bin/test-cron.sh
2、cron是一個linux下的定時執行工具,可以在無需人工干預的情況下運行作業。由於Cron 是Linux的內置服務,如果它不自動起來,可以用以下的方法啟動、關閉這個服務:
/sbin/service crond start //啟動服務
/sbin/service crond stop //關閉服務
/sbin/service crond restart //重啟服務
/sbin/service crond reload //重新載入配置
你也可以將這個服務在系統啟動的時候自動啟動:
在/etc/rc.d/rc.local這個腳本的末尾加上:
/sbin/service crond start
現在Cron這個服務已經在進程裡面了,我們就可以用這個服務了
查看服務是否已經運行用 ps -ax | grep cron
3、crontab命令
查看該用戶下的crontab服務是否創建成功, 用 crontab -l 命令
命令 which php 查看linux下安裝的php的路徑
cron服務提供crontab命令來設定cron服務的,以下是這個命令的一些參數與說明:
crontab -u //設定某個用戶的cron服務,一般root用戶在執行這個命令的時候需要此參數
crontab -l //列出某個用戶cron服務的詳細內容
crontab -r //刪除沒個用戶的cron服務
crontab -e //編輯某個用戶的cron服務
比如說root查看自己的cron設置:crontab -u root -l
再例如,root想刪除fred的cron設置:crontab -u fred -r
在編輯cron服務時,編輯的內容有一些格式和約定,輸入:crontab -u root -e
進入vi編輯模式,編輯的內容一定要符合下面的格式:*/1 * * * * ls >> /tmp/ls.txt
任務調度的crond常駐命令crond 是linux用來定期執行程序的命令。當安裝完成操作系統之後,默認便會啟動此 任務調度命令。crond命令每分鍾會定期檢查是否有要執行的工作,如果有要執行的工作便會自動執行該工作。
crontab命令選項:
-u指定一個用戶
-l列出某個用戶的任務計劃
-r刪除某個用戶的任務
-e編輯某個用戶的任務
4、cron文件語法:
分 小時 日 月 星期 命令
0-59 0-23 1-31 1-12 0-6 command (取值范圍,0表示周日一般一行對應一個任務)
5、 新增調度任務
新增調度任務可用兩種方法:
1)、在命令行輸入: crontab -e 然後添加相應的任務,wq存檔退出。
2)、直接編輯/etc/crontab 文件,即vi /etc/crontab,添加相應的任務。
6、 查看調度任務
crontab -l //列出當前的所有調度任務
crontab -l -u jp //列出用戶jp的所有調度任務
7、 刪除任務調度工作
crontab -r //刪除所有任務調度工作
8、 任務調度執行結果的轉向
例1:每天5:30執行ls命令,並把結果輸出到/jp/test文件中
30 5 * * * ls >/jp/test 2>&1
註:2>&1 表示執行結果及錯誤信息。
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root //如果出現錯誤,或者有數據輸出,數據作為郵件發給這個帳號
HOME=/ //使用者運行的路徑,這里是根目錄
# run-parts
01 * * * * root run-parts /etc/cron.hourly //每小時執行/etc/cron.hourly內的腳本
02 4 * * * root run-parts /etc/cron.daily //每天執行/etc/cron.daily內的腳本
22 4 * * 0 root run-parts /etc/cron.weekly //每星期執行 /etc/cron.weekly內的腳本
42 4 1 * * root run-parts /etc/cron.monthly //每月去執行/etc/cron.monthly內的腳本
大家注意」run-parts」這個參數了,如果去掉這個參數的話,後面就可以寫::要運行的某個腳本名,而不是文件夾名了。
總結:
編寫定時任務的兩種方式:1.sudo vim /etc/crontab 2. sudo crontab -e
查看定時任務的兩種方式:1.sudo cat /etc/crontab 2.sudo crontab -l
*/1 * * * * appuser cd /app/webserver/website/api-cb.chuchujie.com/master/current/script/ && ./back_coupon.sh 2 10 >> /dev/null 2>&1
查看定時任務是否運行:
sudo tail -f /var/log/cron //定時任務日誌(查看剛才設置的任務是否執行)
註:腳本有可執行許可權
sh a.sh(不需要執行許可權)
./sh (需要執行許可權)
1.當shell腳本具有可執行許可權時,用sh filename與./filename執行腳本是沒有區別的。./filename是因為當前目錄沒有在PATH中,所有"."是用來表示當前目錄的。
⑹ linux crontab在哪
crontab位於/usr/bin/crontab,是cron用來設定復具體任務制的命令程序。
下面是這個命令的一些參數與說明:
查看當前用戶的crontab,輸入 crontab -l;
編輯crontab,輸入 crontab -e;
刪除crontab,輸入 crontab -r
-----------------------------------------------------------
另外補充一下關於cron的知識:
1、cron是linux的內置服務,它是不會開機自動啟動的。可以手工用以下命令啟動和停止服務:
/sbin/service crond start
/sbin/service crond stop
/sbin/service crond restart
/sbin/service crond reload
以上1-4行分別為啟動、停止、重啟服務和重新載入配置。
2、如果想讓cron在開機的時候自動啟動,在 /etc/rc.d/rc.local 腳本中加入 /sbin/service crond start 即可
⑺ Linux裡面crontab是什麼
首先,crontab是一個命令,常見於Unix和類Unix的操作系統之中,用於設置周期性被執行的指令。該命令從標准輸入設備讀取指令,並將其存放於「crontab」文件中,以供之後讀取和執行。與windows下的計劃任務類似,當安裝完成操作系統後,默認會安裝此服務工具,並且會自動啟動crond進程,crond進程每分鍾會定期檢查是否有要執行的任務,如果有要執行的任務,則自動執行該任務。其中:
1、cron是服務名稱;
2、crond是後台進程;
3、crontab是計劃任務表;
1、系統任務調度:系統周期性所要執行的工作,比如寫緩存數據到硬碟、日誌清理等。在/etc目錄下有一個crontab文件,這個就是系統任務調度的配置文件
2、用戶任務調度:用戶定期要執行的工作,比如用戶數據備份、定時郵件提醒等。用戶可以使用crontab來定製自己的計劃任務。所有用戶定義的crontab文件都被保存在/var/spool/cron目錄下,其文件名與用戶名一致。
用法:
1、crontab [-u user] file:-u用來指定某個用戶的crontab服務,一般是像root這種高許可權用戶使用。file是命令文件的名字,表示將file作為crontab的任務列表文件並載入crontab。如果在命令行中沒有指定這個文件,crontab命令將接受標准輸入(鍵盤)上鍵入的命令,並將它們載入crontab。
2、crontab [-u user] -e:編輯某個用戶的crontab文件內容。如果不指定用戶,則表示編輯當前用戶的crontab文件內容。
3、crontab [-u user] -l:顯示某個用戶的crontab文件內容。如果不指定用戶,則表示顯示當前用戶的crontab文件內容。
4、crontab [-u user] -[i]r:從/var/spool/cron目錄中刪除某個用戶的crontab文件,如果不指定用戶,則默認刪除當前用戶的crontab文件。-i參數指定在刪除用戶的crontab文件時是否給確認提示。
效果如下