Linux进程资源管理第二篇 -------- 工作及资源管理
工作管理
1、工作管理简介
Linux中的工作管理指的是在单个登录的终端中,同时管理多个工作的行为。在Linux工作管理中,其实就是将当前的工作放到后台执行。查询当前系统中的后台程序使用的命令是jobs。
在Linux中,当某些服务启动之后,如果不放入后台,他会一直占用当前的shell,例如MYSQL。如果想要执行其他操作的话,需要将mysql服务终止掉。如果不想将该服务终止,就需要将该服务放入后台。
注意事项:
a> 当前的登录终端,只能管理当前终端的工作,而不能管理其他登录终端的工作。
也就是说,放入后天的服务是需要绑定终端的。Mysql服务发现了这个问题,当调用mysql服务的启动脚本时,它会将MySQL设置为可以脱离当前终端操作的服务,当MySQL服务在当前终端上放入后台时,关闭当前终端,mysql服务不会终止,但其他服务如果关闭的当前终端,服务也会跟着结束。
b> 放入后台的命令必须可以持续运行一段时间,这样我们才能捕捉和操作这个工作
例如:将ls、cd等命令房后后台是没有意义的,回车之后就会结束
c> 放入后台执行的命令不能和当前用户有交互或需要前台输入,否则放入后台只能暂停,而不能执行
例如:将vim命令放入后台,只能暂停,不肯能继续执行。因为vim命令是需要和用户进行交互的。
2、工作管理方法
1> 把命令放入后台<以top命令为例>
在执行的命令后加" & ” # 把命令放入后台,并在后台执行 top # 按下ctrl+z快捷键,放在后台暂停
2> 查看后台工作
jobs [-l] # -l 显示工作的PID
注: “+”表示最近一个放入后台的工作,也是工作恢复时默认恢复的工作,“-”表示倒数第二个放入后台的工作
3> 将后台暂停的工作恢复到前台执行
fg %工作号 # %可以省略,但是注意工作号和PID的区别
4> 把后台暂停的工作恢复到后台执行
bg %工作号 # 后台恢复执行的命令,是不能和前台有交互的,否则不能恢复到后台执行
3、后台命令脱离登录终端执行
一般情况下,一旦把命令放入后台,只能在当前登录终端执行。一旦退出或关闭终端,后台程序就会停止。
后台命令脱离登录终端执行的方法:
1> 把需要后台执行想命令加入到/etc/rc.local 文件
开机默认创建文件 /var/lock/subsys/local,目的是为了查看系统开机时间。
如果想要后台运行的一个程序持续运行,可以把这个进程完全写到该文件中,那么该进程就可以持续运行。因为它是系统直接调用的,没有绑定到终端。
2> 使用系统定时任务crontab,让系统在指定的时间执行某个后台命令
使用系统定时任务,可能会导致不生效!!!
3> 使用nohup命令
命令格式:
nohup [命令] &
在 /root 目录下创建文件 for.sh,内容如下: nohup运行该文件 切换终端,然后可以通过 ps aux | grep for.sh 查看 |
系统资源管理
※1、vmstat命令监控系统资源
vmstat [刷新延时 刷新次数]
procs:进程信息字段
r:等待运行的进程数,数量越大,系统越繁忙
b:不可被唤醒的进程数,数量越大,系统越繁忙
memory:内存信息字段
-swpd:虚拟内存的使用情况,单位KB
-free:空闲的内存容量,单位KB
-buff:缓冲的内存容量,单位KB
-cache:缓存的内存容量,单位KB
缓存和缓冲的区别: 缓存(cache)是用来加速数据从硬盘中”读取”的,而缓冲(buffer)是用来加速数据”写入”硬盘的。 |
swap:交换分区的信息字段
-si:从磁盘中交换到内存中数据的数量,单位KB
-so:从内存中交换到磁盘中数据的数量,单位KB,
两个数越大,证明数据需要经常在磁盘和内存之间交换,系统性能越差
io:磁盘读写信息字段
-bi:从块设备读入数据的总量,单位是块
-bo:写到块设备的数据的总量,单位是块。
两个数越大,代表系统的I/O越繁忙
system:系统信息字段:
-in:每秒被中断的进程次数
-cs:每秒钟进行的事件切换次数。
两个数越大,代表系统与接口设备的通信飞航繁忙
cpu:CPU信息字段
-us:非内核进程消耗CPU运算时间的百分比
-sy:内核进程消耗CPU运算时间的百分比
-id:空间CPU的百分比
-wa:等待I/O所消耗的CPU百分比
-st:被虚拟机所盗用的CPU占比
※2、dmesg开机时内核检测信息
dmesg | grep CPU
显示系统的内核自检信息,对Linux来将,计算机需要自检两遍,一是硬件的BIOS自检,二是内核自检
dmesg命令是用来判断当前服务器的硬件状态。
※3、free命令查看内存使用状态
free [-b | -k | -m | -g]
选项:以 字节 | Kb | MB | GB 为单位显示,默认为Kb
- buffers/cache:相当于第一行used - buffers - cached
+ buffers/cache:相当于第一行free + buffers + cached
虽然看起来buffer和cached 占用了一部分内存,但实际上是作为缓冲和缓存存在,没有被系统的程序直接占用,是为了提高系统读写效率存在的
最后一行表示Swap的使用状况,swap是提高计算机性能尤其是高耗费内存性能的重要手段,因此不可以随意减少Swap分区的容量。当真实机内存小于4G,swap应该是内存的两倍,如果真实机的内存大于4G,swap最少要和内存一样。
※4、查看CPU信息
cat /proc/cpuinfo
proc是用来保存内存信息的目录
※5、uptime命令
uptime
显示系统的启动时间和平均负载,也就是top命令的第一行。w命令也可以看到这个数据。
uptime命令可以查看到系统当前时间,开机到现在的时间,登录用户数目,平均负载。和top命令第一行信息一致,但top命令本身就会造成一定的负载,如果只是简单想查看系统启动时间和平均负载,可以用uptime命令。
※6、查看系统与内核相关信息
uname [选项]
选项: -a:查看系统所有相关信息
-r:查看内核版本
-s:查看内核名称
※7、查看当前Linux系统的操作位数
file /bin/ls
file之后可以追加任何一个系统外部命令,可以查看到当前操作系统的位数。需要注意的是,这里的位数与CPU的位数不一定相同,64的的电脑上也可以安装32位的操作系统
※8、查询当前Linux的发行版本
lsb_release -a
※9、列出进程打开或使用的文件信息
lsof [选项]# 列出进程调用或打开的文件的信息
选项:
-c 字符串:只列出字符串开头的进程打开的文件
-u 用户名:只列出某个用户的进程打开的文件
-p pid:列出某个PID进程打开的文件
根据文件名查进程,文件只能是系统文件,不能是用户自己创建的文件,只有系统文件才有系统进程
系统定时任务
Windows中的系统定时任务:开始-- >所有程序-- >附件-- > 系统工具-- >定时计划程序
at一次性定时任务
1> 确定at安装
chkconfig --list | grep atd # at服务是否安装 service atd restart # at服务重新启动
在服务名后加 d ,表明这是一个守护进程
2> at的访问控制
l 如果系统中有 /etc/at.allow(白名单)文件,那么只有写入/etc/at.allow 文件中的用户可以使用at 命令(/etc/at.deny文件会被忽略)
l 如果系统中没有 /etc/at.allow (黑名单)文件,只有 /etc/at.deny 文件,那么写入 /etc/at.deny 文件中的用户不能使用at命令,但对root 用户不起作用
l 如果系统中这两个文件都不存在,那么只有root用户可以使用at命令。默认情况下只有黑名单
3> at命令的使用
at [选项] 时间
选项:
-m:当at工作完成后,无论是否命令有输出,都用email 通知执行at命令的用户
-c 工作号:显示该at工作的实际内容
时间:
- HH:MM例如:02:30
- HH:MM YYYY-MM-DD例如:02:30 2013-07-25
- HH:MM [am|pm] [month] [date]例如:02:30 July 25
- HH:MM [am|pm] + [minutes|hours|days|weeks]例如:now + 5minutes
其他at管理命令
atq # 查询当前服务器上的at工作 atrm [工作号] # 删除指定的at任务
at定时任务执行完毕之后,atq就不会再查询到at任务
crontab定时任务
关于crontab定时任务,要介绍的细节比较多,这里作为一个单独的文章来写,链接如下:
http://muhuizz.blog.51cto.com/11321490/1868839
---------muhuizz整理
转载于:https://blog.51cto.com/muhuizz/1897035
Linux进程资源管理第二篇 -------- 工作及资源管理相关推荐
- linux block layer第二篇bio 的操作
摘要 linux block layer第一篇介绍了bio数据结构及bio内存管理,本文章介绍bio的提交.拆分.io请求合并.io请求完成时的回调处理.由于"bio的提交"涉及内 ...
- 【Linux从青铜到王者】第五篇:Linux进程概念第一篇
系列文章目录 文章目录 系列文章目录 前言 一.冯诺依曼体系结构 二.操作系统 1.操作系统的概念 2.操作系统的目的 3.操作系统的定位 4.如何理解管理 5.操作系统总结 6.系统调用和库函数概念 ...
- 【Linux系统】第二篇、权限管理篇
文章目录 一.Linux下的用户 二.文件的权限 1. 文件访问者的分类 2. 文件类型和访问权限 3. 文件权限值的表示方法 三.文件访问权限的相关设置方法 1. chmod 2. chown 3. ...
- linux设备驱动第二篇:构造和运行模块
上一篇介绍了linux驱动的概念,以及linux下设备驱动的基本分类情况及其各个分类的依据和差异,这一篇我们来描述如何写一个类似hello world的简单测试驱动程序.而这个驱动的唯一功能就是输出h ...
- win7计算机属性资源管理器停止工作,win7资源管理器停止工作,手把手教你Win7资源管理器已停止工作怎么解决...
在系统中,资源管理器是一项重要的服务,其能够帮助用户管理系统中的视频.图片.文档.系统文件等一系列资源,而在我们使用电脑的过程中,部分用户的系统常常弹出"Windows资源管理器已停止工作& ...
- Linux进程管理(第二版) --计划任务
计划任务 一.一次性计划任务 at命令 #功能:安排一个/几个命令在指定时间(时刻)运行一次 1.at的命令格式及参数 at [-f 文件名] 时间 at -d 或者 atrm 删除队列中的任务 [a ...
- Linux进程管理(第二版) --进程管理命令
进程管理命令 一.查看用户信息w 1. w显示信息的含义 TTY:说明用户登录的方式,ttyN:表示以本地终端登录;pts/N表示以远程终端登录 JCPU:以终端代号来区分,该终端所有相关的进程执行时 ...
- 【转】提升工作效率的一些小技巧——资源管理器篇
当我看到有人打开资源管理器,一个一个文件夹点进去,再点出来,我就着急.特别是有人在会议上打开我的电脑,然后寻找文件,我就特别捉急,这不只是在浪费自己的时间,还浪费参加会议人的时间. 我把资源管理器篇放 ...
- [若有所悟]提升工作效率的一些小技巧——资源管理器篇
当我看到有人打开资源管理器,一个一个文件夹点进去,再点出来,我就着急.特别是有人在会议上打开我的电脑,然后寻找文件,我就特别捉急,这不只是在浪费自己的时间,还浪费参加会议人的时间. 我把资源管理器篇放 ...
最新文章
- 皮一皮:有钱人的世界咱不懂之不知道第几次...
- vue 箭头函数兼容性_前端学习计划之VUE学习(二)
- 入门Web前端要注意什么?要学哪些软件?
- linux查文件名称唯美,第二章、Linux常用命令
- 走在前沿的弄潮儿,怎能不会Git的那些奇技淫巧
- [error] MFC错误不能将参数1从const char [3]转换为const wchar_t *
- 程序员公司选择:创业公司、中等规模公司、大公司
- python变量详解_python基础教程-03-变量详解
- ubuntun系统mysql数据库同步_Ubuntu下MySQL主从同步配置步骤
- 随想录(rt-patch和linux)
- .Net Framework System.Collections 集合类
- 这是目前为止5G最完整的PPT
- 重装上阵,全新的「极光开发者」公众号来了,关注送大礼!
- win10未检测到任何音频设备解决办法
- 关于VLAN的几种接口模式
- 2000元台式电脑组装配置单2021 2000元组装电脑配置清单
- Newifi mini R6850/R6830路由器刷breed+Padavan固件
- 【麦可网】Cocos2d-X跨平台游戏开发学习笔记---第二十一课:Cocos2D-X网格特效1-3
- hdu 4489(排列组合+DP)
- 最好用的jpg转pdf软件