Linux中存储相关的命令,Linux存储管理命令与HAB相关命令
首先了解Linux中的設(shè)備命名規(guī)則:在安裝和使用Linux的過(guò)程中,您必然會(huì)接觸到不少像hda1、ttyS0、eth0這樣的設(shè)備名稱。在Linux中,每個(gè)設(shè)備必須在它的驅(qū)動(dòng)程序控制下運(yùn)行,驅(qū)動(dòng)程序則與/dev目錄下的特殊文件聯(lián)系在一起,盡管這些文件并不是真正的文件,但在選擇設(shè)備或者操作設(shè)備時(shí)都以這個(gè)文件的名稱來(lái)代表這一設(shè)備。這些設(shè)備名稱的命名都是有規(guī)則的:? 在/dev目錄下,每一個(gè)驅(qū)動(dòng)器以一個(gè)單獨(dú)的設(shè)備文件來(lái)表現(xiàn)。
通常最常見(jiàn)的是硬盤,對(duì)于IDE硬盤一般可以有二到四個(gè)。這就是/dev/hda、/dev/hdb、/dev/hdc和/dev/hdd,hd是硬盤的意思,a則是代表第一個(gè)設(shè)備,hda1中的“1”代表hda的第一個(gè)硬盤分區(qū),依此類推。而SCSI硬盤也就是/dev/sda、/dev/sdb等等,sd是SCSI設(shè)備的意思,第一個(gè)SCSI硬盤是/dev/sda, fd是軟盤,設(shè)備名稱是/dev/fd0。Linux 計(jì)算機(jī)中磁帶機(jī)的設(shè)備名是: /dev/st*和/dev/nst*, 其中nst*是操作完成后不自動(dòng)回卷磁帶, st*則是自動(dòng) 回卷, 一般常用nst*. 主機(jī)SCSI總線上找到的第一個(gè)磁帶機(jī)是nst0和st0, 第二個(gè)則是nst1和st1, 依此類推. 磁帶機(jī)的SCSI號(hào)越小, 其設(shè)備名也就越靠前。
1. lsmod
lsmod命令用來(lái)列出當(dāng)前系統(tǒng)加載的模塊,可以當(dāng)作硬件模塊瀏覽器。 使用權(quán)限: 格式:lsmod [-hV]?? 主要選項(xiàng): -h :顯示幫助信息。 -V:顯示軟件版本信息。 應(yīng)用說(shuō)明:使用lsmod命令必須安裝Linux安裝盤中的modutils 軟件包。我們看一個(gè)lsmod命令實(shí)例,如圖1。
2. uname
uname 命令用來(lái)顯示輸出系統(tǒng)信息。 使用權(quán)限:超級(jí)用戶。 格式:uname [選項(xiàng)] 主要選項(xiàng):?? -a, --all :顯示所有的信息。? -m, --machine :顯示硬件類型 。 -n, --nodename :顯示機(jī)器的網(wǎng)絡(luò)節(jié)點(diǎn)主機(jī)名。? -r, --release :顯示操作系統(tǒng)發(fā)行版本。? -s, --sysname :顯示操作系統(tǒng)名。? -p, --processor :顯示主機(jī)處理器(CPU)類型。? -v :顯示操作系統(tǒng)版本。? --help :顯示本幫助并退出。? --version: 顯示版本信息并退出。??? 應(yīng)用實(shí)例: #uname �a Linux cao 2.4.20-8#1Thu Mar 13 17:54:28 EST 2003 i686 i686 i386 GNU/Linux
3 .lspci
lspci命令用來(lái)查看主板所有硬件槽信息。 使用權(quán)限:所有用戶。 格式:lspci [] -v:顯示詳細(xì)信息。 -n:顯示設(shè)備ID號(hào)。 -b:顯示PCI、ISA擴(kuò)展槽地址和中斷。 -t:顯示總線樹(shù)結(jié)構(gòu)。 -F :從指定文件讀信息。 -m:輸出所有硬件信息。 應(yīng)用實(shí)例: 當(dāng)系統(tǒng)硬件出現(xiàn)故障時(shí),可以使用lspci命令輸出所有硬件信息。以幫助確定故障點(diǎn)。
4. sync
sync命令用來(lái)將內(nèi)存緩沖區(qū)內(nèi)的數(shù)據(jù)寫入磁盤。
使用權(quán)限:所有用戶。
格式:
sync
應(yīng)用說(shuō)明:在Linux系統(tǒng)中,當(dāng)數(shù)據(jù)需要存入磁盤時(shí),通常會(huì)先放到緩沖區(qū)內(nèi),等到適當(dāng)?shù)臅r(shí)刻再寫入磁盤,如此可提高系統(tǒng)的執(zhí)行效率。
5. e2label
e2label命令用來(lái)設(shè)定或顯示ext2或ext3分區(qū)的卷標(biāo)。
使用權(quán)限:超級(jí)用戶。
格式:
e2label device [ new-label ]
主要選項(xiàng):
device:分區(qū)設(shè)備名稱。
new-label:新設(shè)定的卷標(biāo)名稱。不能超過(guò)16字符。
應(yīng)用實(shí)例:為一個(gè)新創(chuàng)建的分區(qū)建立卷標(biāo)名稱:1111,使用命令:
#e2label /deva9 1111
6. findfs
findfs命令用來(lái)查找指定卷標(biāo)的文件系統(tǒng)。
使用權(quán)限:超級(jí)用戶。
格式:
findfs LABEL=
findfs UUID=
主要選項(xiàng):
LABEL= :卷標(biāo)名稱。
UUID=:分區(qū)的UUID號(hào)。
應(yīng)用說(shuō)明:隨著Linux系統(tǒng)中硬盤容量和數(shù)目的增加,Linux系統(tǒng)中分區(qū)數(shù)量也越來(lái)越多,使用findfs命令可以通過(guò)卷標(biāo)名稱或UUID號(hào)快速定位分區(qū)位置。
應(yīng)用實(shí)例:
查找卷標(biāo)名稱是:ar/ftp的分區(qū)位置,使用命令:
#findfs LABEL=ar/ftp
/deva9
7. badblock
badblock 命令用來(lái)檢查磁盤中損壞的區(qū)塊。
使用權(quán)限:超級(jí)用戶。
格式:
badblocks [-b block_size] [-i input_file] [-o output_file] [-svw]
[-c blocks_at_once] [-p num_passes] device [last_block [start_count]
主要選項(xiàng):
-b block_size:指定磁盤的區(qū)塊大小,單位為字節(jié)。
-i input_file:讀出上次的檢查的結(jié)果中的壞塊列表。
-o output_file:將檢查的結(jié)果寫入指定的輸出文件。
-s: ? 在檢查時(shí)顯示進(jìn)度。
-v: ?執(zhí)行時(shí)顯示詳細(xì)的信息。
-w: ?在檢查時(shí),執(zhí)行寫入測(cè)試。
-c blocks_at_once:每個(gè)區(qū)塊檢查次數(shù)。確省值16次。
-p num_passes:通過(guò)的數(shù)量。確省值0。
start_count:指定要從哪個(gè)區(qū)塊開(kāi)始檢查。
last_block:指定結(jié)束檢查的區(qū)塊。
device:指定要檢查的磁盤裝置。
應(yīng)用實(shí)例:
#badblocks -b 4096 /deva1 -o badblocks-list
以4096的一個(gè)block,每一個(gè)block檢查16次,將結(jié)果輸入badblocks-list,badblocks-list是一個(gè)文本文件。如果硬盤正常的話,應(yīng)該badblocks-list是沒(méi)有任何內(nèi)容的。
8.iostat
以前一直不太會(huì)用這個(gè)參數(shù).現(xiàn)在認(rèn)真研究了一下iostat,因?yàn)閯偤糜信_(tái)重要的服務(wù)器壓力高,所以放上來(lái)分析一下.下面這臺(tái)就是IO有壓力過(guò)大的服務(wù)器
$iostat -x 1
Linux 2.6.33-fukai (fukai-laptop) ? ? ? ? ?_i686_ ? ?(2 CPU)
avg-cpu: ?%user ? %nice %system %iowait ?%steal ? %idle
5.47 ? ?0.50 ? ?8.96 ? 48.26 ? ?0.00 ? 36.82
Device: ? ? ? ? rrqm/s ? wrqm/s ? ? r/s ? ? w/s ? rsec/s ? wsec/s avgrq-sz avgqu-sz ? await ?svctm ?%util
sda ? ? ? ? ? ? ? 6.00 ? 273.00 ? 99.00 ? ?7.00 ?2240.00 ?2240.00 ? ?42.26 ? ? 1.12 ? 10.57 ? 7.96 ?84.40
sdb ? ? ? ? ? ? ? 0.00 ? ? 4.00 ? ?0.00 ?350.00 ? ? 0.00 ?2068.00 ? ? 5.91 ? ? 0.55 ? ?1.58 ? 0.54 ?18.80
rrqm/s: ?每秒進(jìn)行 merge 的讀操作數(shù)目.即 delta(rmerge)/s
wrqm/s: ?每秒進(jìn)行 merge 的寫操作數(shù)目.即 delta(wmerge)/s
r/s: ? ? ? ? ?每秒完成的讀 I/O 設(shè)備次數(shù).即 delta(rio)/s
w/s: ? ? ? ?每秒完成的寫 I/O 設(shè)備次數(shù).即 delta(wio)/s
rsec/s: ? 每秒讀扇區(qū)數(shù).即 delta(rsect)/s
wsec/s: 每秒寫扇區(qū)數(shù).即 delta(wsect)/s
rkB/s: ? ? 每秒讀K字節(jié)數(shù).是 rsect/s 的一半,因?yàn)槊可葏^(qū)大小為512字節(jié).(需要計(jì)算)
wkB/s: ? ?每秒寫K字節(jié)數(shù).是 wsect/s 的一半.(需要計(jì)算)
avgrq-sz: 平均每次設(shè)備I/O操作的數(shù)據(jù)大小 (扇區(qū)).delta(rsect+wsect)/delta(rio+wio)
avgqu-sz: 平均I/O隊(duì)列長(zhǎng)度.即 delta(aveq)/s/1000 (因?yàn)閍veq的單位為毫秒).
await: ? 平均每次設(shè)備I/O操作的等待時(shí)間 (毫秒).即 delta(ruse+wuse)/delta(rio+wio)
svctm: ?平均每次設(shè)備I/O操作的服務(wù)時(shí)間 (毫秒).即 delta(use)/delta(rio+wio)
%util: ? ? 一秒中有百分之多少的時(shí)間用于 I/O 操作,或者說(shuō)一秒中有多少時(shí)間 I/O 隊(duì)列是非空的.即 delta(use)/s/1000 (因?yàn)閡se的單位為毫秒)
如果 %util 接近 100%,說(shuō)明產(chǎn)生的I/O請(qǐng)求太多,I/O系統(tǒng)已經(jīng)滿負(fù)荷,該磁盤
可能存在瓶頸.
idle小于70% IO壓力就較大了,一般讀取速度有較多的wait.
同時(shí)可以結(jié)合vmstat 查看查看b參數(shù)(等待資源的進(jìn)程數(shù))和wa參數(shù)(IO等待所占用的CPU時(shí)間的百分比,高過(guò)30%時(shí)IO壓力高)
另外 await 的參數(shù)也要多和 svctm 來(lái)參考.差的過(guò)高就一定有 IO 的問(wèn)題.
avgqu-sz 也是個(gè)做 IO 調(diào)優(yōu)時(shí)需要注意的地方,這個(gè)就是直接每次操作的數(shù)據(jù)的大小,如果次數(shù)多,但數(shù)據(jù)拿的小的話,其實(shí) IO 也會(huì)很小.如果數(shù)據(jù)拿的大,才IO 的數(shù)據(jù)會(huì)高.也可以通過(guò) avgqu-sz × ( r/s or w/s ) = rsec/s or wsec/s.也就是講,讀定速度是這個(gè)來(lái)決定的.
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的Linux中存储相关的命令,Linux存储管理命令与HAB相关命令的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: php重定义地址栏url,thinkph
- 下一篇: linux ns级定时器_linux用户