linux系统管理----进程管理

1 进程管理

可以对比一下windows系统:

进程展示:

性能展示:

这些都可以和linux中对应起来,只不过window中看到的指标数据都是实时动态变化的,同样linux中是使用命令来查看这些。

1.1 top命令

例1,使用top命令

top命令是动态输出的,默认每3s刷新一次,命令的输出主要分两大部分。第一部分为前五行内容,一般通过前五行来判断系统的整体健康状况;第二部分是从第六行开始,显示的是系统中进程的信息。

第一部分信息为整个主机系统资源的使用情况

                                            CPU信息

第二部分输出是系统进程信息

这部分主要是看进程的信息,和ps命令比较类似

1.2 ps命令

实际上常用的命令主要还是ps aux或者ps -aux(一般不加-),ps aux需要特别注意的是静态展示,因此展示的相关指标是这一时刻的状态,而不是动态变化的。

例1:

以上命令的输出内容解释如下:

例2:

F:进程标志,说明进程的权限,常见的标志有:

  • 1:进程可以复制,但不能执行
  • 4:进程使用超级用户权限

1.3 pstree命令

例如:

1.4 进程的管理

主要的几个信号解释如下:

比较常用的几个主要是1和9。

1.4.1 kill

kill命令格式:

kill [信号] PID

 

1.4.2 killall

主要是用来杀死某个进程

查找某个进程sshd:ps aux | grep sshd

杀死该进程:

killall -9 -i sshd

1.4.3 pkill

pkill与killall命令类似,也是根据进程名杀死进程,但两者区别在于在不通的使用场景下,比如pkill可以根据终端号来进行进程杀死

例如:

pkill -9 -t pts/1 

 

1.5 工作管理

1.5.1 前台后台

        

把命令放入后台的2种方法

第一种:命令 &

       需要注意的是这种放入后台的命令不能与前台有任何交互,否则放入后台的命令不能被执行,是暂停状态,例如top、ls命令等。

第二种:ctrl+z

       这个命令是把正在执行的程序暂停,并放入后台。

1.5.2 后台命令管理

jobs查看后台的工作

fg将后台暂停的工作恢复到前台执行

        

bg将后台暂停的工作恢复到后台执行

       

nohup后台命令脱离登陆终端运行

       

      

1.5.3 系统资源查看

vmstat

监控系统资源。

例如:

dmesg显示开机时内核检测信息

free查看内存使用状态

KB。

查看cpu信息

CPU的主要信息可以通过查看这个/proc/cpuinfo文件信息知晓。 

w/who查看本机登陆用户信息

这个命令的结果解释如下:

uptime

uname命令查看系统与内核相关信息

file命令判断系统位数

lsb_release -a命令查看系统发行版本

1.6 at命令

1.6.1 at命令的访问控制

      at命令的正确执行需要atd服务的支持。at命令的访问控制是依靠/etc/at.allow文件与/etc/at.deny这两个文件来实现的。例如写入/etc/at.allow文件的用户可以使用at命令,其他用户不能使用;若没有/etc/at.allow文件,写入/etc/at.deny文件的用户不能使用,其他用户可以使用at命令。若两个文件都存在,/etc/at.allow文件比/etc/at.deny权限更高,/etc/at.deny文件失效。

at命令

举例:2分钟后执行一次脚本

其他at管理命令

1.6.2 crontab命令

      crontab命令是需要crond服务支持,默认该服务是启动状态。crontab命令与at命令类似,也是可以通过/etc/cron.allow和/etc/cron.deny文件进行命令的使用控制。与/etc/at.allow、/etc/at.deny之间的关系类似。

三种方法:

  • crontab -e手工执行
  • 修改/etc/crontab文件
  • 将脚本放进目录中

第一种方法的命令格式为:

相关字符的解释如下:

第二种办法修改/etc/crontab文件:

将对应的命令写入文件,定时任务的执行者身份可以手工指定

[root@vm3 ~]# cat /etc/crontab 
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

# 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

第三种办法将脚本放入对应的目录:

[root@vm3 bin]# ls -d /etc/cron.*
/etc/cron.d  /etc/cron.daily  /etc/cron.deny  /etc/cron.hourly  /etc/cron.monthly  /etc/cron.weekly

crontab的注意事项:

路径的命令会报错。

1.6.3 anacron

       对于系统由于某些原因(比如关机了等)导致定时任务没有被执行,anacron一般会根据定时任务的情况(daily、hourly、monthly、weekly)进行补充执行漏掉的定时任务,默认45分钟后进行执行。其配置文件如下:

[root@vm3 anacron]# vim /etc/anacrontab 
# /etc/anacrontab: configuration file for anacron

# See anacron(8) and anacrontab(5) for details.

SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# the maximal random delay added to the base delay of the jobs
RANDOM_DELAY=45
# the jobs will be started during the following hours only
START_HOURS_RANGE=3-22

#period in days   delay in minutes   job-identifier   command
1       5       cron.daily              nice run-parts /etc/cron.daily
7       25      cron.weekly             nice run-parts /etc/cron.weekly
@monthly 45     cron.monthly            nice run-parts /etc/cron.monthly
~
~

说明:对于cron.daily目录中的定时脚本5分钟执行、cron.weekly中的脚本隔25分钟执行,monthly类似

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值