有時,我們需要查看某個文件的增長速度,如日志文件,以此來感受系統(tǒng)的負載情況,因為一般情況下,日志寫入越快,說明系統(tǒng)負載越重。
創(chuàng)新互聯(lián)公司專注于網(wǎng)站建設,為客戶提供成都網(wǎng)站設計、成都網(wǎng)站建設、網(wǎng)頁設計開發(fā)服務,多年建網(wǎng)站服務經驗,各類網(wǎng)站都可以開發(fā),品牌網(wǎng)站設計,公司官網(wǎng),公司展示網(wǎng)站,網(wǎng)站設計,建網(wǎng)站費用,建網(wǎng)站多少錢,價格優(yōu)惠,收費合理。
本文就來介紹下Linux中查看日志增長速度的幾種方法,如下:
首先要介紹的是dd,因為dd命令幾乎所有主流發(fā)行版都自帶,無需額外安裝,如下:
如上,使用 tail -F 獲取新寫入的數(shù)據(jù),然后用管道將數(shù)據(jù)交給dd,dd將數(shù)據(jù)拷貝到 /dev/null ,其中 status=progress 是用來顯示拷貝速度的,可見,我們日志的寫入速度是 471 kB/s 。
pv命令可以看做是帶進度的cp,如下:
原理與dd類似,不過命令換成了pv。
由于日志數(shù)據(jù)都是程序(如java)寫入的,而在如下的偽文件中,存放著程序打開的文件信息,如下:
于是定期的讀取這個offset就可以知道文件的寫入速度了,這也是cv命令的實現(xiàn)原理,如下:
通過寫一個小腳本,定期觀察文件大小,也可查看文件寫入速度,如下:
通過watch再加上觀察,也能大致看出速度,如下:
其實轉念一想,如果我們在某個函數(shù)中打上日志,然后通過grep過濾出此日志,然后我們只要計算每秒輸出的日志行數(shù),這豈不就是函數(shù)執(zhí)行的QPS了!
這里可以通過 151/15 計算出QPS是10,由于沒有超過1000,所以看到的是0.0kB/s,如果使用pv命令,會更簡單一些,如下:
LVM ( Logical Volume Manager ) 架構采用分層結構,可以讓分區(qū)變得彈性,可以隨時隨地的擴大和縮小分區(qū)大小。
磁盤分區(qū)后使用 pvcreate 命令可以將分區(qū)創(chuàng)建為物理卷 PV。
將多個 PV 組合起來,使用 vgcreate 命令創(chuàng)建成卷組 VG。
VG 相當于整合過的硬盤,LV 則相當于分區(qū),使用 lvcreate 創(chuàng)建 lV。
如何創(chuàng)建 PV、VG、LV 及掛載目錄 ?
Linux和Windows都采用了MBR的磁盤管理方法,也就是先對一個硬盤進行分區(qū),在對這個一般光盤進行格式化的方法;他們的區(qū)別是: Linux系統(tǒng),是先進行磁盤分區(qū),如果需要使用該分區(qū),將其掛載到對應目錄即可;而Windows則是自動將所有分區(qū)掛載好 傳統(tǒng)的磁盤管理的缺點:不方便進行分區(qū)擴充、容易導致文件系統(tǒng)崩潰、不適用于作為生產環(huán)境的服務器、拷貝分區(qū)的時候要求強制卸載磁盤分區(qū),分區(qū)轉移時耗費的時間長;
LVM磁盤管理技術 是Linux環(huán)境下對磁盤管理的一種技術,是通過一個建立在硬盤和分區(qū)之上的邏輯層來提高磁盤分區(qū)的靈活性
物理卷(PV):就是真正的物理硬盤或物理分區(qū)
卷組(VG):是將多個物理硬盤整合到一起形成的邏輯卷組;也可以視作一塊邏輯硬盤
邏輯卷(LV):卷組是一塊邏輯硬盤,邏輯硬盤必須分區(qū)之后才能使用;邏輯卷可以視作是卷組的邏輯分區(qū)
物理擴展(PE):物理擴展是用來保存數(shù)據(jù)的最小單元
系統(tǒng)首先把物理硬盤合并為卷組;再通過卷組分區(qū);將卷組(邏輯硬盤)分成邏輯分區(qū)(邏輯卷)進行使用;
把物理硬盤分成分區(qū),也可以使用一整塊的物理硬盤;把物理硬盤分區(qū)建立為物理卷(PV)也可以把整塊物理硬盤都建立為物理卷;把剛剛劃分的物理卷合為卷組(VG)卷組就已經可以動態(tài)的調整大小了,最后把卷組劃分成邏輯卷,其中邏輯卷也是可以隨時劃分大小的
pvcreate命令在系統(tǒng)中一般用于創(chuàng)建物理卷;
語法結構
在使用這個命令的時候不要對存放Linux系統(tǒng)的盤符進行進行使用;我們在創(chuàng)建物理卷的時候都是對邏輯分區(qū)進行創(chuàng)建的;擴展分區(qū)(Extend)不能進行創(chuàng)建物理卷
pvdisplay 命令用于查看當前的分區(qū)情況
語法格式以及常用參數(shù):
查看我們剛剛創(chuàng)建的物理卷
pvremove命令常用于刪除對應的物理卷
語法結構:
刪除我們剛剛創(chuàng)建的物理卷
vgcreate 命令的作用是將一個或多個物理卷整合成一個卷組;在創(chuàng)建卷組之前我們需要保證系統(tǒng)中有足夠的除系統(tǒng)存放卷本身的物理卷(使用pvscan查看)需要注意的是,存放Linux的系統(tǒng)物理卷不能被劃分到自定義卷組中、 常用參數(shù):-s:設定PE(最小物理存儲單元)的大小、-l:最大邏輯卷數(shù)量、-p:允許存在的最大物理卷數(shù)量
語法結構:
將我們剛剛創(chuàng)建物理卷添加到卷組之中
vgdisplay 這個命令可以用來查看我們創(chuàng)建的卷組; 常見的參數(shù) -s 卷組信息以短格式輸出 ;vgdisplay可以查看對應卷組的簡短信息,所以相對于pvdisplay用處又大了那么一點
語法格式:
查看剛剛創(chuàng)建的卷組和某一個卷組的信息
同樣:vgscan 命令也可以查看當前卷組使用情況的簡短信息
vgremove 命令的作用是刪除指定的卷組
語法結構:
刪除我們剛剛創(chuàng)建的卷組
注意:當刪除含有邏輯卷的卷組的時候系統(tǒng)會提示是否刪除對應卷組和對應邏輯卷,只有在兩個都輸入:y之后系統(tǒng)才會刪除對應的卷組
lvcreate 命令作用是在一個指定的卷組中創(chuàng)建一塊邏輯卷,前提是要求有指定的卷組; 常用參數(shù):-L:規(guī)定創(chuàng)建的邏輯卷大?。ㄖ苯訉懘笮【涂梢裕?、-l:通過PE劃分邏輯卷的大?。ê竺娼拥臄?shù)字是PE的個數(shù))
語法結構:
在指定的卷組里創(chuàng)建邏輯卷
lvdisplay 命令可用于查看邏輯卷的詳細信息,也可以用來查看指定邏輯卷的詳細信息 參數(shù):-m:查看對應邏輯卷的掛載信息
語法結構:
檢查指定的邏輯卷,并查看指定邏輯卷的掛載信息:
管理邏輯卷大小的常用命令是lvextend 命令和 lvreduce 命令分別表示邏輯卷大小的擴充和減少, 其中l(wèi)vextend命令表示邏輯卷大小擴充,常用參數(shù) -L(指的是擴充的具體大?。?l(指的是擴充的LE塊數(shù)量);lvextend命令表示邏輯卷大小的減小,常用參數(shù)-L(指的是減小的具體大?。?l(指的是減小的LE塊數(shù)量)
語法結構:
對我們指定的兩個邏輯卷分別進行容量的增加和減少,并掛載對應的邏輯卷