Linux查看系统信息命令

来源:互联网 发布:分析淘宝网的特点 编辑:程序博客网 时间:2024/06/06 02:24

1.查看内存使用情况

使用命令:free

[app@root ~]$ free             total       used       free     shared    buffers     cachedMem:       8062340    7734868     327472       4480     227936    6066292-/+ buffers/cache:    1440640    6621700Swap:      8208380          0    8208380

如果看到的数字太大(按kb显示),可以添加参数-m,贼会按mb显示数值

[app@root ~]$ free -m             total       used       free     shared  buffers     cachedMem:          7873       7553        319          4        222       5924-/+ buffers/cache:       1406       6466Swap:         8015          0       8015

同理可以添加-g参数,结果显示gb数值

[app@root ~]$ free -g             total       used       free     shared    buffers     cachedMem:             7          7          0          0          0          5-/+ buffers/cache:          1          6Swap:            7          0          7

这里出现了一些名词,有些是我不知道的,我专门去查了一下它们所代表的含义。
total:表示物理内存总量,
used:表示已经使用的内存大小,
free:表示空闲的内存空间大小,也就是没有被分配的内存空间
shared:表示共享内存
buffers:系统分配但未被使用的buffers 数量
cached:表示cache的大小
同样是做为缓存,buffers和cache又有啥区别呢?
  于是又查了些资料,发现buffers实际应该是叫“缓冲”,其英文解释是:A buffer is something that has yet to be “written” to disk.
  就是说,buffers是将要写入硬盘中的数据缓存。
  而cache的英文解释:A cache is something that has been “read” from the disk and stored for later use.
  就是说,cache是从硬盘或者存储设备读进计算机后缓存在内存中的数据。
  想起看《计算机组成原理》的时候,有看到因特尔的cpu与内存之间有cache,这之间好像有什么区别的样子。
  继续查资料,发现了page cache 和 buffer cache。简单说来,page cache用来缓存文件数据,buffer cache用来缓存磁盘数据。在有文件系统的情况下,对文件操作,那么数据会缓存到page cache,如果直接采用dd等工具对磁盘进行读写,那么数据会缓存到buffer cache。
  对于cache和buffer,cached是cpu与内存间的,buffer是内存与磁盘间的,都是为了解决速度不对等的问题。
  在free中,buffer 是buffer cache的内存,是块设备的读写缓冲区;cache是page cache的内存, 文件系统的cache。
  关于buffer与chche,这里就不多说了,最后的链接5里讲得挺清楚了。
  这里还有一个名词,Swap,即虚拟内存。当物理内存不够用的时候,就要释放掉一部分空间,以供当前运行程序使用。这些被释放掉的内存的数据就被临时保存在虚拟内存中。但是,并非所有的数据都全被保存,只有那些使用malloc或new生成的对象,他们在文件中并没有相应的“储备”文件,被称为匿名内存数据,需要临时地存进Swap。故Swap又称匿名数据交换空间

参考:Linux下查看内存的使用情况

2.查看磁盘使用情况

df:列出文件系统的整体磁盘使用量;

du:评估文件系统的磁盘使用量(常用于评估目录所占容量)

[root@root app]# df -hFilesystem            Size  Used Avail Use% Mounted on/dev/mapper/vg_root-lv_root                       50G  4.3G   43G  10% /tmpfs                 3.9G  228K  3.9G   1% /dev/shm/dev/sda1             477M   34M  419M   8% /boot/dev/mapper/vg_root-lv_home                      927G   47G  833G   6% /home

df参数:
-a:列出所有的文件系统,包括系统特有的/proc等文件系统
-k:以KB的容量显示各文件系统
-m:以MB的容量显示各文件系统
-h:以人们较易阅读的GB,MB,KB等格式自行显示
-H:以M=1000K替代M=1024K的进位方式
-T:连同该分区的文件系统名称(例如ext3)也列出
-i:不用硬盘容量,而以inode的数量来显示

3.在Linux下查看操作系统和物理机CPU信息

