进程检测与控制

Linux计划任务与进程

 使用at执行定义任务
 了解linux进程相关的命令
 使用网络相关的命令


 一、Linux计划任务

计划任务是Linux系统中非常实用的功能,它允许用户在指定的时间自动执行特定的命令或脚本,无需人工干预。

==定时备份== ==服务重启== ==资源监控== ==故障服务==
 计划任务权限

Linux系统中对计划任务的使用有权限控制,主要通过黑名单和白名单来实现。

黑名单
crontab是任何用户都可以创建的计划任务,但是超级管理员可以通过配置来设置某些用户不允许设置计划任务。

案例:把普通账号zkingtest加入到cron.deny黑名单中,禁止其创建计划任务

步骤:
1. 切换到超级管理员root
   ```bash
   su - root
   ```

2. 使用vim打开/etc/cron.deny文件
   ```bash
   vim /etc/cron.deny
   ```

3. 把需要禁止的用户名单加入此文件(如zkingtest)
   ```
   zkingtest
   ```

保存退出后,切换到zkingtest账号,测试是否可以使用crontab命令:
```bash
su - zkingtest

crontab -e
系统会显示错误信息,表示该用户无权使用crontab命令。
白名单
在Linux的计划任务中,除了黑名单以外,还有白名单。**作用**:允许哪些用户使用计划任务。
白名单文件的路径=>`/etc/cron.allow`,但是要特别注意,此文件需要手工创建。
注意:白名单优先级高于黑名单,如果一个用户同时存在两个名单文件中,则会被默认允许创建计划任务。
案例:创建白名单,只允许user1和user2使用计划任务

```bash
vim /etc/cron.allow
```
添加以下内容:
user1
user2
白名单中
	xmg
	
只要设置了白名单,除了白名单中的人其他人丢无法使用crontab

查看计划任务的保存文件

问题:计划任务文件具体保存在哪里呢?

答:`/var/spool/cron/用户名称`,如果使用root用户编辑计划任务,则用户文件名为root

```bash
ll /var/spool/cron
total 4
-rw------- 1 zkingtest zkingtest 0 Mar 24 09:50 zkingtest
-rw------- 1 root      root     40 Mar 24 10:21 
查看具体内容:

```bash
cat /var/spool/cron/root
```

这个文件包含了用户设置的所有计划任务,每行一个任务。

计划任务的日志程序

问题:在实际应用中,我们如何查看定时任务运行情况?

答:通过计划任务日志,日志文件位于`/var/log/cron`

案例:演示计划任务的日志程序

第一步:使用root账号创建一个计划任务

```bash
su - root

crontab -e

* * * * * echo 1 >> ~/readme.txt
```

此计划任务将每分钟向root用户主目录下的readme.txt文件追加数字1。

第二步:使用tail -f命令监控/var/log/cron日志程序

```bash
tail -f /var/log/cron
```

你会看到类似以下的日志条目:
```
Mar 24 10:21:01 localhost crond[12345]: (root) CMD (echo 1 >> ~/readme.txt)
```

这表示计划任务正在执行。要验证结果,可以查看readme.txt文件:

```bash
cat ~/readme.txt
```

文件内容应该包含多个"1",表示任务已多次执行。

扩展内容:at命令

在Linux系统下,有两个命令可以实现计划任务:crontab与at(第三方需要额外安装)

- **crontab**:每天定时执行计划任务,适合周期性任务
- **at**:一次性定时执行任务,执行完后不再重复

安装at命令

CentOS7自带,其他版本可能需要手工安装

```bash
yum install at -y
启动底层服务

```bash
systemctl start atd
systemctl enable atd
```

```
atd = at + d = at命令 + daemon(守护进程)缩写
```

案例演示

案例1:三天后下午5点执行/bin/ls

```bash
at 5pm + 3days
at>/bin/ls
at>按Ctrl+D
```
 进程信息:

```
   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
     2 root      20   0       0      0      0 S   0.0  0.0   0:00.02 kthreadd
     4 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:0H
```

- **PID**: 进程ID
- **USER**: 进程所属用户
- **PR**: 进程的优先级
- **NI**: 进程的nice值,影响进程的优先级
- **VIRT**: 进程使用的虚拟内存总量
- **RES**: 进程使用的物理内存总量
- **SHR**: 进程使用的共享内存量
- **S**: 进程状态(R=运行,S=睡眠,Z=僵尸等)
- **%CPU**: 该进程使用的CPU百分比
- **%MEM**: 该进程使用的内存百分比
- **TIME+**: 进程使用的CPU时间
- **COMMAND**: 进程的命令名称

在top命令运行时,用户可以输入特定的按键来执行不同的操作,例如:
*P*:按CPU使用率排序。
*M*:按内存使用率排序。
*T*:按CPU时间累计排序。
*k*:发送信号给进程,通常用于终止进程。
*r*:重新设置进程的nice值,即优先级。
基本语法:

-t:TCP

-u:UDP

-n:数字地址

-l:监听的端口

-p:PID和进程名称

www.douyin.com

大张伟《阳光彩虹小白马》MV_高清1080P在线观看平台_腾讯视频

【高能】此片外放会让你瞬间社死!!!一定要戴耳机食用!!!_哔哩哔哩_bilibili

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值