linux进程和计划任务-------后续(二)

本文详细介绍了Linux系统中的进程管理,包括进程启动方式(前台和后台)、结束进程(kill和killall)、计划任务(at和cron)的使用方法。此外,还提供了系统优化和面试技巧,如内存、CPU、磁盘和网络性能监控。
摘要由CSDN通过智能技术生成

目录

一、进程管理

1.进程启动---------- 前台启动与后台启动

"命令 &",把命令放入后台执行

jobs 查看后台任务列表 

fg 命令 : 将后台进程调回到前台运行

bg 命令: 将后台程序继续在后台运行

应用1:把命令放入后台

应用2:把命令放入后台

二、结束进程

1. kill

2. killall 

三、计划任务

1.  at    设置一次性计划任务

2. crontab周期性的计划任务

四、面试小技巧:

1.如何进行系统的优化

2.运维需要关注五大性能以及如何看


一、进程管理

1.进程启动---------- 前台启动与后台启动

 进程需要手动启动

 前台启动(运行):通过终端启动,且启动后一直占据终端(影响当先终端的操作

 后台启动:可通过终端启动,但启动后即转入后台运行(释放终端),不影响当前终端的操作。

进程需要手动启动,启动后一般分为前台和后台,前台运行会一直占用终端,直到运行结束,影响

当前操作,那么把命令放入后台启动,会立即释放终端就会方便很多。

第一种把命令放入后台的方法是在命令后面加入 空格 & 使用这种方法放入后台的命令,在后台处于执行状态。注意,放入后台执行的命令不能与前台有交互,否则这个命令是不能在后台执行的

 空格 &  把命令放入后台

Ctrl + Z 组合键:将当前进程挂起,即调入后台并停止执行

jobs 查看后台任务列表     -l  显示PID号

fg 命令 : 将后台进程调回到前台运行,可指定任务序列号

格式: fg  编号

bg 命令: 将后台程序继续在后台运行

"命令 &",把命令放入后台执行

jobs 查看后台任务列表 

fg 命令 : 将后台进程调回到前台运行

bg 命令: 将后台程序继续在后台运行

应用1:把命令放入后台

先运行两个程序:

应用2:把命令放入后台

二、结束进程

1. kill

从本质上讲,kill 命令只是用来向进程发送一个信号,至于这个信号是什么,是用户指定的。

也就是说,kill 命令的执行原理是这样的,kill 命令会向操作系统内核发送一个信号(多是终止信号)和目标进程的 PID,然后系统内核根据收到的信号类型,对指定进程进行相应的操作。

格式:kill [信号] PID 
kill 命令是按照 PID 来确定进程的,所以 kill 命令只能识别 PID

可以使用 kill -l 命令查看所有信号及其编号

2. killall 

killall 也是用于关闭进程的一个命令,但和 kill 不同的是,killall 命令不再依靠 PID 来杀死单个进程,而是通过程序的进程名来杀死一类进程,也正是由于这一点,该命令常与 ps、pstree 等命令配合使用

语法:killall 【选项】【信号】 进程名

作用:结束该进程名的所有进程

-i:表示会寻问,-l:忽略大小写

killall -i sshd        交互杀死 sshd

三、计划任务

1.  at    设置一次性计划任务

at  队列存放在/var/spool/at目录中

格式:at  时间

at [option] TIME
at [选项] [时间]
[HH:MM]  [yyyy-mm-dd]

HH:MM 在今日的 HH:MM 进行,若该时刻已过,则明天此时执行任务
02:00              
HH:MM YYYY-MM-DD   规定在某年某月的某一天的特殊时刻进行该项任务
02:00 2023-10-20   
HH:MM[am|pm] [Month] [Date]
06pm March 17
17:20 tomorrow
HH:MM[am|pm] + number [minutes|hours|days|weeks], 在某个时间点再加几个时间后才进行该
项任务
now + 5 min 
02pm + 3 days

ctrl+d     提交任务

atrm [工作号]   删除指定的at任务

atq 查看一次性任务列表

2. crontab周期性的计划任务

crontab是Linux系统中用于配置和管理定时任务的命令,通过crontab,用户可以定义计划在特定时间或周期性执行的任务。

①定时性周期任务:crontab是一个服务。

②配置文件路径:/etc/crontabs 文件中有创建规则,如下图。

crontab  -e    编辑计划任务

crontab  -l     查看计划任务

crontab  -r     删除计划任务

- e编辑某个用户的 crontab 文件内容。如果不指定用户,则表示编辑当前用户的 crontab 文件。
- l显示某用户的 crontab 文件内容,如果不指定用户,则表示显示当前用户的 crontab 文件内容。
- r从 /var/spool/cron 删除某用户的 crontab 文件
- i在删除用户的 crontab 文件时,给确认提示

 *****   绝对路径

which  命令   查看绝对路径

注意:这五个必须要有 ( 分时日月周)

每月的 1号 15号  30号
*  *   1,15,30  *   *

中午  12点  -  16点 
*  12-16  *  *  *

每  半小时 执行  一次
*/30  *   *  *   *

在时间表示中,还有一些特殊符号需要记忆下

crontab任务中不建议使用%,它有特殊用途,它表示换行的特殊意义,且第一个%后的所有字符串会被将成当作命令的标准输入,如果在命令中要使用%,则需要用 \ 转义
注意:将%放置于单引号中是不支持的      解决方法:在所有的%前\即可

在书写 crontab 定时任务时,需要注意以下几个事项:

1.  6 个选项都不能为空,必须填写。如果不确定,则使用“*”代表任意时间。

2.    crontab 定时任务的最小有效时间是分钟,最大有效时间是月。像 2018 年某时执行、3 点 30 分 30 秒这样的时间都不能被识别。
3.    在定义时间时,日期和星期最好不要在一条定时任务中出现,因为它们都以天为单位,非常容易让管理员混淆。
4.    在定时任务中,不管是直接写命令,还是在脚本中写命令,最好都使用绝对路径。有时使用相对路径的命令会报错。

四、面试小技巧:

1.如何进行系统的优化

1.关闭不必要的开机自启动程序

2.禁止使用超级管理员

3.使用国内的yum源

4.内核调优:

1.开启路由转发功能

2.tcp链接数

5.关闭核心防护 selinux

2.运维需要关注五大性能以及如何看

①内存:free -h 、top

②cpu使用率:top动态 、 ps aux静态、ps -elf、vmstat

③磁盘容量:剩余容量 df -h、分区 lsblk、详细 fdisk -l +设备名

④查看磁盘io即读写性能:vmstat、iotop(需要安装)、iostat(-d指定硬盘)、dd。input代表往磁盘写,output从磁盘复制出来。

⑤查看网卡流量:iftop(需要安装扩展包再安装) -ni再加网卡名

先安装  yum install iftop -y

然后再iftop查看

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值