1.uname查看linux內(nèi)核版本 最常用 的命令,適用于CentOS,F(xiàn)edora,Debian,Ubuntu等各種linux發(fā)行版本。
創(chuàng)新互聯(lián)是一家專注于成都網(wǎng)站建設(shè)、成都網(wǎng)站制作與策劃設(shè)計(jì),黃山區(qū)網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十載,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:黃山區(qū)等地區(qū)。黃山區(qū)做網(wǎng)站價(jià)格咨詢:18982081108
這里我用的服務(wù)器是CentOS7版本
uname -a
列出系統(tǒng)所有信息
解釋如下
也可以只查詢某一項(xiàng)信息
a.顯示主機(jī)類型:
uname -m
b.顯示主機(jī)名
uname -n
c.顯示操作系統(tǒng)發(fā)行編號(hào):
uname -r
d.顯示操作系統(tǒng)名稱:
uname -s
e.顯示系統(tǒng)版本與時(shí)間:
uname -v
2.使用linux配置文件查看
a.查看內(nèi)核版本
cat /proc/version
相比較uname而言可以看到開(kāi)發(fā)者組織和gcc版本號(hào)
b.查看發(fā)行版本
cat /etc/redhat-release
3.Linux dmesg命令用于顯示開(kāi)機(jī)信息
kernel會(huì)將開(kāi)機(jī)信息存儲(chǔ)在ring buffer中。開(kāi)機(jī)信息亦保存在/var/log目錄中,名稱為dmesg的文件里。
查看linux內(nèi)核版本
dmesg | grep Linux
查看CPU信息可以使用lscpu命令
從命令的輸出結(jié)果可以看得出來(lái)CPU的型號(hào)是 Intel(R) Core(TM) i9-8950HK CPU @ 2.90GHz,CPU(s)是4表示同時(shí)可以執(zhí)行四個(gè)任務(wù)。
如果想要同時(shí)執(zhí)行更多的任務(wù),可以在VMware WorkStation中修改,修改完成以后會(huì)立即生效。
除了lscpu以外,還可以使用cat /proc/cpuinfo命令查看CPU信息,不過(guò)它是以每核分開(kāi)顯示的。
使用free或者是cat /proc/meminfo可以查看當(dāng)前系統(tǒng)的內(nèi)存信息,包括總內(nèi)存、已經(jīng)使用內(nèi)存以及可用內(nèi)存信息
Linux和Windows不同的是Linux的圖形界面只是它的一個(gè)程序,而不是必備組件。我們之前安裝CentOS8.4選擇的Server With GUI包含GNOME桌面的圖形環(huán)境,我們可以使用init 3命令關(guān)閉圖形,CentOS8會(huì)出現(xiàn)一個(gè)字符登錄界面。
然后再使用free -h觀察已經(jīng)使用的內(nèi)存只有334M,相比圖形界面的730M 減少了接近400M內(nèi)存,為了節(jié)省內(nèi)存,生產(chǎn)環(huán)境一般不會(huì)安裝和使用圖形界面。
想要再切回圖形界面使用init 5命令即可。
還可以使用runlevel命令查看當(dāng)前系統(tǒng)運(yùn)行的模式,其中輸出結(jié)果的3表示之前是字符界面,5表示當(dāng)前系統(tǒng)運(yùn)行的是圖形界面
使用lsblk命令可以查看磁盤信息,包括有幾塊磁盤以及每塊磁盤的分區(qū)、容量信息
通過(guò)命令的執(zhí)行結(jié)果可以得知目前CentOS8系統(tǒng)上有三塊磁盤,分別是sda,sdb,sdc,其中sdb和sdc沒(méi)有分區(qū),
而sda磁盤是在安裝系統(tǒng)時(shí)創(chuàng)建了四個(gè)分區(qū),具體信息如下表格所示
除此以外還可以使用 cat /proc/partitions命令查看磁盤信息,從命令的執(zhí)行結(jié)果可以看出容量還是以KB為單位。
通過(guò)arch命令可以查看當(dāng)前系統(tǒng)架構(gòu)為x86_64,這也是目前主流的系統(tǒng)架構(gòu)。
不同的Linux發(fā)行版使用的Linux內(nèi)核版本不同,通過(guò)uname -r可以查看Linux系統(tǒng)的內(nèi)核版本
通過(guò) cat /etc/os-release 命令或者是lsb_release -a命令可以查看操作系統(tǒng)的版本,后期在開(kāi)發(fā)程序時(shí)不同的操作系統(tǒng)版本需要做不同的處理。
查看Ubuntu Server的版本
查看CentOS8的版本
CentOS還可以使用 cat /etc/redhat-release版本
Linux中的時(shí)間有系統(tǒng)時(shí)間和硬件時(shí)間兩種
date和clock可以使用分號(hào)隔開(kāi)后同時(shí)執(zhí)行看系統(tǒng)時(shí)間和硬件時(shí)間
目前我的系統(tǒng)時(shí)間和硬件時(shí)間相差了18秒
如果硬件時(shí)間是準(zhǔn)確的,那么就通過(guò)命令clock -s以硬件時(shí)間為準(zhǔn),同步校正系統(tǒng)時(shí)間。
如果系統(tǒng)時(shí)間是準(zhǔn)確的,那么通過(guò)clock -w命令以系統(tǒng)時(shí)間為準(zhǔn),同步校正硬件時(shí)間
不同的國(guó)家在同一時(shí)刻所處的時(shí)間是不同的,因?yàn)闀r(shí)區(qū)不同。
例如中國(guó)就是東八區(qū),東八區(qū)和格林威治的時(shí)區(qū)相比相差8個(gè)小時(shí)(也就是比北京時(shí)間慢了8個(gè)小時(shí)),之前在安裝操作系統(tǒng)的時(shí)候設(shè)置的時(shí)區(qū)就是Asia/Shanghai,,通過(guò)timedatectl status查看當(dāng)前時(shí)間狀態(tài),其中 Universal time就是格林威治時(shí)間,而Local Time就是系統(tǒng)設(shè)置時(shí)區(qū)(Asia/Shanghai)的時(shí)間,它們兩者剛好相差了8個(gè)小時(shí)。 Time zone: Asia/Shanghai (CST, +0800) 表示當(dāng)前的時(shí)區(qū)是亞洲上海。
如果現(xiàn)在你去了法國(guó)巴黎,可以通過(guò)timectl set-timezone 設(shè)置時(shí)區(qū)為歐洲巴黎,當(dāng)修改時(shí)區(qū)后使用date命令查看系統(tǒng)時(shí)間顯示的就是當(dāng)前法國(guó)的巴黎時(shí)間,相比北京時(shí)間慢了6個(gè)小時(shí)。
修改時(shí)區(qū)最終影響的是 /etc/localtime文件
不過(guò)目前我在中國(guó),因此還是改回亞洲上海
timedatectl list-timezones可以查看所有時(shí)區(qū)
cal命令可以查看當(dāng)前月份的日歷,例如今天是2021年10月5號(hào)
查看指定月份的日歷
還可以查看指定年份的日歷
生產(chǎn)環(huán)境不能隨便關(guān)機(jī)和重啟!!! 因?yàn)榉?wù)器基本都是 7*24 對(duì)外提供服務(wù)
測(cè)試環(huán)境或者是本地虛擬機(jī)安裝的Linux服務(wù)器可以按需求關(guān)機(jī)或者重啟
關(guān)機(jī)可以使用halt或者poweroff命令
而shutdown可以實(shí)現(xiàn)關(guān)機(jī)或者重啟,shutdown -r表示重啟,即reboot,shutdown -h表示關(guān)機(jī),即halt。 -c表示取消關(guān)機(jī)或重啟。
除此以外shutdown 還可以指定時(shí)間來(lái)關(guān)機(jī)或重啟,默認(rèn)是1分鐘后執(zhí)行。
關(guān)機(jī)和重啟命令的常見(jiàn)用法
Linux下有nano和vim等文本編輯器,目前我們先使用nano來(lái)編輯文本。
如果系統(tǒng)上沒(méi)有安裝nano文本編輯器,那么在使用之前首先需要使用yum install -y nano命令來(lái)安裝nano文本編輯器
在使用nano進(jìn)行文本編輯時(shí),nano后面跟文件路徑即可打開(kāi)文件,然后可以直接修改文件,類似于windows的記事本,修改完成后然后按Ctrl+x退出,接著按y保存修改,回車后退出nano。
然后使用nano /etc/motd來(lái)修改該文件,motd文件是用戶登錄之后提示的內(nèi)容
然后輸入Welcome to my class
之后按Ctrl+x退出nano編輯器,按y保存到文件匯中,然后按回車鍵確認(rèn)修改。
再重新登錄CentOS8.4
登錄成功之后就會(huì)看到/etc/motd文件內(nèi)容顯示在終端上
我這里準(zhǔn)備了一個(gè)motd文件,首先使用MobaXterm終端上傳到/etc目錄下覆蓋現(xiàn)有的motd文件,在使用MobaXterm終端登錄CentOS8.4-1后,首先將SSH Broswer的路徑切換到/etc目錄下
然后點(diǎn)擊上傳文件的按鈕
選擇提前準(zhǔn)備好的motd文件上傳到/etc目錄下
然后再次重新登錄系統(tǒng)就會(huì)看到一個(gè)大佛
大家可以自行訪問(wèn) 在線生成ASCII(圖)藝術(shù)字,然后將內(nèi)容復(fù)制到motd文件即可。
當(dāng)我們登錄Linux打開(kāi)一個(gè)終端窗口,然后輸入命令,用戶與計(jì)算機(jī)的這種臨時(shí)交互被稱為一次會(huì)話(Session)、會(huì)話的一個(gè)重要的特點(diǎn)就是窗口與其中啟動(dòng)的進(jìn)程是連接在一起的,打開(kāi)窗口則會(huì)話開(kāi)始,關(guān)閉窗口則會(huì)話結(jié)束,而且會(huì)話內(nèi)部的進(jìn)程也會(huì)隨之而終止,不管有沒(méi)有運(yùn)行完成。
這里舉一個(gè)例子,我們首先使用XShell遠(yuǎn)程登錄CentOS8.4-1,然后使用ping 10.0.0.103命令檢測(cè)是否能夠連接10.0.0.103,也就是Ubuntu Server 20.04.3-1那臺(tái)機(jī)器
命令執(zhí)行的結(jié)果顯示能夠連接,而且只要你不關(guān)閉窗口會(huì)一直顯示收到數(shù)據(jù)以及耗時(shí)。
然后我們復(fù)制一個(gè)會(huì)話
然后使用ps aux|grep ping 查看ping的進(jìn)程信息,因?yàn)闆](méi)有關(guān)閉會(huì)話窗口所以進(jìn)程還在
當(dāng)我們關(guān)閉之前開(kāi)啟的會(huì)話窗口之后
再次使用ps aux|grep ping查看進(jìn)程會(huì)發(fā)現(xiàn)ping進(jìn)程不存在了
為了解決上述的問(wèn)題,我們就可以將會(huì)話與窗口解綁,也就是窗口關(guān)閉時(shí)會(huì)話并不會(huì)終止,而是繼續(xù)運(yùn)行,等到以后需要的時(shí)候,再讓會(huì)話綁定其他窗口。
而終端復(fù)用器程序(例如screen,tmux)就是將會(huì)話與窗口的解綁工具,將它們徹底分離。
首次運(yùn)行screen時(shí)會(huì)發(fā)現(xiàn)Shell提示command not found
我們需要使用yum install -y screen 來(lái)安裝screen,但是執(zhí)行之后發(fā)現(xiàn)提示錯(cuò)誤:: Unable to find a match: screen
Centos8安裝screen需要使用epel來(lái)安裝,安裝epel后,再安裝screen,解決centos8無(wú)法安裝screen的問(wèn)題
然后再執(zhí)行yum install -y screen 便可安裝成功
Screen安裝成功
在安裝完screen后就可以使用了,首先在終端輸入screen,然后你就會(huì)看到屏幕好像是刷新了一下,本質(zhì)就是一個(gè)會(huì)話
然后再次運(yùn)行ping 10.0.0.103
由于開(kāi)啟了screen,即使關(guān)閉了所有的會(huì)話窗口,你會(huì)發(fā)現(xiàn)使用ps aux |grep ping 命令查看ping命令的進(jìn)程也還在。
如果后期在做運(yùn)維工作,有些命令很耗時(shí)又怕誤操作關(guān)閉會(huì)話導(dǎo)致命令的進(jìn)程關(guān)閉就可以使用screen。
screen除了創(chuàng)建會(huì)話,能讓命令關(guān)閉窗口后繼續(xù)在后臺(tái)執(zhí)行的功能以外,還能夠?qū)崿F(xiàn)遠(yuǎn)程桌面共享,從而實(shí)現(xiàn)遠(yuǎn)程協(xié)助的功能。
實(shí)現(xiàn)該功能必須滿足兩個(gè)條件,兩個(gè)用戶必須使用同一個(gè)賬號(hào)登錄同一臺(tái)機(jī)器。
例如這里小紅和小明同時(shí)使用root賬號(hào)登錄了CentOS8.4,其中左邊的窗口是小紅,右邊的窗口是小明
然后小紅使用screen -S help開(kāi)啟一個(gè)遠(yuǎn)程會(huì)話,會(huì)話的名稱叫help
然后小明使用screen -x help加入小紅開(kāi)啟的會(huì)話
此時(shí)小明可以看到小紅窗口的內(nèi)容
當(dāng)小明解決小紅的問(wèn)題后,可以使用ctrl a,d退出當(dāng)前會(huì)話
如果小明不知道小紅的會(huì)話名稱,可以使用screen -ls獲取當(dāng)前會(huì)話
echo就是用于輸出信息
echo輸出固定字符串
echo輸出變量值
echo輸出轉(zhuǎn)義字符
echo 默認(rèn)可以實(shí)現(xiàn)換行
echo輸出信息還可以帶顏色
echo還可以清除屏幕,等價(jià)于clear命令或者是快捷鍵Ctrl+l
一、查看Linux內(nèi)核版本命令(兩種方法):
1、cat /proc/version
[root@localhost ~]# cat /proc/version
Linux version 2.6.18-194.8.1.el5.centos.plus (mockbuild@builder17.centos.org) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-48)) #1 SMP Wed Jul 7 11:50:45 EDT 2010
2、uname -a
[root@localhost ~]# uname -a
Linux localhost.localdomain 2.6.18-194.8.1.el5.centos.plus #1 SMP Wed Jul 7 11:50:45 EDT 2010 i686 i686 i386 GNU/Linux
二、查看Linux系統(tǒng)版本的命令(3種方法):
1、lsb_release -a,即可列出所有版本信息:
[root@localhost ~]# lsb_release -a
LSB Version: :core-3.1-ia32:core-3.1-noarch:graphics-3.1-ia32:graphics-3.1-noarch
Distributor ID: CentOS
Description: CentOS release 5.5 (Final)
Release: 5.5
Codename: Final
這個(gè)命令適用于所有的Linux發(fā)行版,包括Redhat、SuSE、Debian…等發(fā)行版。
modprobe命令\x0d\x0aLinux命令:modprobe 。\x0d\x0a功能說(shuō)明:自動(dòng)處理可載入模塊。\x0d\x0a語(yǔ)法:modprobe [-acdlrtvV][--help][模塊文件][符號(hào)名稱 = 符號(hào)值]。\x0d\x0a補(bǔ)充說(shuō)明:modprobe可載入指定的個(gè)別模塊,或是載入一組相依的模塊。modprobe會(huì)根據(jù)depmod所產(chǎn)生的相依關(guān)系,決定要載入哪些模塊。若在載入過(guò)程中發(fā)生錯(cuò)誤,在modprobe會(huì)卸載整組的模塊。\x0d\x0a\x0d\x0a內(nèi)容\x0d\x0a1、modprobe 命令是根據(jù)depmod -a的輸出/lib/modules/version/modules.dep來(lái)加載全部的所需要模塊。\x0d\x0a2、刪除模塊的命令是:modprobe -r filename。\x0d\x0a3、系統(tǒng)啟動(dòng)后,正常工作的模塊都在/proc/modules文件中列出。使用lsmod命令也可顯示相同內(nèi)容。\x0d\x0a4、在內(nèi)核中有一個(gè)“Automatic kernel module loading"功能被編譯到了內(nèi)核中。當(dāng)用戶嘗試打開(kāi)某類型的文件時(shí),內(nèi)核會(huì)根據(jù)需要嘗試加載相應(yīng)的模塊。/etc/modules.conf或 /etc/modprobe.conf文件是一個(gè)自動(dòng)處理內(nèi)核模塊的控制文件。\x0d\x0amodprobe命令主要用于在Linux 2.6內(nèi)核中加載和刪除Linux內(nèi)核模塊。通過(guò)此命令用戶可以輕松地加載和刪除Linux內(nèi)核模塊,同時(shí)使用此命令加載Linux內(nèi)核模塊時(shí),Linux內(nèi)核會(huì)自動(dòng)解決內(nèi)核模塊之間的依賴關(guān)系,將相互依賴的模塊自動(dòng)加載,如下所示:\x0d\x0a1) 加載RAID1陣列級(jí)別模塊:\x0d\x0a[root@rhel5 boot]# modprobe raid1 \x0d\x0a\x0d\x0a2) 顯示已加載的RAID1陣列級(jí)別模塊:\x0d\x0a[root@rhel5 boot]# lsmod |grep raid1 raid1 25153 0 \x0d\x0a\x0d\x0a3) 刪除RAID1陣列級(jí)別模塊:\x0d\x0a[root@rhel5 boot]# modprobe -r raid1 \x0d\x0a\x0d\x0a4) 顯示RAID1陣列級(jí)別模塊:\x0d\x0a[root@rhel5 boot]# lsmod |grep raid1 \x0d\x0a\x0d\x0amodprobe命令在加載模塊時(shí)會(huì)自動(dòng)解決依賴的模塊。當(dāng)加載的模塊需依賴另一個(gè)模塊時(shí),系統(tǒng)會(huì)自動(dòng)將此模塊加載。而當(dāng)用戶使用insmod命令加載模塊時(shí),則不會(huì)自動(dòng)解決相對(duì)應(yīng)的依賴模塊。\x0d\x0amodprobe命令中的"-r"參數(shù)表示刪除指定模塊,"-c"參數(shù)表示顯示/etc/modprobe.conf配置文件的參數(shù),"-C"參數(shù)表示指定內(nèi)核配置文件,"-f"表示覆蓋,"-l"表示顯示模塊的絕對(duì)路徑。\x0d\x0a[root@rhel5 boot]# modprobe -l|grep raid /lib/modules/2.6.18-8.el5/kernel/drivers/md/raid0.ko /lib/modules/2.6.18-8.el5/kernel/drivers/md/raid456.ko /lib/modules/2.6.18-8.el5/kernel/drivers/md/raid1.ko /lib/modules/2.6.18-8.el5/kernel/drivers/md/raid10.ko /lib/modules/2.6.18-8.el5/kernel/drivers/scsi/megaraid.ko /lib/modules/2.6.18-8.el5/kernel/drivers/scsi/aacraid/aacraid.ko /lib/modules/2.6.18-8.el5/kernel/drivers/scsi/megaraid/megaraid_mbox.ko /lib/modules/2.6.18-8.el5/kernel/drivers/scsi/megaraid/megaraid_mm.ko /lib/modules/2.6.18-8.el5/kernel/drivers/scsi/megaraid/megaraid_sas.ko /lib/modules/2.6.18-8.el5/kernel/drivers/scsi/raid_class.ko \x0d\x0a\x0d\x0a以上命令表示顯示系統(tǒng)中所有的編譯模塊,并過(guò)濾包含有raid字符串的模塊。