1.uname查看linux內(nèi)核版本 最常用 的命令,適用于CentOS,F(xiàn)edora,Debian,Ubuntu等各種linux發(fā)行版本。
成都創(chuàng)新互聯(lián)是一家專注網(wǎng)站建設(shè)、網(wǎng)絡(luò)營銷策劃、微信小程序開發(fā)、電子商務(wù)建設(shè)、網(wǎng)絡(luò)推廣、移動互聯(lián)開發(fā)、研究、服務(wù)為一體的技術(shù)型公司。公司成立十載以來,已經(jīng)為近千家輕質(zhì)隔墻板各業(yè)的企業(yè)公司提供互聯(lián)網(wǎng)服務(wù)?,F(xiàn)在,服務(wù)的近千家客戶與我們一路同行,見證我們的成長;未來,我們一起分享成功的喜悅。
這里我用的服務(wù)器是CentOS7版本
uname -a
列出系統(tǒng)所有信息
解釋如下
也可以只查詢某一項信息
a.顯示主機類型:
uname -m
b.顯示主機名
uname -n
c.顯示操作系統(tǒng)發(fā)行編號:
uname -r
d.顯示操作系統(tǒng)名稱:
uname -s
e.顯示系統(tǒng)版本與時間:
uname -v
2.使用linux配置文件查看
a.查看內(nèi)核版本
cat /proc/version
相比較uname而言可以看到開發(fā)者組織和gcc版本號
b.查看發(fā)行版本
cat /etc/redhat-release
3.Linux dmesg命令用于顯示開機信息
kernel會將開機信息存儲在ring buffer中。開機信息亦保存在/var/log目錄中,名稱為dmesg的文件里。
查看linux內(nèi)核版本
dmesg | grep Linux
有以下兩者查看命令:
1、# cat /proc/version (Linux查看當(dāng)前操作系統(tǒng)版本信息)
Linux version 2.4.20-8 (bhcompile@porky.devel.redhat點抗 )
(gcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5)) #1 Thu Mar 13 17:54:28 EST 2003
2、# cat /etc/issue? 或cat /etc/redhat-release(Linux查看版本當(dāng)前操作系統(tǒng)發(fā)行版信息)
Red Hat Linux release 9 (Shrike)
擴展資料:
Linux來歷:
Linux是一個誕生于網(wǎng)絡(luò)、成長于網(wǎng)絡(luò)且成熟于網(wǎng)絡(luò)的奇特的操作系統(tǒng)。1991年,芬蘭大學(xué)生Linus Torvalds萌發(fā)了開發(fā)一個自由的UNIX操作系統(tǒng)的想法,當(dāng)年,Linux就誕生了,為了不讓這個羽毛未豐的操作系統(tǒng)夭折,Linus將自已的作品Linux通過Internet發(fā)布。
從此一大批知名的、不知名的電腦黑客、編程人員加入到開發(fā)過程中來,Linux逐漸成長起來。
Linux一開始是要求所有的源碼必須公開,并且任何人均不得從Linux交易中獲利。然而這種純粹的自由軟件的理想對于Linux的普及和發(fā)展是不利的,于是Linux開始轉(zhuǎn)向GPL,成為GNU陣營中的主要一員。
Linux憑借優(yōu)秀的設(shè)計,不凡的性能,加上IBM、INTEL、CA、CORE、ORACLE等國際知名企業(yè)的大力支持,市場份額逐步擴大,逐漸成為主流操作系統(tǒng)之一。
如何查詢Linux內(nèi)核版本
終端下輸入
[xxxx@ ~]uname -r
3.5.0-34-generic
查看內(nèi)核版本命令:
1) [root@q1test01 ~]# cat /proc/version
Linux version 2.6.9-22.EL *** p (bhpile@crowe.devel.redhat.) (g version 3.4.4 20050721 (Red Hat 3.4.4-2)) #1 SMP Mon Sep 19 18:00:54 EDT 2005
2) [root@q1test01 ~]# uname -a
Linux
q1test01 2.6.9-22.EL *** p #1 SMP Mon Sep 19 18:00:54 EDT 2005 x86_64
x86_64 x86_64 GNU/Linux3) [root@q1test01 ~]# uname -r2.6.9-22.EL *** p
如何查詢Linux內(nèi)核函數(shù)
如果要看這兩個函數(shù)在標(biāo)準(zhǔn)庫中的定義用ctags或cscope生成索引.h,cscope,可以跳轉(zhuǎn)到函數(shù)定義,man malloc,聲明見stdlib。
如果仍然找不到,可以用ctags,si或grep。
windows下用source insight也可,然后查找函數(shù)定義,用grep -r 搜索關(guān)鍵字,atoi和malloc在C的標(biāo)準(zhǔn)庫中有定義。
1.安裝ctags
在源代碼目錄下運行
ctags -R
這樣,會遞歸生成當(dāng)前目錄下及其子目錄的tags文件。
2.使用VIM根據(jù)tags文件查找函數(shù)或結(jié)構(gòu)定義。
1.在源碼目錄下查找
vi -t tagname
2.如果要在任意位置使用,則需要把該tags文件添加到~/.vimrc文件中
set tags=/home/money/sda8/2.6232/tags
3.如果要在代碼中實時跟蹤,則光標(biāo)移動到函數(shù)名上,使用CTRL+]鍵,按CTRL+t可以返回。
如果要跟蹤系統(tǒng)函數(shù),使用shift+K可以自動跳轉(zhuǎn)道光標(biāo)所在函數(shù)的手冊。
如何分析LINUX內(nèi)核2.6.29版本
uname -a 顯示版本號,是這意思嗎?
這個問題太大了,近似于說:請教下我怎么編寫一個Linux內(nèi)核。
分析內(nèi)核唯一可以做的就是一行行看代碼,Linux早期版本有完整的代碼分析,如果是指定2.6.29的話,那估計有人做出來就可以出書收錢了……
如何根據(jù)linux內(nèi)核判斷l(xiāng)inux版本
在Linux內(nèi)核的頂層Makefile中,頂端就有,格式為
VERSION = 3
PATCHLEVEL = 0
SUBLEVEL = 8
EXTRAVERSION =
NAME = Sneaky Weasel
以上的版本號就是3.08
如何修改linux內(nèi)核版本號
得重新編譯內(nèi)核,之前修改源代碼的頂層目錄下的Makefile文件,比如2.6.29.1內(nèi)核的Makefile中:
VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 29
EXTRAVERSION = .1
在Qt C/C++中怎樣查詢Linux內(nèi)核版本號
查詢Linux內(nèi)核版本號可以調(diào)用uname函數(shù),uname函數(shù)的函數(shù)原型是這樣的:
int uname(struct utsname *name);
uname函數(shù)在調(diào)用時需要向它傳遞一個utsname結(jié)構(gòu)體指針(或地址),uname函數(shù)會寫入name參數(shù)指向的utsname結(jié)構(gòu)體,Linux的內(nèi)核版本號就保存在utsname結(jié)構(gòu)體的release成員里面,代碼就像下面這樣:
struct utsname uts;
if(uname(uts) = 0) {
printf("The version is %s\n", uts.release);
}
注意,使用uname函數(shù)需要包含sys/utsname.h頭文件:
#include sys/utsname.h