IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Linux笔记(1)——top/htop/终端多窗口工具byobu/kill命令信号捕捉 -> 正文阅读

[系统运维]Linux笔记(1)——top/htop/终端多窗口工具byobu/kill命令信号捕捉

前言

??记录一下自己的Linux学习笔记。本文主要包括Linux的top命令以及进阶工具htop,byobu多窗口工具以及kill命令对进程发出的信号及其捕捉。

1、top命令和htop工具

top命令

什么是top命令

top命令经常被用来监控Linux的系统状况,比如cpu、内存等的使用情况。

如何使用

打开Linux的终端,输入“top”并回车。

>>top

然后终端会显示如下界面
在这里插入图片描述

top命令内容解读

先来看第一行

top - 01:58:03 up 12 min,  1 user,  load average: 0.17, 0.14, 0.15

这一行显示的是系统的概况

01:58:03    //当前系统时间
up 12 min   //系统已运行12分钟
1 user      //当前系统一共登录了2个账户
load average: 0.17, 0.14, 0.15    //3个数字分别表示系统在1分钟、5分钟、15分钟内的负载情况
//当这个数值大于系统CPU的逻辑核心数时,则表示系统超载了

第二行

任务: 286 total,   1 running, 285 sleeping,   0 stopped,   0 zombie

这一行显示的是系统当前运行的进程概况

任务: 286 total  //表示系统当前一共运行了286个进程
1 running       //表示当前只有1个进程正在运行
285 sleeping    //表示当前有285个进程处于休眠状态
0 stopped       //当前0个进程处于stopped状态
0 zombie        //当前0个进程处于zombie状态

第三行

%Cpu(s):  0.0 us,  1.0 sy,  0.0 ni, 99.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st

这一行显示的是CPU的具体占用情况

0.0 us   //用户空间占用CPU的百分比
1.0 sy   //内核空间占用CPU的百分比
0.0 ni   //改变过优先级的进程占用CPU的百分比
99.0 id  //空闲的CPU百分比
0.0 wa   //IO等待占用CPU的百分比
0.0 hi   //硬中断(Hardware IRQ)占用CPU的百分比
0.0 si   //软中断(Software Interrupts)占用CPU的百分比
0.0 st   //当前VM(虚拟机)中的cpu被虚拟化偷走的百分比

第四行

MiB Mem :   3906.9 total,   1398.0 free,   1137.6 used,   1371.3 buff/cache

这一行显示的是内存的具体使用情况

3906.9 total   //系统总物理内存大小(4GB)
1398.0 free    //空闲内存大小
1137.6 used    //已使用的内存大小
1371.3 buff/cache  //缓存的内存大小

第五行

MiB Swap:    923.3 total,    923.3 free,      0.0 used.   2509.9 avail Mem 

这一行显示的是swap交换分区的具体使用情况

923.3 total    //交换区总大小
923.3 free     //空闲交换区大小
0.0 used       //已使用交换区大小
2509.9 avail Mem  //缓冲的交换区总大小

第六行的空行
第七行开始是各进程的状态监控表

PID — 进程的pid
USER — 进程的所有者
PR — 进程优先级
NI — nice值。负值表示高优先级,正值表示低优先级
VIRT — 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
RES — 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
SHR — 共享内存大小,单位kb
S/R/S/T/Z — 进程状态。
//D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
%CPU — 上次更新到现在的CPU时间占用百分比
%MEM — 进程使用的物理内存百分比
TIME+ — 进程使用的CPU时间总计,单位1/100秒
COMMAND — 进程名称(命令名/命令行)

htop工具

安装

sudo apt-get install htop

使用

打开Linux终端,输入以下命令并回车


>>htop

在这里插入图片描述

相比起top,htop有许多优点,这里我列举3点:

1、支持鼠标操作,点击各个表头可以对进程进行排序
2、点击下方功能区的Tree按键或者按F5可以切换为进程树排序,可以方便地查看父进程及其子进程
3、顶部有动态更新的CPU和内存信息可视化显示

2、终端多窗口工具byobu

有什么用

它可以在单个终端同时打开多个命令行窗口,并且切换方便。
在这里插入图片描述

安装

sudo apt-get install byobu

如何使用

简单介绍一下byobu的基本操作

F2  //新建命令行窗口
ctrl+F6  //关闭当前窗口
F3  //切换到上一个窗口
F4  //切换到下一个窗口
ctrl+c  //退出

3、kill命令发出的信号及其捕捉

kill命令是用来终止进程的,我们在使用kill命令杀死进程时系统会给该进程发送信号,以便于程序可以在退出前进行清理等操作。
值得注意的是,当你使用kill -9命令来强制终止进程时,进程是无法捕捉信号的。

进程如何捕捉信号

在此我演示一下python脚本如何捕捉kill命令默认发出的SIGTERM终止进程信号。

import signal //首先引入signal头文件


def handler(signum):
	print("收到kill信号!", signum)
    exit(0)


signal.signal(signal.SIGTERM, handler)  //表示进程捕捉到SIGTERM信号时,调用handler函数进行处理
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-07-17 12:19:55  更:2021-07-17 12:21:12 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/3 17:39:17-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码