查看CPU核心
https://blog.csdn.net/zuozewei/article/details/85251890
查看所有端口
https://blog.csdn.net/gyxinguan/article/details/95103945
查看所有进程
ps -ef
过滤查询tomcat 占用情况 并获取pid
ps -aux | grep tomcat
过滤查询进程
ps -ef | grep redis
干掉进程
kill pid
kill 9 pid
从根目录查找文件夹名称
find / -name tomcat
查找/var/www/目录下叫index.php的文件
find /var/www/ -name index.php
查找根目录下所有已”.sh”结尾的文件
find / -name *.sh
下载命令:下载 www.91cnm.com/index.php的资源
wget www.91cnm.com/index.php (&下载大文件的时候加上&后台执行,断开远程连接还可以下载)
编辑文本命令
vi 文件
vim 文件
文本内命令修改内容
i
文本内命令保存 退出 强制退出
Esc+:+wq Esc+:+q Esc+:+q!
查看内存cpu使用情况 查看总使用情况
top 或 free -m(m代表最单位为mb)
详解TOP
使用TOP进入监控界面
按H进入帮助界面
从而看出 在top监控下 按m显示不同的内存显示
界面中 按f 是设置自动的顺序
上面的保存顺序只是临时保存。
指定cpu倒叙按大写P或shift+p,指定内存排序按大写M或shift+m。
top中各个字段的含义
https://blog.csdn.net/y33988979/article/details/80901134
https://blog.csdn.net/y33988979/article/details/80904236
https://blog.csdn.net/y33988979/article/details/81000162
快捷命令 top -ab -n 1
按内存排序 输出全部 并只输出一次,方便统计,并不用实时刷新用top占用cpu与内存。
————————————————————————————————————
查看内存使用多少才开始使用swap
[root@rhce ~]# cat /proc/sys/vm/swappiness
60
该值默认值是60.
swappiness=0的时候表示最大限度使用物理内存,然后才是 swap空间,
swappiness=100的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。
现在服务器的内存动不动就是上百G,所以我们可以把这个参数值设置的低一些,让操作系统尽可能的使用物理内存,降低系统对swap的使用,从而提高系统的性能。
--临时性修改:
[root@rhce ~]# sysctl vm.swappiness=10
vm.swappiness = 10
[root@rhce ~]# cat /proc/sys/vm/swappiness
10
这里我们的修改已经生效,但是如果我们重启了系统,又会变成60.
--永久修改:
在/etc/sysctl.conf 文件里添加如下参数:
vm.swappiness=10
或者:
[root@rhce ~]# echo 'vm.swappiness=10' >>/etc/sysctl.conf
保存,重启,就生效了。
内存参数中mem与swap的区别https://blog.csdn.net/zwan0518/article/details/12059213
开启swap 与 关闭 ,设置大小,并管理https://blog.csdn.net/ygm_linux/article/details/24532809
显示cpu架构信息
lscpu
查看CPU详细信息
cat /proc/cpuinfo
https://www.cnblogs.com/alwu007/p/6024631.html
查看负载
该命令可以大致的看出计算机的整体负载情况,load average后的数字分别表示计算机在1min、5min、15min内的平均负载。
$ uptime
23:51:26 up 21:31, 1 user, load average: 30.02, 26.43, 19.02
dmesg | tail
打印内核环形缓存区中的内容,可以用来查看一些错误;
上面的例子中,显示进程18694 因引内存越界被kill掉以及TCP request被丢弃的错误。通过dmesg可以快速判断是否有导致系统性能异常的问题。
$ dmesg | tail
[1880957.563150] perl invoked oom-killer: gfp_mask=0x280da, order=0, oom_score_adj=0
[...]
[1880957.563400] Out of memory: Kill process 18694 (perl) score 246 or sacrifice child
[1880957.563408] Killed process 18694 (perl) total-vm:1972392kB, anon-rss:1953348kB, file-rss:0kB
[2320864.954447] TCP: Possible SYN flooding on port 7001. Dropping request. Check SNMP counters.
vmstat 1
$ vmstat 1
procs ---------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
34 0 0 200889792 73708 591828 0 0 0 5 6 10 96 1 3 0 0
32 0 0 200889920 73708 591860 0 0 0 592 13284 4282 98 1 1 0 0
32 0 0 200890112 73708 591860 0 0 0 0 9501 2154 99 1 0 0 0
32 0 0 200889568 73712 591856 0 0 0 48 11900 2459 99 0 0 0 0
32 0 0 200890208 73712 591860 0 0 0 0 15898 4840 98 1 1 0 0
^C
打印进程、内存、交换分区、IO和CPU等的统计信息;
vmstat的格式如下
vmstat [options] [delay [count]]
vmstat第一次输出表示从开机到vmstat运行时的平均值;剩余输出的都是在指定的时间间隔内的平均值,上述例子中delay的值设置为1,除第一次以外,剩余的都是1秒统计一次,count未设置,将会一直循环打印。
$ vmstat 10 3
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 0 2527112 1086888 13720228 0 0 1 14 2 1 1 1 99 0 0
0 0 0 2527156 1086888 13719856 0 0 0 104 3003 4901 0 0 99 0 0
0 0 0 2526412 1086888 13719904 0 0 0 10 3345 4870 0 1 99 0 0
上述的例子中delay设置为10,count设置为3,表示每行打印10秒内的平均值,只打印3次。
需要检查的列
r:表示正在运行或者等待CPU调度的进程数。因为该列数据不包含I/O的统计信息,因此可以用来检测CPU是否饱和。若r列中的数字大于CPU的核数,表示CPU已经处于饱和状态。
free:当前剩余的内存;
si, so:交换分区换入和换出的个数,若换入换出个数大于0,表示内存不足;
us, sy, id, wa:CPU的统计信息,分别表示user time、system time(kernel)、idle、wait I/O。I/O处理所用的时间包含在system time中,因此若system time超过20%,则I/O可能存在瓶颈或异常;
mpstat -P ALL 1
$ mpstat -P ALL
Linux 3.10.0-229.el7.x86_64 (localhost.localdomain) 05/30/2018 _x86_64_ (16 CPU)
04:03:55 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
04:03:55 PM all 3.67 0.00 0.61 0.71 0.00 0.00 0.00 0.00 0.00 95.02
04:03:55 PM 0 3.52 0.00 0.57 0.76 0.00 0.00 0.00 0.00 0.00 95.15
04:03:55 PM 1 3.83 0.00 0.61 0.71 0.00 0.00 0.00 0.00 0.00 94.85
04:03:55 PM 2 3.80 0.00 0.61 0.60 0.00 0.00 0.00 0.00 0.00 94.99
04:03:55 PM 3 3.68 0.00 0.58 0.60 0.00 0.00 0.00 0.00 0.00 95.13
04:03:55 PM 4 3.54 0.00 0.57 0.60 0.00 0.00 0.00 0.00 0.00 95.30
[...]
该命令用于每秒打印一次每个CPU的统计信息,可用于查看CPU的调度是否均匀。
TIPS:刚开始直接运行上述命令可能会提示没有该命令,那是因为没有sysstat包,yum下载一下就可以了:yum install sysstat -y
可以使用 iostat、mpstat、sar、sa这些命令了
pidstat 1
$ pidstat 1
Linux 3.13.0-49-generic (titanclusters-xxxxx) 07/14/2015 _x86_64_ (32 CPU)
07:41:02 PM UID PID %usr %system %guest %CPU CPU Command
07:41:03 PM 0 9 0.00 0.94 0.00 0.94 1 rcuos/0
07:41:03 PM 0 4214 5.66 5.66 0.00 11.32 15 mesos-slave
07:41:03 PM 0 4354 0.94 0.94 0.00 1.89 8 java
07:41:03 PM 0 6521 1596.23 1.89 0.00 1598.11 27 java
07:41:03 PM 0 6564 1571.70 7.55 0.00 1579.25 28 java
07:41:03 PM 60004 60154 0.94 4.72 0.00 5.66 9 pidstat
07:41:03 PM UID PID %usr %system %guest %CPU CPU Command
07:41:04 PM 0 4214 6.00 2.00 0.00 8.00 15 mesos-slave
07:41:04 PM 0 6521 1590.00 1.00 0.00 1591.00 27 java
07:41:04 PM 0 6564 1573.00 10.00 0.00 1583.00 28 java
07:41:04 PM 108 6718 1.00 0.00 0.00 1.00 0 snmp-pass
07:41:04 PM 60004 60154 1.00 4.00 0.00 5.00 9 pidstat
^C
该命令用于打印各个进程对CPU的占用情况,类似top命令中显示的内容。pidstat的优势在于,可以滚动的打印进程运行情况,而不像top那样会清屏。
上述例子中,%CPU中两个java进程的cpu利用率分别达到了1590%和1573%,表示java进程占用了16颗CPU。
其他相关性能的命令https://blog.csdn.net/guoxiaojie_415/article/details/80526667
——————————————————————————————
慕课
ldavg的值就相当于 需要用几颗cpu来解决。
——————————————————————————————————————
IO的
————————————————————————————————————————————
network的