1. 进程管理

1.1 进程查看

(1)进程简介

  进程是正在执行的一个程序或命令(如ls命令也是一个进程),每个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源。

(2)进程管理的作用

  ①判断服务器健康状态

  ②查看系统中所有进程

  ③杀死进程

(3)查看系统中所有的进程

  #ps aux  //使用Unix操作系统的BSD格式,其中a表示所有前台,x表示后台进程,u表示显示创建进程的用户。

  #ps -le  //使用linux标准命令格式,其中l表示详细信息,e表示所有进程

  ①USER:该进程是由哪个用户产生的。

  ②PID:进程的ID号

  ③%CPU:该进程占用CPU资源的百分比,占用越高,进程越耗费资源

  ④&MEM:该进程占用物理内存的百分比,占用越高,进程越耗费资源

  ⑤VSZ:该进程占用虚拟内存的大小,单位KB

  ⑥RSS:该进程占用实际物理内存的大小,单位KB

  ⑦TTY:该进程是在哪个终端运行的。其中的tty1-tty7代表本地控制台终端,tty1-tty67是本地的字符界面终端,tty7是图形终端。pts/0-255代表虚拟终端。

  ⑧STAT:进程状态。常见的状态有:R—运行;S-睡眠;T—停止状态;s-包含子进程;+—位于后台。

  ⑨START,TIME:进程启动时间和占用CPU的运算时间。

  ⑩COMMAND:产生此进程的命令名。

(4)查看系统的健康状态:#top [选项]  //类似于Windows的任务管理器

  ①其中选项:“-d 秒数” 可以指定top命令每隔几秒更新。默认是3秒

  ②在top命令的交互模式中,可以执行的命令

命令

作用

?或h

显示交互模式的帮助

P

以CPU使用率排序,默认就是此项

M

以内存的使用排序

N

以PID排序

q

退出top

  ③top显示的信息

行数

内容

说明

第1行

任务队列信息

12:02:46

系统当前时间

up 45 min

系统的运行时间,本机己经运行了45分钟

1 users

当前登录了1个用户

Load average:

0.03,0.04,0.05

系统在之前1分钟、5分钟、15分钟的平均负载。一般认为小于1,表示负载较小。如果大于1,系统己经超出负荷。

第2行

(进程信息)

Tasks: 84 total

系统中的进程总数

1 running

正在运行的进程数

83 sleeping

睡眠的进程

0 stopped

正在停止的进程

0 zombie

僵尸进程。如果不是0,需要手工检查僵尸进程

第3行

CPU信息

Cpus(s):0.0%us

用户模式占用的CPU百分比

0.0%sy

系统模式占用的CPU百分比

0.0%ni

改变过优先级的用户进程占用的CPU百分比

99.7%id

空闲的CPU百分比

0.0%wa

等待输入/输出的进程占用CPU百分比

0.0%hi

硬中断请求服务占用的CPU百分比

0.3%si

软中断请求服务占用的CPU百分比

0.0%st

st(Steal time)虚拟时间百分比。就是当有虚拟机时,虚拟CPU等待实际CPU的时间百分比

第4行

物理内存信息

Mem:103034k total

物理内存的总量,单位KB

128148k used

己经使用的物理内存数量

902196k free

空闲的物理内存数量

13680k buffers

作为缓冲的内存数量

第5行

交换分区(swap)信息

Swap:1023996k total

交换分区(虚拟内存)的总大小

0k used

己经使用的交换分区的大小

1023996k free

空闲交换分区的大小

37772k cached

作为缓存的交换分区的大小

(5)查看进程树:#pstree [选项] //其中选项:-p显示进程的PID,-u显示进程所属的用户。

1.2 终止进程

(1)kill 命令

  ①查看可用的进程信息:#kill –l

信号代号

信号名称

说明

1

SIGUP

该信号让进程立即关闭,然后重新读取配置文件之后重启

2

SIGINT

程序终止信号,用于终止前台进程。相当于输出ctrl+c快捷键

8

SIGFPE

在发生致命的算术运算错误时发出。不仅包括浮点运算错误,还包括溢出及除0等其它所有的算术错误。

9

SIGKILL

用来立即结束程序运行。本信号不能被阻塞、处理和忽略。一般用于强制终止进程。

14

SIGALARM

时钟定时信号,计算的是实际的时间或时钟时间。alarm函数使用该信号

15

SIGTERM

正常结束进程的信号,kill命令的默认信号。有时如果进程己经发生问题,这个信号是无法正常终止进程的,这时才可以尝试SIGKILL信号,也就是信号9.

18

SIGCONT

该信号可以让暂停的进程恢复执行,本信号不能被阻断

19

SIGSTOP

该信号可以暂停前台进程,相当于输入ctrl+z快捷键。本信号不能被阻断。

  ②终止进程:#kill -信号代码 进程号

(2)killall命令:#killall [选项] [信号] 进程名 //按进程名杀死进程

      其中选项:-i表示交互式,询问是否要杀死某个进程。-I:忽略进程名的大小写。如,#killall -9i httpd,表示强制杀死httpd进程。

