查看系统中运行的程序和进程,判断服务器的健康状态,停止不需要的进程
系统整体信息
进程的管理命令
top
查看服务器的进程占用的资源
M 将结果按照内存 从高到低排列
P 将结果按照CPU 从高到低排列
1:切换cpu信息
q:退出
第一行
09:01:05 系统时间
up 6 min, 系统运行时间
3 users, 当前登录的用户
load average: 0.02, 0.21, 0.14 系统在之前的 1分钟 5分钟 15分钟 的平均负载 如果cpu是单核 那么这个数值超过1 就是高负载 双核就是超过2为高负载
第二行
Tasks: 212 total 系统总进程数
1 running 当前正在运行的进程
211 sleeping 已经休眠的进程
0 stopped 正在停止的进程
0 zombie 代表僵尸进程
第三行
%Cpu(s): 3.5 us 用户模式占用的cpu百分比
0.5 sy 系统占用
0.0 ni 改变过优先级的用户进程占用
98.3 id 空闲
0.2 wa, 等待输入/输出进程占用 任务排排坐
0.0 hi 硬中断请求服务 占用
0.0 si 软中断请求服务 占用
0.0 st 虚拟时间百分比
第四行
KiB Mem : 997976 total, 物理内存的总量 单位kb
666264 used, 已经使用的物理内存总量
79656 free 空闲内存
244012 buff/cache 作为缓冲的内存数量 为了提高文件系统性能,内核利用一部分物理内存分配出缓冲区,用于缓存系统操作和数据文件,当内核收到读写的请求时,内核先去缓存区找是否有请求的数据,有就直接返回,如果没有则通过驱动程序直接操作磁盘。
第五行
KiB Swap: 2097148 total 虚拟内存总大小 虚拟内存是计算机系统内存管理的一种技术。它使得应用程序认为它拥有连续可用的内存(一个连续完整的地址空间),它通常是被分隔成多个物理内存碎片,还有部分暂时存储在外部磁盘存储器上,在需要时进行数据交换。
(11条消息) 虚拟内存与物理内存的联系与区别_TLpigff的博客-CSDN博客
192512 used. 已经使用的交换分区大小 当Linux系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中
1904636 free 空闲
125120 avail Mem 可用内存
进程信息
PID | 进程ID |
---|---|
USER | 进程所属用户 |
PR | 优先级 数值越小 优先级越高 |
NI | 优先级 数值越小 优先级越高 |
VIRT | 进程所使用虚拟内存大小 单位是kb |
RES | 进程所使用物理内存大小 单位是kb |
SHR | 共享内存大小 实际使用内存=常驻内存RES - 共享内存SHR |
S | 当前进程的状态 S代表睡眠 R代表运行 |
%CPU | 该进程占用的cpu百分比 |
%MEM | 进程占用内存的百分比 |
TIME+ | 进程占用的cpu时间 |
COMMAND | 进程名 |
free
查看内存使用情况
-m 代表以mb单位查看
用法1:free -m 查看内存的使用情况
第一行
total 内存总数
used 已经使用的内存数
free 空闲内存数
shared 共享内存数
buff/cache 缓冲区内存数
available 可用内存
swap 代表虚拟内存 在物理内存不够时使用
df
查看磁盘空间
-h 表示以高可读形式展示大小
ps
查看服务器的进程信息
-e -A all 列出全部进程
-f full 显示全字段
UID | 该程序正在执行的用户 |
---|---|
PID | 进程ID |
PPID | 该进程的父进程ID 如果找不到 该进程为僵尸进程 |
C | CPU占用率 |
STIME | 进程启动时间 |
TTY | 终端设备 发起该进程的设备识别符号,?表示该进程不由终端发起 |
TIME | 使用CPU时间 |
CMD | 该进程名称或者对应的路径 |
ps -ef | grep crond
查看某个进程的详细信息
netstat
查看进程的网络连接状态
-t 表示只列出tcp协议的连接
-n 表示将地址从字母组合转化成ip地址 将协议转化成端口号来显示
-l 过滤state 列出listen 监听状态的连接
-p 显示发起连接的进程pid以及进程名称
Proto:协议 tcp udp http
Recv-Q 接收
Send-Q 发送
Local Address 本地地址
Foreign Address 远程地址
State :状态 listen 代表监听状态
PID/Program name:进程ID 进程名
关闭进程
kill
信号编号
9 代表杀死进程 强制结束
15 正常结束进程 kill命令的默认信号
用法1:kill 1053
用法2:kill -9 4472
killall
通过程序的进程名 来杀死一类进程
进程的优先级
优先级 控制哪些进程先运行 哪些后运行
查看进程优先级 top PR NI
改变优先级
在top命令下 使用快捷键r
-20 到 19 只能NI的优先级 不能改PR
命令行修改优先级
renice
修改进程优先级
renice 优先级 进程id (PID)
debian体系 ubantu kali
软件安装
dpkg 软件安装 更新 移除
.deb 这个后缀一般才能由这个命令安装
dpkg -i 安装软件包
dpkg -c 列出deb包的内容
dpkg -l | grep 配合grep查找主机包
dpkg -s qqmusic 查找报的详细信息
dpkg -L 查找已安装的软件 在系统中都有哪些文件
dpkg -S 显示指定包的状态信息
dpkg -r(卸载 保存配置) -p (卸载 不保存配置)
apt
在debian中的shell前端软件包管理器
需要超级管理员权限 root
#阿里云 安装包
deb http://mirrors.a/kali kali-rolling main non-free contrib
deb-src http://mirrors.aliyun.com/kali kali-rolling main non-free contrib
apt
apt-get install 软件名 安装
apt-get remove(不删除配置文件) purge (删除配置文件)
apt-get update 将所有的包来源 进行更新
apt-get upgrade 将系统中旧版本的包升级成新的
apt-cache search 关键词 用关键字搜索包
apt-cache show 包 显示特定包的基本信息
apt-cache depends 包 列出包的依赖
apt-get clean 清理本地包占用空间
apt-get autoremove 卸载 同时卸载那些当时作为依赖 但现在不需要的
(可以更新所有 不用一个一个找路径 不用找包了比较智能)