对于生物信息工作者而言,Linux系统服务器最熟悉不过,那么如何通过简单的命令对Linux服务器进行最快的了解。

【存储空间】df-h

df命令作用是列出文件系统的整体磁盘空间使用情况。可以用来查看磁盘已被使用多少空间和还剩余多少空间。

而df-h则是以人们易读的方式展示

教你快速了解一台Linux系统服务器的方法教你快速了解一台Linux系统服务器的方法

[root localhost home]#df-h

Filesystem Size Used Avail Use%Mounted on

/dev/mapper/cl-root 50G 36G 15G 71%/

/dev/sda1 1014M 227M 788M 23%/boot

/dev/mapper/cl-home 1.8T 450G 1.4T 25%/home

Filesystem:代表该文件系统时哪个分区,所以列出的是设备名称。

Mounted on:磁盘挂载的目录,即该磁盘挂载到了哪个目录下面。

【内存】free-h

free命令可以显示Linux系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer。

一般用free-h方式查看内存占用情况(同样是适于人类阅读)

[root localhost home]#free-h

total used free shared buffers cached

Mem:126G 124G 2.0G 1.6M 626M 118G

-/+buffers/cache:4.5G 121G

Swap:15G 40M 15G

注解:-buffers/cache反映的是被程序实实在在吃掉的内存(本例中,-buffers/cache的内存数是4.5G,即等于Mem行的used-buffers-cached),而+buffers/cache反映的是可以挪用的内存总数(本例中,+buffers/cache的内存数是121G,即等于Mem行的free+buffers+cached)。

Swap行数据是交换分区SWAP的,也就是我们通常所说的虚拟内存。当你看见buffer/cache的空闲空间低或者swap的空闲空间低,说明内存需要升级了。这意味这内存利用率很高。请注意shared(共享)内存列应该被忽略,因为它已经被废弃了。

以上关于free-h的注解,部分参考自https://www.cnblogs.com/kex1n/p/6010496.html。

关于buffers和cache的解释,来自知乎https://www.zhihu.com/question/26190832的解释,比较容易懂。

Buffer的核心作用是用来缓冲,缓和冲击。比如你每秒要写100次硬盘,对系统冲击很大,浪费了大量时间在忙着处理开始写和结束写这两件事嘛。用个buffer暂存起来,变成每10秒写一次硬盘,对系统的冲击就很小,写入效率高了。Cache的核心作用是加快取用的速度。比如你一个很复杂的计算做完了,下次还要用结果,就把结果放手边一个好拿的地方存着,下次不用再算了。加快了数据取用的速度。所以,如果你注意关心过存储系统的话,你会发现硬盘的读写缓冲/缓存名称是不一样的,叫write-buffer和read-cache。很明显地说出了两者的区别。

【CPU】cat/proc/cpuinfo

利用cat查看服务器cpu info

[root localhost home]#cat/proc/cpuinfo|grep”processor”|wc-l

32

[root localhost home]#cat/proc/cpuinfo|grep”physical id”|sort|uniq|wc-l

4

[root localhost home]#cat/proc/cpuinfo|grep”cpu cores”|uniq

cpu cores:8

注解:以上三个命令从上自下分别代表①总逻辑CPU数:32;②物理CPU个数:4,这边如果是2就代表着是两路服务器,4则是四路服务器;③每颗物理CPU的核数:8。总逻辑CPU数=物理CPU个数×每颗物理CPU的核数。如果存在超线程技术,那么可以让单核模拟多核心工作,单核心具有两个线程。那么,总逻辑CPU数=物理CPU个数×每颗物理CPU的核数×超线程数。

【内核|操作系统】

查看内核版本cat/proc/version|uname-a

查看操作系统lsb_release-a|cat/etc/redhat-release|cat/etc/issue

[root tc6000 EVM_combine]#cat/proc/version

Linux version 2.6.32-642.el6.x86_64(mockbuild worker1.bsys.centos.org)(gcc version 4.4.7 20120313(Red Hat 4.4.7-17)(GCC))#1 SMP Tue May 10 17:27:01 UTC 2016

[root tc6000 EVM_combine]#uname-a

Linux tc6000 2.6.32-642.el6.x86_64#1 SMP Tue May 10 17:27:01 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

#cat/proc/version和uname-a均可以查看到内核版本为2.6.32-642.el6.x86_64

#2.6.32代表版本号-642代表版本号

#el6代表发行版版本标识,RHEL6CentOS6Oracle Linux6一般都是el6

#x86_64代表64位系统一般i386代表是32位

[root tc6000 EVM_combine]#lsb_release-a

LSB Version::base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch

Distributor ID:CentOS

Description:CentOS release 6.8(Final)

Release:6.8

Codename:Final

[root tc6000 EVM_combine]#cat/etc/redhat-release

CentOS release 6.8(Final)

[root tc6000 EVM_combine]#cat/etc/issue

CentOS release 6.8(Final)

Kernel

on an m

#lsb_release-a cat/etc/redhat-release cat/etc/issue三个命令都得到操作系统是CentOS,但这三个命令并不适用每台linux机器