CentOS 7 系统优化
系统调优4大子系统
- 1:找出系统中使用CPU最多的进程
- 2:找出系统中使用内存最多的进程
- 3:找出系统中对磁盘读写最多的进程
- 4:找出系统中使用网络最多的进程
系统调优概述
系统的运行状况: CPU-> MEM -> DISK-> NETWORK -> 应用程序调优
系统性能优化的4个子系统:
CPU
Memory
IO
Network
1.找出系统中使用CPU最多的进程
查看CPU负载相关工具uptime命令
[root@jumpserver ~]# uptime
:: up :, user, load average: 0.00, 0.01, 0.05
其内容如下:
19:13:35 |
当前时间 |
up 3:59 |
系统运行时间 ,说明此服务器连续运行3小时59分钟了 |
1 user |
当前登录用户数 |
load average: 0.00, 0.01, 0.05 |
系统负载,即任务队列的平均长度。 三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值 |
如果服务器的CPU为1核心,则load average中的数字 >=3 负载过高,如果服务器的CPU为4核心,则load average中的数字 >=12 负载过高
单核心,1分钟的系统平均负载不要超过3,就可以
使用top命令
运行top , 找出使用CPU最多的进程 ,按大写的P,可以按CPU使用率来排序显示
按照实际使用CPU ,从大到小排序显示所有进程列表
[root@jumpserver ~]# ps -aux --sort -pcpu | less #按cpu降序排序查看
# -pcpu 可以显示出进程绝对路径,方便找出木马程序运行的路径
2.找出系统中使用内存最多的进程
使用top命令
运行top , 然后按下大写的M 可以按内存使用率来排序显示
[root@jumpserver ~]# top
按照实际使用内存 ,从大到小排序显示所有进程列表
[root@jumpserver ~]# ps -aux --sort -rss | less # 内存降序排序
3、找出系统中对磁盘读写最多的进程
查看系统中哪个磁盘或分区最繁忙
通过iostat命令查看IO是否存在瓶颈
常用参数 :
-d 仅显示磁盘统计信息
-k 以K为单位显示每秒的磁盘请求数,默认单位块
-p device | ALL 用于显示块设备及系统分区的统计信息
安装iostat
[root@jumpserver ~]# yum -y install sysstat
[root@jumpserver ~]# iostat -d -k -p /dev/sda
Linux 3.10.-.el7.x86_64 (jumpserver) 2018年08月06日 _x86_64_ ( CPU) Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 0.49 17.71 4.42
sda1 0.06 1.40 0.12
sda2 0.42 16.26 4.30
每列含意 :
kB_read/s 每秒从磁盘读入的数据量,单位为K
kB_wrtn/s 每秒向磁盘写入的数据量,单位为K
kB_read 读入的数据总量,单位为K
kB_wrtn 写入的数据总量,单位为K
给磁盘写入一些内容 , 写入时尽可能不读磁盘
[root@jumpserver ~]# dd if=/dev/zero of=a.txt bs=10M count= ; sync
# 读入的数据用/dev/zero , /dev/zero不会读磁盘
# #把内存中的数据快速写到磁盘上。 只做dd不执行sync,不容易看不出写入效果 [root@jumpserver ~]# iostat -p sda -dk
Linux 3.10.-.el7.x86_64 (jumpserver) 2018年08月06日 _x86_64_ ( CPU) Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 1.43 36.59 460.93
sda1 0.06 1.32 0.11
sda2 1.37 35.21 460.82
查看哪个进程使用磁盘读写最多
iotop命令,查看哪个进程使用磁盘读写最多
安装iotop
参数:
-o, -only 只显示在读写硬盘的程序
-d SEC, -delay=SEC 设定显示时间间隔 刷新时间
退出 ,按q或ctrl+C
[root@jumpserver ~]# yum -y install iotop
[root@jumpserver ~]# iotop -o -d 1 # 显示正在使用磁盘的进程
在另一个终端对磁盘进行大量读操作 ,执行 :
[root@jumpserver ~]# find /
已经知道怎么找出使用系统的cpu ,内存 ,磁盘最多的进程
哪怎么找出系统中使用网络最多的进程呢
windows中有流量显示 ,双击后,可以查到每个进程使用的流量 , Linux有吗
Linux 可以使用nload
找出系统中使用网络最多的进程
1.使用nload监控总体带宽使用情况
2.使用nethogs找出使用带宽最多的进程
安装nload :
[root@jumpserver ~]# yum -y install nload
[root@jumpserver ~]# nload # 开始监控
然后另一个终端上运行 :
[root@jumpserver ~]# yum -y install httpd
[root@jumpserver ~]# systemctl start httpd
[root@jumpserver ~]# ab -n -c http://www.baidu.com/index.html # 产生一些测试数据
查看结果:
Incoming : 下载 Outgoing :上传
2.使用nethogs找出使用带宽最多的进程
安装nethogs :
[root@jumpserver ~]# yum -y install nethogs
[root@jumpserver ~]# nethogs
在另一个终端生成一些数据 :
[root@jumpserver ~]# wget http://mirrors.zju.edu.cn/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1804.iso
可以看到进程号 , 用户 , 进程都可以看到
CentOS 7 系统优化的更多相关文章
- Centos 7系统优化脚本
脚本如下,后续继续优化 #!/bin/bash #author junxi by #this script is only for CentOS 7.x #check the OS platform= ...
- 四、Centos linux系统优化
1. 无论是哪个版本的linux,都会提供32位和64位的两个版本的镜像. i386为32位 x86_64为64位 两者的区别: 1)目标:需要大量的内存需求的行业为64位,普通用户的需求为3 ...
- 五、Centos linux系统优化-实战
一.linux用户名和密码远程登陆的修改: windows默认的远程端口和管理员:user:administrator prot:3389在管理--->本地用户和组 进行权限设置或者修 ...
- centos 操作系统优化
命令提示符优化 修改PS1环境变化 vim /etc/profile #在最后一行添加 export PS1='[\u@\H \w]$' \u ---显示当前登录用户名称 \h ---显示系统主机名称 ...
- CentOS 6一键系统优化 Shell 脚本
CentOS 6一键系统优化 Shell 脚本 脚本的内容如下: #!/bin/bash#author suzezhi#this script is only for CentOS 6#check t ...
- Centos系统优化
系统优化脚本 #!/bin/bash #author junxi by #this script is only for CentOS 7.x #check the OS platform=`unam ...
- CentOS系统优化一键配置脚本
#!/usr/bin/env bash PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin export P ...
- Centos 04 基础系统优化命令
在Linux这个系统当中,几乎所有的硬件设备文件都在/dev这个目录内.举例来说,IDE介面的硬盘的文件名称即为/dev/hd[a-d],其中, 括号内的字母为a-d当中的任意一个,亦即有/dev/h ...
- CentOS 7.4系统优化/安装软件
源改为国内源 阿里云yum源 https://opsx.alibaba.com/mirror 清华yum源 https://mirrors.tuna.tsinghua.edu.cn/ 网易163yum ...
随机推荐
- 在Linux添加定时任务删除5天前的日志文件
利用shell脚本自动清理,脚本如下 1.删除文件命令: find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} \; 实例命令: fin ...
- matlab与python读取tiff文件
matlab t=Tiff('IMG_3952.TIF', 'r+'); k = 1; t.setDirectory(k); img{k} = t.read(); src = img{1}; dst( ...
- Direct3D驱动类型(DRIVER_TYPE)介绍
之前部门老大叫我查找有关Direct3D使用软件渲染的方法,于是我找到了D3D驱动的类型,并整理如下 一.D3D驱动类型的句法 typedef enum D3D_DRIVER_TYPE { D3D_D ...
- c++线程池小例子
ThreadPool.h #ifndef __THREADPOOL_H #define __THREADPOOL_H #define HAVE_STRUCT_TIMESPEC //#include & ...
- Git:git diff 命令详解
工作目录 vs 暂存区 $ git diff <filename> 意义:查看文件在工作目录与暂存区的差别.如果还没 add 进暂存区,则查看文件自身修改前后的差别.也可查看和另一分支的区 ...
- iOS开发之--复制粘贴功能
复制粘贴功能,代码如下: 1.复制功能 UIPasteboard *pasteboard = [UIPasteboard generalPasteboard]; pasteboard.string = ...
- 【thinkphp5】安全建议:隐藏后台登录入口地址
我们都知道后台 www.test.com/admin 是我们最常用的登录入口,方便的同时也留下了隐患,如果你刚好使用了 admin/ 这种账号密码的方式,会导致我们的后台完全暴露在外. 因此我们建 ...
- poj1696
没看题解,搜了一下都是什么叉积凸包,根本没有必要用吧.. 显然这个题我们找夹角就可以了,根据高中的公式 a·b=|a|*|b|*cos<a,b> 所以用点积找一个 cos<a,b&g ...
- 10 windows server 2012R2 发布MVC框架网站注意事项
1:网站编译完成之后,需要发布,网站中应包括的文件有:文件夹(bin,Views,Content等其他网站中涉及到的文件夹)文件(favicon.ico.Web.config.Global.asax) ...
- Java设计模式系列 — 构造器模式
想象下你有一个类,像下图所示有许多属性.假设你想让你的类不可变(顺便说一下,除非有一个好的理由不这样做,否则你应该坚持.但是我们会以另一种方式来达到要求.) public class User { p ...