(3)pkill命令:#pkill [选项] [信号] 进程名 //按进程名终止进程。其中选项“-t 终端号”:按照终端号踢出用户。

  ①#w //使用w命令查询本机己经登录的用户

  ②#pkill -t -9 pts/1  //强制杀死从pts/1虚拟终端登录的进程。

2. 工作管理

(1)把进程放入后台:(后台进程相当于Windows下最小化的窗口)

  ①方法1:#tar –zcf etc.tar.gz /etc & //其中的&表示将进程放入后台,相当于Windows中的窗口最小化。注意,这种方式放入后台的,进程仍在执行

  ②方法2:如,#top  //在top命令执行的过程中,按下ctrl+z快捷键。注意,这种方式放入后台的,进程会被暂停执行

(2)查看后台的工作:#jobs [-l] //其中的-l显示工作的PID。

  ①输出结果,如:[1]+  1742 停止 (信号)         top

  ②注意,其中的[1]为工作号,表示放入后台的先后顺序,“+”号代表最后一个放入后台的工作,也是工作恢复时,默认恢复的工作。“-”号代表倒数第2个放入后台的工作。

(3)恢复后台暂停的工作

  ①恢复到前台执行

    #fg %工作号  //其中的%号可以省略,但要注意工作号和PID的区别。

  ②恢复到后台执行

    #bg %工作号  //注意,后台恢复执行的命令,是不能和前台有交互的。否则不能恢复到后台执行。

3. 系统资源查看

查看内容

命令及说明

监控系统资源

#vmstat [刷新延时 刷新次数]  //如#vmstat 1 3

开机时内核检测信息

#dmesg  或 #dmesg | grep CPU

查看内存使用状态

#free [-b|-k|-m|-g] //以字节,KB、MB、GB为单位。默认以KB为单位。

查看CPU信息

#cat /proc/cpuinfo

查看系统的启动时间和平均负载

#uptime, 也就是top命令的第1行。w命令也可以看到这个数据

查看系统与内核相关信息

#uname [选项] //其中选项-a用于查看系统所有西相关信息;-r查看内核版本;-s查看内核名称

判断当前系统的位数

#file /bin/ls

查询当前Linux系统的发行版本

#lsb_release -a

列出进程打开或使用的文件信息

#lsof [选项] //其中选项“-c 字符串”:只列出以字符串开头的进程打开的文件;“-u 用户名”:只列出某个用户的进程打开的文件;“-p pid”列出某个PID进程打开的文件。

4. 系统定时任务

(1)crond服务管理与访问控制

  ①#service crond restart  //启动

  ②#chkconfig crond on     //自启动

(2)用户的crontab设置:

  ①命令:#crontab [选项] //其中“-e”:编辑crontab定时任务“-l”查询crontab任务。“-r”删除当前用户所有的crontab任务

  #crontab -e  进入编辑,增加形如:“* * * * * command”的任务

项目

含义

范围

第1个“*”

1小时当中的第几分钟

0-59

第2个“*”

1天当中的第几个小时

0-23

第3个“*”

1个月当中的第几天

1-31

第4个“*”

一年当中的第几个月

1-12

第5个“*”

一周当中的星期几

0-7(0和7都代表星期日)

  ②任务设置

时间

含义

特殊符号及含义

45 22 * * * 命令

在22点45分执行命令

①“*”:代表任何时间。比如第1个“*”表示1小时中的每分钟都会执行一次的意思。

②“,”代表不连续时间。比如“0 8,12,16 * * * 命令”就代表每天的8点0分,12点0分,16点0分都执行一次命令。

③“-”代表连续的时间范围。比如“0 5 * * 1-6 命令” 代表在周一至周六凌晨5点执行命令

④“*/n”代表每隔多久执行一次。比如“*/10 * * * * 命令”代表每隔10分钟就执行一次命令。

0 17 * * 1 命令

在每周1的17点0分执行命令

0 5 1,15 * * 命令

每月1号和15号的5点0分执行命令

40 4 * * 1-5 命令

每周一至周五的4点40分执行命令

*/10 4 * * * 命令

每天凌晨4点,每隔10分钟执行一次命令

0 0 1,15 * 1 命令

每月1号和15号或每周1的0点0分都会执行命令。注意:星期几和几号最好不要同时出现。因为他们定义的都是天,非常容易搞混 。

(3)应用举例

  # crontab -e

*/ * * * * /bin/echo "aa" >> /tmp/test   //每5分钟执行

  * *  /sbin/shutdown -r now           //每周2凌晨5点5分执行

  ,, * * /root/sh/autobak.sh       //每月1、10、15号5点执行

