linux任务计划、chkconfig,systemctl介绍及常用命令 ,unit和target介绍
10月30日任务
10.23 linux任务计划cron
10.24 chkconfig工具
10.25 systemd管理服务
10.26 unit介绍
10.27 target介绍
10.23 linux任务计划cron
-
crontab -u 、-e、-l 、 -r
-
格式:分 时 日 月 周 user command
-
分范围0-59 ,时范围0-23 ,日范围 0-31 ,月范围0-12 ,周1-6
-
可用格式1-5表示一个范围1到5
-
可用格式1,2,3表示1或者2或者3
-
可用格式*/2表示被2整除的数字,比如小时,那就是每隔2小时
-
要保证服务是启动状态
-
systemctl start crond.service
#任务计划的配置文件
[[email protected] ~]# 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
#crontab -e 定义一个任务计划0 3 * * * /bin/bash /usr/local/sbin/123.sh >>/tmp/123.log 2>>tmp/123.log
[[email protected] ~]crontab -e
要想让任务生效,需要执行systemctl start crond 命令,因为本地系统是centos 6不支持systemctl 。
[[email protected] ~]# service crond start [[email protected] ~]# ps aux |grep cron root 1201 0.0 0.1 116908 1304 ? Ss Oct16 0:04 crond root 19782 0.0 0.0 103312 880 pts/0 S+ 12:24 0:00 grep --color=auto cron [[email protected] ~]# service crond status crond (pid 1201) is running...
10.24 chkconfig工具
Linux系统服务管理-chkconfig
-
chkconfig --list
-
chkconfig --level 3 network off
-
chkconfig --level 345 network off
-
chkconfig --del network
-
chkconfig --add network
[[email protected] ~]# chkconfig --list Note: This output shows SysV services only and does not include native systemd services. SysV configuration data might be overridden by native systemd configuration. If you want to list systemd services use 'systemctl list-unit-files'. To see services enabled on particular target use 'systemctl list-dependencies [target]'. aegis 0:off 1:off 2:on 3:on 4:on 5:on 6:off agentwatch 0:off 1:off 2:on 3:on 4:on 5:on 6:off netconsole 0:off 1:off 2:off 3:off 4:off 5:off 6:off network 0:off 1:off 2:on 3:on 4:on 5:on 6:off [[email protected] ~]# LANG="zh_CN.UTF-8" [[email protected] ~]# chkconfig --list 注:该输出结果只显示 SysV 服务,并不包含 原生 systemd 服务。SysV 配置数据 可能被原生 systemd 配置覆盖。 要列出 systemd 服务,请执行 'systemctl list-unit-files'。 查看在具体 target 启用的服务请执行 'systemctl list-dependencies [target]'。 aegis 0:关 1:关 2:开 3:开 4:开 5:开 6:关 agentwatch 0:关 1:关 2:开 3:开 4:开 5:开 6:关 netconsole 0:关 1:关 2:关 3:关 4:关 5:关 6:关 network 0:关 1:关 2:开 3:开 4:开 5:开 6:关 [[email protected] ~]# chkconfig network off [[email protected] ~]# chkconfig --list 注:该输出结果只显示 SysV 服务,并不包含 原生 systemd 服务。SysV 配置数据 可能被原生 systemd 配置覆盖。 要列出 systemd 服务,请执行 'systemctl list-unit-files'。 查看在具体 target 启用的服务请执行 'systemctl list-dependencies [target]'。 aegis 0:关 1:关 2:开 3:开 4:开 5:开 6:关 agentwatch 0:关 1:关 2:开 3:开 4:开 5:开 6:关 netconsole 0:关 1:关 2:关 3:关 4:关 5:关 6:关 network 0:关 1:关 2:关 3:关 4:关 5:关 6:关 [[email protected] ~]# chkconfig network on [[email protected] ~]# chkconfig --list 注:该输出结果只显示 SysV 服务,并不包含 原生 systemd 服务。SysV 配置数据 可能被原生 systemd 配置覆盖。 要列出 systemd 服务,请执行 'systemctl list-unit-files'。 查看在具体 target 启用的服务请执行 'systemctl list-dependencies [target]'。 aegis 0:关 1:关 2:开 3:开 4:开 5:开 6:关 agentwatch 0:关 1:关 2:开 3:开 4:开 5:开 6:关 netconsole 0:关 1:关 2:关 3:关 4:关 5:关 6:关 network 0:关 1:关 2:开 3:开 4:开 5:开 6:关 [[email protected] ~]# chkconfig --level 3 network off [[email protected] ~]# chkconfig --list 注:该输出结果只显示 SysV 服务,并不包含 原生 systemd 服务。SysV 配置数据 可能被原生 systemd 配置覆盖。 要列出 systemd 服务,请执行 'systemctl list-unit-files'。 查看在具体 target 启用的服务请执行 'systemctl list-dependencies [target]'。 aegis 0:关 1:关 2:开 3:开 4:开 5:开 6:关 agentwatch 0:关 1:关 2:开 3:开 4:开 5:开 6:关 netconsole 0:关 1:关 2:关 3:关 4:关 5:关 6:关 network 0:关 1:关 2:开 3:关 4:开 5:开 6:关
#添加和删除一个服务,必须要进入/etc/init.d/这个目录。
[[email protected] ~]# cd /etc/init.d/ [[email protected] init.d]# ls aegis agentwatch functions netconsole network README [[email protected] init.d]# cp network 123 [[email protected] init.d]# ls 123 aegis agentwatch functions netconsole network README [[email protected] init.d]# chkconfig --list 注:该输出结果只显示 SysV 服务,并不包含 原生 systemd 服务。SysV 配置数据 可能被原生 systemd 配置覆盖。 要列出 systemd 服务,请执行 'systemctl list-unit-files'。 查看在具体 target 启用的服务请执行 'systemctl list-dependencies [target]'。 aegis 0:关 1:关 2:开 3:开 4:开 5:开 6:关 agentwatch 0:关 1:关 2:开 3:开 4:开 5:开 6:关 netconsole 0:关 1:关 2:关 3:关 4:关 5:关 6:关 network 0:关 1:关 2:开 3:关 4:开 5:开 6:关 [[email protected] init.d]# chkconfig --add 123 [[email protected] init.d]# chkconfig --list 注:该输出结果只显示 SysV 服务,并不包含 原生 systemd 服务。SysV 配置数据 可能被原生 systemd 配置覆盖。 要列出 systemd 服务,请执行 'systemctl list-unit-files'。 查看在具体 target 启用的服务请执行 'systemctl list-dependencies [target]'。 123 0:关 1:关 2:开 3:开 4:开 5:开 6:关 aegis 0:关 1:关 2:开 3:开 4:开 5:开 6:关 agentwatch 0:关 1:关 2:开 3:开 4:开 5:开 6:关 netconsole 0:关 1:关 2:关 3:关 4:关 5:关 6:关 network 0:关 1:关 2:开 3:关 4:开 5:开 6:关 [[email protected] init.d]# chkconfig --del 123 [[email protected] init.d]# chkconfig --list 注:该输出结果只显示 SysV 服务,并不包含 原生 systemd 服务。SysV 配置数据 可能被原生 systemd 配置覆盖。 要列出 systemd 服务,请执行 'systemctl list-unit-files'。 查看在具体 target 启用的服务请执行 'systemctl list-dependencies [target]'。 aegis 0:关 1:关 2:开 3:开 4:开 5:开 6:关 agentwatch 0:关 1:关 2:开 3:开 4:开 5:开 6:关 netconsole 0:关 1:关 2:关 3:关 4:关 5:关 6:关 network 0:关 1:关 2:开 3:关 4:开 5:开 6:关
10.25 systemd管理服务
-
systemctl list-units --all --type=service //列出所有的服务类型为service
-
几个常用的服务相关的命令
-
systemctl enable crond.servuce //让服务开机启动
-
systemctl disable crond //不让开机启动
-
systemctl status crond //查看状态
-
systemctl stop crond //停止服务
-
systemctl start crond //启动服务
-
systemctl restart crond //重启服务
-
systemctl is-enabled crond //检查服务是否开机启动
[[email protected] ~]# systemctl enable crond [[email protected] ~]# systemctl status crond ● crond.service - Command Scheduler Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled) Active: inactive (dead) 10月 30 13:51:43 zgxlinux-aliyun systemd[1]: Started Command Scheduler. 10月 30 13:51:43 zgxlinux-aliyun systemd[1]: Starting Command Scheduler... 10月 30 13:51:43 zgxlinux-aliyun crond[470]: (CRON) INFO (RANDOM_DELAY will be...) 10月 30 13:51:43 zgxlinux-aliyun crond[470]: (CRON) INFO (running with inotify...) 10月 30 15:02:40 zgxlinux-aliyun systemd[1]: Stopping Command Scheduler... 10月 30 15:02:40 zgxlinux-aliyun systemd[1]: Stopped Command Scheduler. Hint: Some lines were ellipsized, use -l to show in full. [[email protected] ~]# systemctl enable crond.servuce Failed to execute operation: No such file or directory [[email protected] ~]# systemctl disable crond Removed symlink /etc/systemd/system/multi-user.target.wants/crond.service. [[email protected] ~]# systemctl status crond ● crond.service - Command Scheduler Loaded: loaded (/usr/lib/systemd/system/crond.service; disabled; vendor preset: enabled) Active: inactive (dead) 10月 30 13:51:43 zgxlinux-aliyun systemd[1]: Started Command Scheduler. 10月 30 13:51:43 zgxlinux-aliyun systemd[1]: Starting Command Scheduler... 10月 30 13:51:43 zgxlinux-aliyun crond[470]: (CRON) INFO (RANDOM_DELAY will be...) 10月 30 13:51:43 zgxlinux-aliyun crond[470]: (CRON) INFO (running with inotify...) 10月 30 15:02:40 zgxlinux-aliyun systemd[1]: Stopping Command Scheduler... 10月 30 15:02:40 zgxlinux-aliyun systemd[1]: Stopped Command Scheduler. Hint: Some lines were ellipsized, use -l to show in full. [[email protected] ~]# systemctl enable crond Created symlink from /etc/systemd/system/multi-user.target.wants/crond.service to /usr/lib/systemd/system/crond.service. [[email protected] ~]# systemctl enable crond [[email protected] ~]# systemctl disable crond Removed symlink /etc/systemd/system/multi-user.target.wants/crond.service. [[email protected] ~]# systemctl status crond ● crond.service - Command Scheduler Loaded: loaded (/usr/lib/systemd/system/crond.service; disabled; vendor preset: enabled) Active: inactive (dead) 10月 30 13:51:43 zgxlinux-aliyun systemd[1]: Started Command Scheduler. 10月 30 13:51:43 zgxlinux-aliyun systemd[1]: Starting Command Scheduler... 10月 30 13:51:43 zgxlinux-aliyun crond[470]: (CRON) INFO (RANDOM_DELAY will be...) 10月 30 13:51:43 zgxlinux-aliyun crond[470]: (CRON) INFO (running with inotify...) 10月 30 15:02:40 zgxlinux-aliyun systemd[1]: Stopping Command Scheduler... 10月 30 15:02:40 zgxlinux-aliyun systemd[1]: Stopped Command Scheduler. Hint: Some lines were ellipsized, use -l to show in full. [[email protected] ~]# systemctl stop Too few arguments. [[email protected] ~]# systemctl is-enabled crond disabled [[email protected] ~]# systemctl enable crond Created symlink from /etc/systemd/system/multi-user.target.wants/crond.service to /usr/lib/systemd/system/crond.service. [[email protected] ~]# systemctl is-enabled crond enabled
10.26 unit介绍
-
ls /usr/lib/systemd/system //系统所有unit,分为以下类型
-
service 系统服务
-
target 多个unit组成的组
-
device 硬件设备
-
mount 文件系统挂载点
-
automount 自动挂载点
-
path 文件或路径
-
scope 不是由systemd启动的外部进程
-
slice 进程组
-
snapshot systemd 快照
-
socket 进程间通信套接字
-
swap swap文件
-
timer 定时器
#和unit相关的命令
-
systemctl list-units //列出正在运行的unit
-
systemctl list-units --all //列出所有,包括失败的或者inactive的
-
systemctl list-units --all --state=inactive //列出inactive的unit
-
systemctl list-units --type=service //列出状态为active的service
-
systemctl is active crond.service //查看某个服务是否为active
10.27 target介绍
- 系统为了方便管理用target管理unit
- systemctl list-unit-files --type=target
- systemctl list-dependencies multi-user.target //查看制定target下面有哪些unit
- systemctl get-default //查看系统默认的target
- systemctl set-default multi-user.target
- 一个service属于一种类型的unit
- 多个unit组成了一个target
- 一个target里面包含了多个service
- cat /usr/lib/systemd/system/sshd.service //看[install]部分
转载于:https://my.oschina.net/u/3959708/blog/2254871