很多新手用户一样,在选择Linux
创新互联建站主营轮台网站建设的网络公司,主营网站建设方案,重庆App定制开发,轮台h5小程序开发搭建,轮台网站营销推广欢迎轮台等地区企业咨询
VPS主机商的时候会大概看看这款机器是否有人在使用而且大概的口碑和性价比如何,然后大概对比CPU核心、内存、硬盘以及流量在同等认识的商家中是否有一定的性价比优势。虽然经常告诉自己一分钱一分货,但是有些时候还是偏向于尽量希望马儿好也要马儿少吃草的产品。
大部分用户并不能做到各种VPS配置信息以及商家、线路的各种精通,就好比我们购买电脑一样,一些硬件配置我们可能只会知道大概,具体是否兼容以及是否适合我们,我们可能从基本的配置看不到,大部分还是直接用户的体验,尤其是VPS主机无论用来建站还是项目需要,他人使用过的测评信息并不能代表也适合我们,大概范围圈定之后的自我测试是必须的。
稍微深究一些关于Linux
VPS主机的配置信息,不能仅仅就看基本的内存、硬盘和流量,其实玩的深的网友甚至连带硬件信息都会去查看对比,这属于粉丝爱好者了,我们基本上只要玩个大概体验就可以了。在这篇文章中,老左也学着高端一点,把我看到的一些网友有用到查看VPS/服务器环境硬件信息命令记录下来,以后说不定在购买VPS、服务器的时候还可以装专业人士。
第一、CPU参数信息
cat /proc/cpuinfo
第二、Free命令查看内存
free -m
这里我们可以看到当前VPS主机512MB内存,附带64MB Swap存储。
第三、df命令查看硬盘
df -h
这个要对照我们购买VPS、服务器的时候商家给予的配置信息,有些朋友说购买的30GB,为什么看到的是10GB,还有20GB去哪里了呢?还有的是挂载盘需要我们单独挂载才可以出来,用fdisk -l就可以看到还有20GB没有挂载,在这台测试机中直接在一个盘里没有 挂载盘 。
第四、Inxi查看硬件信息
inxi -Fx
这个Inxi工具我也第一次用到过,看到介绍很强大,可以查看所有的服务器硬件信息,一般默认发行版本中是没有安装的,这里我在Debian环境中自己安装的。
安装Inxi For Debian/Ubuntu
echo 'deb trusty main' /etc/apt/sources.list.d/unit193-inxi.list
apt-get update
apt-get install inxi
这里在安装后才可以执行上面的命令。
基本的硬件信息都可以在返回结果中看到,以后有时间单独把inxi工具玩一遍。今天先 简单的知道有这个东西,因为我之前也没玩过这个。
第五、lshw
lshw -short
lshw也是一个通用工具,可以查看当前服务器CPU、内存、磁盘等详细信息。默认环境如果没有安装的话,我们可以通过执行命令安装。
apt-get install lshw lshw
第六、dmidecode
这个命令老左有在" 利用dmidecode命令查看Linux服务器硬件信息7个技巧 "文章中详细的记录了几个常用的脚本方法,也是用来查看硬件信息的。
比如主板、内存、内存条数量都可以通过命令看到。
第七、lscpu
lscpu
通过lscpu命令可以看到CPU和处理单元的信息。
总结,以上7个命令算是我们在购买和测评VPS、服务器信息的时候有可能用到的,对于一般用户跟老左一样看个大概就可以了,如果需要知道深入的细节还是需要详细一些对比的,还有lspci、hdparm两个也是有常用的。
1、首先是对于CPU的说明
服务器CPU性能参数主要信息可以通过查看 /proc/cpuinfo 获得。具体查看指令及效果如下:
显示这台服务器上有2个物理CPU
显示这台服务器的物理核数为16个
显示运行模式为64位
显示为Intel(R) Xeon(R) Gold 6226R CPU @ 2.90GHz
命令:
显示此服务器的线程数为64
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。下面详细介绍它的使用方法。top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,直到用户终止该程序为止.比较准确的说,top命令提供了实时的对系统处理器的状态监视.它将显示系统中CPU最“敏感”的任务列表.该命令可以按CPU使用.内存使用和执行时间对任务进行排序;而且该命令的很多特性都可以通过交互式命令或者在个人定制文件中进行设定.
1.命令格式:
top [参数]
2.命令功能:
显示当前系统正在执行的进程的相关信息,包括进程ID、内存占用率、CPU占用率等
3.命令参数:
-b 批处理
-c 显示完整的治命令
-I 忽略失效过程
-s 保密模式
-S 累积模式
-i时间 设置间隔时间
-u用户名 指定用户名
-p进程号 指定进程
-n次数 循环显示的次数
4.使用实例:
实例1:通过 Top 命令显示进程信息
命令:
统计信息区:
前五行是当前系统情况整体的统计信息区。下面我们看每一行信息的具体意义。
第一行,任务队列信息,同 uptime 命令的执行结果,具体参数说明情况如下:
10:38:58 — 当前系统时间
up 39 days, 19:47 — 系统已经运行了39天19小时47分钟(在这期间系统没有重启过的吆!)
1 users — 当前有1个用户登录系统
load average: 0.00, 0.00, 0.00 — load average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。
load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了。
第二行,Tasks — 任务(进程),具体信息说明如下:
系统现在共有769个进程,其中处于运行中的有1个,463个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。
第三行,cpu状态信息,具体属性说明如下:
0.0%us — 用户空间占用CPU的百分比。
0.0% sy — 内核空间占用CPU的百分比。
0.0% ni — 改变过优先级的进程占用CPU的百分比
100.0% id — 空闲CPU百分比
0.0% wa — IO等待占用CPU的百分比
0.0% hi — 硬中断(Hardware IRQ)占用CPU的百分比
0.0% si — 软中断(Software Interrupts)占用CPU的百分比
备注:在这里CPU的使用比率和windows概念不同,需要理解linux系统用户空间和内核空间的相关知识!
第四行,内存状态,具体信息如下:
65600012k total — 物理内存总量
1785256k used — 使用中的内存总量
62385920k free — 空闲内存总量
1428836k buffers — 缓存的内存量
第五行,swap交换分区信息,具体信息说明如下:
2097148k total — 交换区总量
918340k used — 使用的交换区总量
1178808k free — 空闲交换区总量
备注:
第四行中使用中的内存总量(used)指的是现在系统内核控制的内存数,空闲内存总量(free)是内核还未纳入其管控范围的数量。纳入内核管理的内存不见得都在使用中,还包括过去使用过的现在可以被重复利用的内存,内核并不把这些可被重新使用的内存交还到free中去,因此在linux上free内存会越来越少,但不用为此担心。
对于内存监控,在top里我们要时刻监控第五行swap交换分区的used,如果这个数值在不断的变化,说明内核在不断进行内存和swap的数据交换,这是真正的内存不够用了。
第六行,空行。
第七行以下:各进程(任务)的状态监控,项目列信息说明如下:
PID — 进程id
USER — 进程所有者
PR — 进程优先级
NI — nice值。负值表示高优先级,正值表示低优先级
VIRT — 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
RES — 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
SHR — 共享内存大小,单位kb
S — 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
%CPU — 上次更新到现在的CPU时间占用百分比
%MEM — 进程使用的物理内存百分比
TIME+ — 进程使用的CPU时间总计,单位1/100秒
COMMAND — 进程名称(命令名/命令行)
或者通过 free 命令显示系统内存的使用情况,包括物理内存、交换内存(swap)和内核缓冲区内存。
命令:
显示我当前的服务器的物理内存是62G,其中交换内存是2个G,一共剩余是60G的
三、查看Linux内核当前的系统版本号
命令:
显示的当前的服务器Linux内核是Ubuntu系统,版本号是18.04.6
大致结果类似下图:
Mem行(单位均为M):
(-/+ buffers/cache)行:
Swap行指交换分区。
实际上不要看free少就觉得内存不足了,buffers和cached都是可以在使用内存时拿来用的,应该以(-/+ buffers/cache)行的free和used来看。只要没发现swap的使用,就不用太担心,如果swap用了很多,那就要考虑增加物理内存了。
大致结果类似下图:
上方文字部分的红框为总的CPU占用百分率,下方的表格是每个进程的CPU占用率,在表格第一行可以看到红框中占用率超过了150%,这是因为服务器是多核CPU,而该进程使用了多核。
大致结果类似下图:
表格中会显示显卡的一些信息,第一行是版本信息,第二行是标题栏,第三行就是具体的显卡信息了,如果有多个显卡,会有多行,每一行的信息值对应标题栏对应位置的信息。
需要注意的一点是显存占用率和GPU占用率是两个不一样的东西,类似于内存和CPU,两个指标的占用率不一定是互相对应的。
在下面就是每个进程使用的GPU情况了。
大致结果如下图:
表格中每一行代表一个文件系统,各列意义如下:
要查看具体某个文件或者文件夹的大小的话,可以使用下面的命令:
du命令可以查看文件或文件夹的磁盘使用空间,而-h参数的意思是使用GB、MB等易读的格式。如果不带--max-depth参数,那么将循环列出文件夹下所有文件和文件夹占用的空间,带此参数,则是指定深入目录的层数。
如果要看文件夹下所有文件的大小,可以使用*:
查看作者首页
1、uptime命令
这个命令可以快速查看机器的负载情况。
2、dmesg命令
该命令会输出系统日志的最后10行。
3、vmstat命令
vmstat(8) 命令,每行会输出一些系统核心指标,这些指标可以让我们更详细的了解系统状态。
4、mpstat命令
该命令可以显示每个CPU的占用情况。
5、pidstat命令
pidstat命令输出进程的CPU占用率。
6、iostat命令
7、free命令
free命令可以查看系统内存的使用情况,
8、sar命令
sar命令在这里可以查看网络设备的吞吐率。
9、top命令
包含了前面好几个命令的检查的内容。
Linux下的Top命令是一个性能监控程序,许多系统管理员常常用它来监控Linux性能,在许多Linux或者类Unix操作系统里都有这个命令。Top命令用于按一定的顺序显示所有正在运行而且处于活动状态的实时进程,而且会定期更新显示结果。这条命令显示了CPU的使用率、内存使用率、交换内存使用大小、高速缓存使用大小、缓冲区使用大小,进程PID、所使用命令以及其他。它还可以显示正在运行进程的内存和CPU占用多的情况。对系统管理员来说,top命令式是一个非常有用的,它可用于监控系统并在需要的时候采取正确的处理动作。命令需求网页
禁止在线上服务器使用
实例:
uniq命令可以去除排序过的文件中的重复行,因此uniq经常和sort合用。也就是说,为了使uniq起作用,所有的重复行必须是相邻的。
在一个指定的时间执行一个指定任务,只能执行一次,且需要开启atd进程
crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程
将任务打入后台
示例:
vmstat是Linux中监控内存的常用工具,可对操作系统的虚拟内存、进程、CPU等的整体情况进行监视.
sar(System Activity Reporter系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用的使用情况、磁盘I/O、CPU效率、内存使用状况、进程活动及IPC有关的活动等
常用:
Ping命令通过发送Internet控制消息协议(ICMP)回响请求消息来验证与另一台TCP/IP计算机的IP级连接
ss与netstat命令作用相同,但比netstat更高效,采用的是tcp协议栈中tcp_diag.
使用方法参考netstat,且基本参数相同
traceroute追踪网络数据包的路由途径
nslookup命令用于查询DNS的记录,查看域名解析是否正常,在网络故障的时候用来诊断网络问题