A. linux里面cpu占用太高排查思路是什么
可以通过top命令来查看占用cpu的软件看是否有僵尸进程在占用cpu如果可以通过kill杀死无用的进程!
B. linux top命令下 CPU: 35%hi 15%si hi si 异常的高有什么优化或解决问题的方法提示吗
inux top命令下 CPU: 35%hi 15%si hi si 异常高的解决方法:
一些程序本来就需要占用大量的cpu资源,比如跑密码等,在cpu占用率受限的情况下,程序就不能很好的完成工作。
再有一些程序本身有bug,或者存在兼容问题。wine程序的cpu占用率总是偏高的。
系统能做的就是按照管理员的意图分配足够的资源或者限制。
cpulimit,这个程序可以限制指定程序的cpu占用率,在ubuntu下,可以用apt-get命令安装,具体使用方法可以在安装之后man cpulimit。
linux下还可以进行磁盘配额等等限制。
C. Linux top命令 中%CPU结果 比 %us的结果 高,为什么
us是user
sy是system
注意看%wa,waiting,这个是等IO的时间,一般来说是在等磁盘操作。
100%-%id(idle)就是总共实际使用的CPU时间了。
D. “linux top命令”是什么意思
top命令用于显示系统运行的进程信息,作用类似于windows中的任务管理器,只不过top不是图形化的,而是显示实时文本信息x0dx0ax0dx0a统计信息区域的下方显示了各个进程的详细信息。首先来认识一下各列的含义。x0dx0aPID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMANDx0dx0a序号列名含义x0dx0aPID 进程idx0dx0aPPID 父进程idx0dx0aRUSER Realusernamex0dx0aUID 进程所有者的用户idx0dx0aUSER 进程所有者的用户名x0dx0aGROUP 进程所有者的组名x0dx0aTTY 启动进程的终端名。不是从终端启动的进程则显示为?x0dx0aPR 优先级x0dx0aNInice 值。负值表示高优先级,正值表示低优先级x0dx0aP 最后使用的CPU,仅在多CPU环境下有意义x0dx0a%CPU 上次更新到现在的CPU时间占用百分比x0dx0aTIME 进程使用的CPU时间总计,单位秒x0dx0aTIME+ 进程使用的CPU时间总计,单位1/100秒x0dx0a%MEM 进程使用的物理内存百分比x0dx0aVIRT 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RESx0dx0aSWAP 进程使用的虚拟内存中,被换出的大小,单位kb。x0dx0aRES 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATAx0dx0aCODE 可执行代码占用的物理内存大小,单位kbx0dx0aDATA 可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kbx0dx0aSHR 共享内存大小,单位kbx0dx0anFLT 页面错误次数x0dx0anDRT 最后一次写入到现在,被修改过的页面数。x0dx0aS 进程状态。x0dx0aD= 不可中断的睡眠状态x0dx0aR= 运行x0dx0aS= 睡眠x0dx0aT= 跟踪/停止x0dx0aZ= 僵尸进程x0dx0aCOMMAND 命令名/命令行x0dx0aWCHAN 若该进程在睡眠,则显示睡眠中的系统函数名x0dx0aFlags 任务标志,参考sched.h
E. Linux服务器 内核占用cpu过高
我也遇到了这样的问题。
4颗96核的CPU,随便一个进程一运行 sys 的使用率就上涨内,us 使用率正常。容
系统为centos6.5时运行正常,centos7.6时 sys 上涨导致负载飚升。
初步判断系统内核兼容性问题,不过没有测试
F. “linux top命令”是什么意思
top命令用于显示系统运行的进程信息,作用类似于windows中的任务管理器,只不过top不是图形化的,而是显示实时文本信息
统计信息区域的下方显示了各个进程的详细信息。首先来认识一下各列的含义。
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
序号列名含义
PID 进程id
PPID 父进程id
RUSER Realusername
UID 进程所有者的用户id
USER 进程所有者的用户名
GROUP 进程所有者的组名
TTY 启动进程的终端名。不是从终端启动的进程则显示为?
PR 优先级
NInice 值。负值表示高优先级,正值表示低优先级
P 最后使用的CPU,仅在多CPU环境下有意义
%CPU 上次更新到现在的CPU时间占用百分比
TIME 进程使用的CPU时间总计,单位秒
TIME+ 进程使用的CPU时间总计,单位1/100秒
%MEM 进程使用的物理内存百分比
VIRT 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
SWAP 进程使用的虚拟内存中,被换出的大小,单位kb。
RES 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
CODE 可执行代码占用的物理内存大小,单位kb
DATA 可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb
SHR 共享内存大小,单位kb
nFLT 页面错误次数
nDRT 最后一次写入到现在,被修改过的页面数。
S 进程状态。
D= 不可中断的睡眠状态
R= 运行
S= 睡眠
T= 跟踪/停止
Z= 僵尸进程
COMMAND 命令名/命令行
WCHAN 若该进程在睡眠,则显示睡眠中的系统函数名
Flags 任务标志,参考sched.h
G. linux占用内存太高,有没有好的解决办法呀
且体的还得看服务器的配置。
一般有如下几种可能:
1) 有程序占用大量CPU,使用top命令来检查(看看是否有java程序锁死之类的故障)
2) 有程序占用大量内存,使得内存真正不够用了(这个才是真正需要加内存的时候),比如由于MySQL在较大负载下运行容量为GB级别的数据库导致内存不够用,需要给服务器插入更多物理内存
3) 磁盘系统读写故障,IO吞吐错误造成CPU负载上升,需要光盘引导进入单用户模式扫描修复磁盘。
但也可以手动进行内存释放,具体操作如下:
[root@dbserver01 mysql]# cat /proc/sys/vm/drop_caches0
首先,/proc/sys/vm/drop_caches的值,默认为0
[root@dbserver01 mysql]# sync
手动执行sync命令(描述:sync 命令运行 sync 子例程。如果必须停止系统,则运行 sync 命令以确保文件系统的完整性。sync 命令将所有未写的系统缓冲区写到磁盘中,包含已修改的 i-node、已延迟的块 I/O 和读写映射文件) 《Linux就该这么学》 一起学习。
[root@dbserver01 mysql]# echo 3 > /proc/sys/vm/drop_caches
[root@dbserver01 mysql]# cat /proc/sys/vm/drop_caches
3
将/proc/sys/vm/drop_caches值设为3 [root@dbserver01 mysql]# free -m
H. linux top命令%st值高是怎么回事
st 的全称是 Steal Time ,就来是 Xen Hypervisor 分配自给运行在其它虚拟机上的任务的实际 CPU 时间。
%st(Steal time) 是当 hypervisor 服务另一个虚拟处理器的时候,虚拟 CPU 等待实际 CPU 的时间的百分比。
Steal 值比较高的话,需要向主机供应商申请扩容虚拟机。服务器上的另一个虚拟机拥有更大更多的 CPU 时间片,需要申请升级以与之竞
争。另外,高 steal 值也可能意味着主机供应商在服务器上过量地出售虚拟机。如果升级了虚拟机, steal 值还是不降的话,应该寻找另一家服务供应商。
低 steal 值意味着应用程序在目前的虚拟机上运作良好。因为虚拟机不会经常地为了 CPU 时间与其它虚拟机激烈竞争,虚拟机会更快地响应。主机供应商没有过量地出售虚拟服务,绝对是一件好事情。
I. linux内存占用率过高怎么办
1. 使用top 查看内存的占用情况,然后键入"M"命令根据内存的占用情况降序排列("P"是CPU占用情况降序排列)
2.关闭掉不需要的进程,
3.再使用top查看内存占用情况,发觉内存占用率已经降下来了,但是free -h却还有100G被占用(内存总共128G),vmstat发现是cache 占用了大量内存。
4. 使用 echo 1 > /proc/sys/vm/drop_caches 释放缓存
常用的释放缓存的命令如下
To free pagecache:仅清除页面缓存(PageCache)
echo 1 > /proc/sys/vm/drop_caches
To free dentries and inodes:清除目录项和inode
echo 2 > /proc/sys/vm/drop_caches
To free pagecache, dentries and inodes:清除页面缓存,目录项和inode
echo 3 > /proc/sys/vm/drop_caches
5.再使用free -h 查看内存使用情况,发现内存使用情况已经正常了
J. Linux TOP命令按内存占用排序和按CPU占用排序
Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。下面让我们一起去了解Linux TOP命令 按内存占用排序和按CPU占用排序。
Linux TOP命令 按内存占用排序和按CPU占用排序:
:在命令行提示符执行top命令
2:输入大写P,则结果按CPU占用降序排序。输入大写M,结果按内存占用降序排序。(注:大写P可以在capslock状态输入p,或者按Shift+p)
另外:
认识top的显示结果
top命令的显示结果如下所示:
top - 01:06:48 up 1:22, 1 user, load average: 0.06, 0.60, 0.48 Tasks: 29 total, 1 running, 28 sleeping, 0 stopped, 0 zombie Cpu(s): 0.3% us, 1.0% sy, 0.0% ni, 98.7% id, 0.0% wa, 0.0% hi, 0.0% si Mem: 191272k total, 173656k used, 17616k free, 22052k buffers Swap: 192772k total, 0k used, 192772k free, 123988k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1379 root 16 0 7976 2456 1980 S 0.7 1.3 0:11.03 sshd 14704 root 16 0 2128 980 796 R 0.7 0.5 0:02.72 top 1 root 16 0 1992 632 544 S 0.0 0.3 0:00.90 init 2 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0 3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 watchdog/0统计信息区
前五行是系统整体的统计信息。第一行是任务队列信息,同 uptime 命令的执行结果。其内容如下:
01:06:48当前时间
up 1:22系统运行时间,格式为时:分
1 user当前登录用户数
load average: 0.06, 0.60, 0.48系统负载,即任务队列的平均长度。
三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。
第二、三行为进程和CPU的信息。当有多个CPU时,这些内容可能会超过两行。内容如下:
Tasks: 29 total进程总数
1 running正在运行的进程数
28 sleeping睡眠的进程数
0 stopped停止的进程数
0 zombie僵尸进程数
Cpu(s): 0.3% us用户空间占用CPU百分比
1.0% sy内核空间占用CPU百分比
0.0% ni用户进程空间内改变过优先级的进程占用CPU百分比
98.7% id空闲CPU百分比
0.0% wa等待输入输出的CPU时间百分比
0.0% hi
0.0% si
最后两行为内存信息。内容如下:
Mem: 191272k total物理内存总量
173656k used使用的物理内存总量
17616k free空闲内存总量
22052k buffers用作内核缓存的内存量
Swap: 192772k total交换区总量
0k used使用的交换区总量
192772k free空闲交换区总量
123988k cached缓冲的交换区总量。
内存中的内容被换出到交换区,而后又被换入到内存,但使用过的交换区尚未被覆盖,
该数值即为这些内容已存在于内存中的交换区的大小。
相应的内存再次被换出时可不必再对交换区写入。
进程信息区
统计信息区域的下方显示了各个进程的详细信息。首先来认识一下各列的含义。
序号列名含义
aPID进程id
bPPID父进程id
cRUSERReal user name
dUID进程所有者的用户id
eUSER进程所有者的用户名
fGROUP进程所有者的组名
gTTY启动进程的终端名。不是从终端启动的进程则显示为 ?
hPR优先级
iNInice值。负值表示高优先级,正值表示低优先级
jP最后使用的CPU,仅在多CPU环境下有意义
k%CPU上次更新到现在的CPU时间占用百分比
lTIME进程使用的CPU时间总计,单位秒
mTIME+进程使用的CPU时间总计,单位1/100秒
n%MEM进程使用的物理内存百分比
oVIRT进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
pSWAP进程使用的虚拟内存中,被换出的大小,单位kb。
qRES进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
rCODE可执行代码占用的物理内存大小,单位kb
sDATA可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb
tSHR共享内存大小,单位kb
unFLT页面错误次数
vnDRT最后一次写入到现在,被修改过的页面数。
wS进程状态。
D=不可中断的睡眠状态
R=运行
S=睡眠
T=跟踪/停止
Z=僵尸进程
xCOMMAND命令名/命令行
yWCHAN若该进程在睡眠,则显示睡眠中的系统函数名
zFlags任务标志,参考 sched.h
默认情况下仅显示比较重要的 PID、USER、PR、NI、VIRT、RES、SHR、S、%CPU、%MEM、TIME+、COMMAND 列。可以通过下面的快捷键来更改显示内容。
更改显示内容
通过 f 键可以选择显示的内容。按 f 键之后会显示列的列表,按 a-z 即可显示或隐藏对应的列,最后按回车键确定。
按 o 键可以改变列的显示顺序。按小写的 a-z 可以将相应的列向右移动,而大写的 A-Z 可以将相应的列向左移动。最后按回车键确定。
按大写的 F 或 O 键,然后按 a-z 可以将进程按照相应的列进行排序。而大写的 R 键可以将当前的排序倒转。