第12章 Linux系统管理的更多相关文章

  1. 第二十七章 Linux系统管理之定时任务

    一.定时任务概述 1.含义:设定某个日期或时间周期性执行指令. 2.crond # 守护进程 分钟级别 rond是Linux系统中用来定期执行命令或脚本的一种服务软件,一般情况下,我们安装完CentO ...

  2. 第12章 Linux配置定时任务详解

    12.1 配置定时任务 首先需弄清的概念: (1).crond是一个daemon类程序,路径为/usr/sbin/crond.默认会以后台方式启动,service或systemd方式启动crond默认 ...

  3. Linux基础学习(13)--Linux系统管理

    第十三章——Linux系统管理 一.进程管理 1.进程查看: (1)进程简介:进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源. (2)进程管理的 ...

  4. Linux就这个范儿 第12章 一个网络一个世界

    Linux就这个范儿 第12章 一个网络一个世界 与Linux有缘相识还得从一项开发任务说起.十八年前,我在Nucleus  OS上开发无线网桥AP,需要加入STP生成树协议(SpanningTree ...

  5. 【菜鸟学习Linux】-第三章- Linux环境搭建-使用VMware9安装Ubuntu 12.04系统

    上一步,我们安装了VMware9虚拟机,现在我们就是用它来安装Ubuntu12.04系统,至于Ubuntu是什么,我就不废话了,大家google一下,比我讲的清楚,好了,开始干活! Ubuntu官网下 ...

  6. 【转载】Linux小白福利:《超容易的Linux系统管理入门书》(三)在虚拟机上安装Linux

    本篇是Linux小白最佳实践第3篇,目的就是让白菜们自己动手安装个Linux玩玩.如果你是Linux小白,请务必亲自动手来安装.不想安装多个操作系统的,虚拟机是最佳选择,一台电脑上可以用虚拟机安装7. ...

  7. CentOS 7.4 初次手记:第一章 Linux守护进程(daemon)

    第一节 init & sysvinit 6 I sysvinit 运行顺序... 6 II Sysvinit和系统关闭... 7 III Sysvinit 的小结... 7 IV 运行级别.. ...

  8. Linux系统管理远程登录工具PUTTY

    PuTTY 简介        PuTTY是一个Telnet.SSH.rlogin.纯TCP以及串行接口连线软件.较早的版本仅支持Windows平台,在最近的版本中开始支持各类Unix平台,并打算移植 ...

  9. 【转载】茶叶蛋干货!《超容易的Linux系统管理入门书》(连载十)进行动态主机配置DHCP

    使用动态主机配置协议DHCP(Dynamic Host Configuration Protocol)则可以避免网络参数变化后一些繁琐的配置,客户端可以从DHCP服务端检索相关信息并完成相关网络配置, ...

随机推荐

  1. .NET 基础 一步步 一幕幕[面向对象之方法、方法的重载、方法的重写、方法的递归]

    方法.方法的重载.方法的重写.方法的递归 方法: 将一堆代码进行重用的一种机制. 语法: [访问修饰符] 返回类型 <方法名>(参数列表){ 方法主体: } 返回值类型:如果不需要写返回值 ...

  2. 前端学HTTP之实体和编码

    前面的话 每天都有各种媒体对象经由HTTP传送,如图像.文本.影片以及软件程序等.HTTP要确保它的报文被正确传送,识别.提取以及适当处理.为了实现这些目标,HTTP使用了完善的标签来描述承载内容的实 ...

  3. 微软新神器-Power BI横空出世,一个简单易用,还用得起的BI产品,你还在等什么???

    在当前互联网,由于大数据研究热潮,以及数据挖掘,机器学习等技术的改进,各种数据可视化图表层出不穷,如何让大数据生动呈现,也成了一个具有挑战性的可能,随之也出现了大量的商业化软件.今天就给大家介绍一款逆 ...

  4. 带你实现开发者头条APP(三) 首页实现

    title: 带你实现开发者头条APP(三) 首页实现 tags: 轮播广告,ViewPager切换,圆形图片 grammar_cjkRuby: true --- 一.前言 今天实现开发者头条APP的 ...

  5. 利用Node.js的Net模块实现一个命令行多人聊天室

    1.net模块基本API 要使用Node.js的net模块实现一个命令行聊天室,就必须先了解NET模块的API使用.NET模块API分为两大类:Server和Socket类.工厂方法. Server类 ...

  6. 移动端访问PC站点时自动跳转至移动站点

    方法一: 百度Site APP的uaredirect.js 实现手机访问,自动跳转 <script src="http://siteapp.baidu.com/static/webap ...

  7. 简析服务端通过GT导入SHP至PG的方法

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 项目中需要在浏览器端直接上传SHP后服务端进行数据的自动入PG ...

  8. TemplateMethod(模块方法模式)

    /** * 模块模式 * @author TMAC-J * 将一个完整的算法分离,分成不同的模块 * 用于有很多步骤的时候,可能以后这些步骤还会增加,把这些步骤分离 * 将有共性的部分放在抽象类中 * ...

  9. CentOS 7 修改主机名

    今天在阿里云上买了一个centos7的服务器,连接上以后,发现一个很长很长的主机名,看着让人很是不爽,就想着怎样将其改成一个有个性的名字. 这里我想说的是,在centos7 版本的linux系统上和c ...

  10. win10系统下连接无线网络掉线问题解决办法

    打开驱动精灵----系统诊断 找一个可修复的驱动点击 选择连不上网中的查看更多 有连不上网络,网络连接受限,解决无线间歇性掉网问题 进入计算机管理----设备管理 修改无线网络属性(名称含有wirel ...