[root@root app]# uname -a     // 查看系统信息Linux root 2.6.32-504.el6.x86_64 #1 SMP Wed Oct 15 04:27:16 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux[root@root app]# cat /etc/issue  // 查看操作系统版本CentOS release 6.6 (Final)Kernel \r on an \m[root@root app]# cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l //物理机的cpu个数2 [root@root app]# cat /proc/cpuinfo| grep "cpu cores"| uniq //查看CPU的核数cpu cores       : 2[root@root app]# cat /proc/cpuinfo| grep "processor"| wc -l //查看逻辑CPU的个数4[root@root app]# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c //查看CPU型号4  Intel(R) Xeon(R) CPU E7- 4807  @ 1.87GHz

4.查看当前目录下文件的修改时间

使用三个命令:

ls -lc 列出所有文件的 ctime (最后更改时间)ls -lu 列出所有文件的 atime(最后存取时间)ls -l 列出所有文件的 mtime (最后修改时间)

使用示例:

dev09@dev80:~/soft/apache-ant-1.8.2$ ls -l总用量 360drwxrwxr-x 2 dev09 dev09   4096 Jun 24  2013 bindrwxrwxr-x 9 dev09 dev09   4096 Jun 24  2013 docsdrwxrwxr-x 3 dev09 dev09   4096 Jun 24  2013 etc-rw-rw-r-- 1 dev09 dev09  11597 Mar  8  2013 fetch.xml-rw-rw-r-- 1 dev09 dev09   4445 Mar  8  2013 get-m2.xml-rw-rw-r-- 1 dev09 dev09    128 Mar  8  2013 INSTALL

在这里会显示总用量,以及每个文件或者文件夹的信息。
这里的-rw-rw-r–我开始不知道代表什么,特意去搜了一下,-rw-rw-r– 1表示的是权限,这里总共是10个字符,分别代表的含义如下:
- 10个字符确定不同用户能对文件干什么
- 第一个字符代表文件(-)、目录(d),链接(l)
- 其余字符每3个一组(rwx),读(r)、写(w)、执行(x)
- 第一组rwx:文件所有者的权限是读、写和执行
- 第二组rw-:与文件所有者同一组的用户的权限是读、写但不能执行
- 第三组r–:不与文件所有者同组的其他用户的权限是读不能写和执行
信息参考:地址

dev09表示的是创建和修改的用户名,接着是大小,后面是时间,最后是文件名。
如果想看具体的文件名或者文件夹的修改时间怎么办?可以在后面添加文件名参数,比如:

dev09@dev80:~/soft/apache-ant-1.8.2$ ls -l fetch.xml -rw-rw-r-- 1 dev09 dev09 11597 Mar  8  2013 fetch.xml

这里显示的是fetch.xml文件的最后修改时间。
另外,如果要查看当前文件夹的所有文件及其信息,可以使用ll命令,这是在JDK目录下运行ll的结果:

dev09@dev80:~/jdk/jdk1.7.0_25$ ll总用量 19732drwxr-xr-x 8 dev09 dev09     4096 Jun  6  2013 ./drwxrwxr-x 4 dev09 dev09     4096 Jun 19 20:20 ../drwxr-xr-x 2 dev09 dev09     4096 Jun  6  2013 bin/-r--r--r-- 1 dev09 dev09     3339 Jun  6  2013 COPYRIGHTdrwxr-xr-x 4 dev09 dev09     4096 Jun  6  2013 db/drwxr-xr-x 3 dev09 dev09     4096 Jun  6  2013 include/drwxr-xr-x 5 dev09 dev09     4096 Jun  6  2013 jre/drwxr-xr-x 3 dev09 dev09     4096 Jun  6  2013 lib/-r--r--r-- 1 dev09 dev09       40 Jun  6  2013 LICENSEdrwxr-xr-x 4 dev09 dev09     4096 Jun  6  2013 man/-r--r--r-- 1 dev09 dev09      114 Jun  6  2013 README.html-rw-r--r-- 1 dev09 dev09      444 Jun  6  2013 release-rw-r--r-- 1 dev09 dev09 19852231 Jun  6  2013 src.zip-rw-r--r-- 1 dev09 dev09   123324 Jun  6  2013 THIRDPARTYLICENSEREADME-JAVAFX.txt-r--r--r-- 1 dev09 dev09   172252 Jun  6  2013 THIRDPARTYLICENSEREADME.txt

那ls和ll有什么区别呢。那就是ll的信息会更详细一些,而ls知识列出一个列表,ll能列出权限相关的内容,就和ls -l的功能有些相似了。

原创粉丝点击