1土匀、進(jìn)程概念
所謂進(jìn)程就是指現(xiàn)在系統(tǒng)正在執(zhí)行的程序子房,每當(dāng)輸入一個(gè)命令時(shí),Shell也會(huì)同時(shí)啟動(dòng)一個(gè)進(jìn)程就轧。
每個(gè)進(jìn)程啟動(dòng)時(shí),系統(tǒng)會(huì)指定一個(gè)唯一的數(shù)值給每個(gè)進(jìn)程田度,數(shù)值稱為進(jìn)程ID妒御。
每個(gè)進(jìn)程都可能以兩種方式存在:前臺(tái)和后臺(tái)。
系統(tǒng)的服務(wù)都是以后臺(tái)方式存在镇饺,且都會(huì)常駐在系統(tǒng)中乎莉,直到關(guān)機(jī)結(jié)束。
系統(tǒng)網(wǎng)絡(luò)服務(wù)一般都是后臺(tái)服務(wù)進(jìn)程奸笤。
[root@xiaoyu ~]# /etc/init.d/sshd status
openssh-daemon (pid 8734) is running...
[root@xiaoyu ~]# netstat -an | grep 22
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 64 10.10.9.201:22 10.10.29.50:51683 ESTABLISHED
tcp 0 0 :::22 :::* LISTEN
unix 3 [ ] STREAM CONNECTED 86722
2惋啃、Linux定時(shí)任務(wù)---crond
2.1、什么是crond监右?
Crond是Linux系統(tǒng)中用來定期執(zhí)行命令或者指定程序任務(wù)的一種服務(wù)或者軟件边灭。一般安裝完Centos系統(tǒng)后,Crond一般會(huì)默認(rèn)存在健盒。我們優(yōu)化開機(jī)自啟服務(wù)的時(shí)候绒瘦,第一個(gè)就是Crond。
Crond服務(wù)默認(rèn)情況(每分鐘)扣癣,會(huì)檢查系統(tǒng)中是否有需要執(zhí)行的定時(shí)任務(wù)惰帽,如果有,就會(huì)根據(jù)事先定義好的規(guī)則來執(zhí)行這個(gè)定時(shí)任務(wù)父虑。對(duì)秒級(jí)任務(wù)無能為力该酗。
[root@xiaoyu ~]# cat test.sh
while true
do
echo 'heqiuyu'
sleep 1
done
[root@xiaoyu ~]# sh test.sh
heqiuyu
heqiuyu
heqiuyu
heqiuyu
heqiuyu
^C
[root@xiaoyu ~]#
2.2分類
第一類,系統(tǒng)自身定期執(zhí)行的任務(wù)
[root@xiaoyu ~]# ll /var/log/secure
-rw-------. 1 root root 5489 Jun 15 11:16 /var/log/secure
第二類士嚎,用戶執(zhí)行的crontab任務(wù)
[root@xiaoyu cron.d]# cat /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
at 適合一次就結(jié)束的調(diào)度任務(wù)
man crontab
NAME
crontab - maintain crontab files for individual users
SYNOPSIS
crontab [-u user] file
crontab [-u user] [-l | -r | -e] [-i] [-s]
DESCRIPTION
Crontab is the program used to install, remove or list the tables used to drive the cron(8) daemon. Each user can have their own crontab, and though these are
files in /var/spool/ , they are not intended to be edited directly. For SELinux in mls mode can be even more crontabs - for each range. For more see selinux(8).
The cron jobs could be allow or disallow for different users. For classical crontab there exists cron.allow and cron.deny files. If cron.allow file exists, then
you must be listed therein in order to be allowed to use this command. If the cron.allow file does not exist but the cron.deny file does exist, then you must not
be listed in the cron.deny file in order to use this command. If neither of these files exists, only the super user will be allowed to use this command. The sec-
ond option is using PAM authentication, where you set up users, which could or couldn’t use crontab and also system cron jobs from /etc/cron.d/.
The temporary directory could be set in enviroment variables. If it’s not set by user than /tmp is used.
OPTIONS
-u Append the name of the user whose crontab is to be tweaked. If this option is not given, crontab examines "your" crontab, i.e., the crontab of the person
executing the command. Note that su(8) can confuse crontab and that if you are running inside of su(8) you should always use the -u option for safety’s
sake. The first form of this command is used to install a new crontab from some named file or standard input if the pseudo-filename "-" is given.
-l The current crontab will be displayed on standard output.
-r The current crontab will be removed.
-e This option is used to edit the current crontab using the editor specified by the VISUAL or EDITOR environment variables. After you exit from the editor,
the modified crontab will be installed automatically.
-i This option modifies the -r option to prompt the user for a ’y/Y’ response before actually removing the crontab.
-s It will append the current SELinux security context string as an MLS_LEVEL setting to the crontab file before editing / replacement occurs - see the documen-
tation of MLS_LEVEL in crontab(5).