问题:

1. 当使用一台linux机器的时候,常常需要确认当前所用操作系统的版本信息,内核信息等,

操作系统的版本信息可以通过以下命令完成,比如:lsb_release -a;cat /etc/issue

而查看内核版本可以通过以下命令完成,比如:uname -a;cat /proc/version,

这些命令比较难以记忆,本文试图解释一下这些命令名称的由来,以便于记忆。

解决办法:

1. 查看操作系统版本的命令

1.1 命令lsb_release -a

lsb_release提供特定的LSB (Linux Standard Base)和发布版本相关信息。

ubuntu中运行lsb_release -a的结果如下:

  1. david@david-nb:~$ lsb_release -a
  2. No LSB modules are available.
  3. Distributor ID: Ubuntu
  4. Description:    Ubuntu 11.10
  5. Release:    11.10
  6. Codename:   oneiric
  7. david@david-nb:~$

1.2 命令cat /etc/issue

/etc目录下放的是系统的配置文件。

/etc/issue文件通常包括系统的一段短说明或欢迎信息.内容由系统管理员确定。

ubuntu中执行cat /etc/issue命令的结果如下:

  1. david@david-nb:~$ cat /etc/issue
  2. Ubuntu 11.10 \n \l
  3. david@david-nb:~$

2. 查看内核版本的命令

2.1 命令uname -a

uname来源于utsname,是一个系统调用,格式为

int uret = uname((struct utsname)* uname_buf),

其中,结构体指针uname_buf中主要存放的是操作系统名称、内核版本和硬件体系结构;

结构体struct utsname的定义如下:

  1. struct utsname {
  2. char sysname[];    /* Operating system name (e.g., "Linux") */
  3. char nodename[];   /* Name within "some implementation-defined
  4. network" */
  5. char release[];    /* OS release (e.g., "2.6.28") */
  6. char version[];    /* OS version */
  7. char machine[];    /* Hardware identifier */
  8. #ifdef _GNU_SOURCE
  9. char domainname[]; /* NIS or YP domain name */
  10. #endif
  11. };

utsname中的UTS指的应该是Universal Time–sharing System(通用分时系统)。

ubuntu中运行uname -a的结果如下所示:

  1. david@david-nb:~$ uname -a
  2. Linux david-nb 3.0.0-32-generic #51-Ubuntu SMP Thu Mar 21 15:51:26 UTC 2013 i686 i686 i386 GNU/Linux
  3. david@david-nb:~$

内核版本为:3.0.0-32-generic

2.2 命令cat /proc/version

proc文件系统是一个虚拟文件系统,通过它可以使用一种新的方法在linux内核空间和用户空间进行通信。

与普通文件不同的是,这些虚拟文件都是动态创建的。

/proc非常强大,如下所示为对/proc中部分元素执行一次交互查询的结果:

  1. david@david-nb:~$ ls /proc
  2. 1     1279  1480  1512  1576  1646  1803  20    264   3081  565  902     buddyinfo    fb             loadavg       scsi           version_signature
  3. 1001  13    1485  1515  1580  1649  1807  2052  265   3082  6    903     bus          filesystems    locks         self           vmallocinfo
  4. 1005  1362  1487  1523  1584  1655  1815  2095  27    3084  7    904     cgroups      fs             mdstat        slabinfo       vmstat
  5. 1006  1370  1492  1526  1585  1656  1816  21    2744  3085  754  914     cmdline      interrupts     meminfo       softirqs       zoneinfo
  6. 1007  1390  1493  1527  1589  1666  1817  216   2796  318   806  915     consoles     iomem          misc          stat
  7. 1013  14    1496  1539  16    1671  1828  217   28    323   837  933     cpuinfo      ioports        modules       swaps
  8. 1030  1409  15    1542  1616  1673  183   23    2856  37    838  942     crypto       irq            mounts        sys
  9. 1073  1418  1501  1544  1617  1676  188   2391  2881  40    844  977     devices      kallsyms       mtd           sysrq-trigger
  10. 1079  1448  1503  1548  1619  17    19    24    29    41    847  982     device-tree  kcore          mtrr          sysvipc
  11. 1084  1453  1506  1555  1622  1711  190   2448  2998  453   848  991     diskstats    key-users      net           timer_list
  12. 11    1456  1508  1562  1623  1712  1957  25    3     455   882  992     dma          kmsg           pagetypeinfo  timer_stats
  13. 1168  1457  1509  1563  1625  1776  1992  2538  3017  528   885  994     dri          kpagecount     partitions    tty
  14. 1175  1459  1510  1566  1627  1790  1997  2548  3070  531   899  acpi    driver       kpageflags     sched_debug   uptime
  15. 12    1464  1511  1569  1633  18    2     26    3080  540   9    asound  execdomains  latency_stats  schedstat     version
  16. david@david-nb:~$

其中,version文件中存储的是内核的版本、操作系统的名称等信息,与uname -a的内容基本相同。

  1. david@david-nb:~$ cat /proc/version
  2. Linux version 3.0.0-32-generic (buildd@aatxe) (gcc version 4.6.1 (Ubuntu/Linaro 4.6.1-9ubuntu3) ) #51-Ubuntu SMP Thu Mar 21 15:51:26 UTC 2013
  3. david@david-nb:~$

内核版本为3.0.0-32-generic

linux信息查找的更多相关文章

  1. Linux文件查找.md

    Linux 文件查找 在Linux系统的查找相关的命令: which 查看可执行文件的位置 whereis 查看文件的位置 locate 配合数据库查看文件位置 find 实际搜寻硬盘查询文件名称 w ...

  2. Linux如何查找大文件或目录总结

    在Windows系统中,我们可以使用TreeSize工具查找一些大文件或文件夹,非常的方便高效,在Linux系统中,如何去搜索一些比较大的文件呢?下面我整理了一下在Linux系统中如何查找大文件或文件 ...

  3. Linux文件查找

    Linux下查找文件的命令有两个; locate: find : locate这个命令对其生成的数据库进行遍历(生成数据库的命令:updatedb),这一特性决定了查 找文件速度很快,但是locate ...

  4. linux下查找某个文件位置的方法

    一.通过文件名查找法: 举例说明,假设你忘记了httpd.conf这个文件在系统的哪个目录 下,甚至在系统的某个地方也不知道,则这是可以使用如下命令: find / -name httpd.conf ...

  5. linux下查找文件

    1,find 经常在linux下工作,总要查找一些文件,于是就搜索的学习了一下 find 指定目录 指定条件 指定动作 举例:find . -name "my*" 查找 当前目录下 ...

  6. linux中查找命令find、locate、whereis、which、type区别

    linux中查找命令find.locate.whereis.which.type区别 1. find Java代码 find是最常见和最强大的查找命令,你可以用它找到任何你想找的文件.与查询数据库(/ ...

  7. Linux如何查找大文件或目录总结及在全部目录中查找

    在Windows系统中,我们可以使用TreeSize工具查找一些大文件或文件夹,非常的方便高效,在Linux系统中,如何去搜索一些比较大的文件呢?下面我整理了一下在Linux系统中如何查找大文件或文件 ...

  8. linux下查找某个文件

    参考http://blog.csdn.net/gray13/article/details/6365654 一.通过文件名查找法: 举例说明,假设你忘记了httpd.conf这个文件在系统的哪个目录 ...

  9. Linux 文件查找

    在Linux系统的查找相关的命令: which 查看可执行文件的位置 whereis 查看文件的位置 locate 配合数据库查看文件位置 find 实际搜寻硬盘查询文件名称 whereis wher ...

随机推荐

  1. javascript判断NaN

    功能: isNaN() 函数用于检查其参数是否是非数字值. 语法: isNaN(x) x 必需.要检测的值. 返回值: 如果 x 是特殊的非数字值 NaN(或者能被转换为这样的值),返回的值就是 tr ...

  2. CodeForces 706B Interesting drink (二分查找)

    题意:给定 n 个数,然后有 m 个询问,每个询问一个数,问你小于等于这个数的数有多少个. 析:其实很简单么,先排序,然后十分查找,so easy. 代码如下: #pragma comment(lin ...

  3. Android子线程更新UI的方法总结

    版权声明:本文为博主原创文章,转载请注明出处:https://i.cnblogs.com/EditPosts.aspx?postid=6121280 消息机制,对于Android开发者来说,应该是非常 ...

  4. Ioc容器Autofac系列(2)-- asp.net mvc中整合autofac

    经过上篇蜻蜓点水的介绍后,本篇通过实例快速上手autofac,展示当asp.net mvc引入了autofac之后会带来什么. 创建Asp.net MVC并引入Autofac 首先,创建一个MVC站点 ...

  5. 线程暴长~Quartz中创建Redis频繁后导致线程暴长

    在最近项目开发过程中,在进行任务调度处理过程中,出现了一个问题,它的线程数暴长,从20多个可以到1000多个,如果你的服务器性能好的话,可以到10000多个,太恐怖了,就算你的服务再好,早晚有一天也会 ...

  6. ServletContext2

    ------------ContextServlet.java--------------节选-- protected void doGet(HttpServletRequest request, H ...

  7. MEF 编程指南(十二):批量组合

    MEF 容器实例并非不可变的.如果目录支持改变(像监控目录变动)或者在运行时添加/移除部件都可能发生改变.以前,你不得不做出改动并且调用 CompositionContainer 上的 Compose ...

  8. cocos2d-x 仿真树叶飘落效果的实现

    转自:http://blog.csdn.net/ufolr/article/details/7624851 最近项目中需要一个落叶的效果,本来想用粒子特效来实现,但是几经调试,虽然调出了落叶的效果,但 ...

  9. assert

    assert responseTP.length() > 0," TP response is empty, please check it "

  10. xcode7.3 iTunes Store operation failed问题

    升级了7.3,真心的不好用啊,bug一堆,写个代码,引入的类根本找不到,必须要command+b 重新编译一遍,现在连提交appstore都有问题. 果断用了 Application Loader上传 ...