跳到主要內容

附錄 - LPIC參考資料 - Linux Quick Reference Guide - 6th ed. - Daniele Raffo - LVM/LVM commands

     以下翻譯整理 Daniele Raffo 的 Linux Quick Reference Guide,期望對考LPIC level 1 跟 LPIC level 2 的讀者有幫助。該文翻譯已取得Daniele Raffo同意。專有名詞盡量使用國家教育研究院,雙語詞彙網對照http://terms.naer.edu.tw/detail/461156/

#LVM / LVM commands
 邏輯卷冊管理(Logical Volume Management, 以下簡稱LVM)源於一抽象功能,主要讓實體儲存與邏輯儲存之間,可以隨心所欲變更分區的檔案系統,LVM使用Linux裝置映射之特性(/dev/mapper)。

實體卷冊,包含磁碟機、分區與磁碟陣列皆可以被納入卷冊組(Volume Group)。一個卷冊組,可被分成固定量的小塊,稱之為實體延伸區(Physical Extents),且一對一的對應到該邏輯範圍。邏輯範圍可組成邏輯卷冊(Logical Volume),讓Linux檔案系統建立在其上。 

如何建立邏輯磁碟容量
1. 在機器上建立新實體或虛擬磁碟(以下爲指令,#後方爲說明)

2. lsblk                                    
#確認已辨認之磁碟,如 /dev/sda

3. fdisk /dev/sda                      
#產生新分區(區形態爲0x8E = Linux LVM)
此步驟非必要做,怕其他作業系統無法辨認LVM而將LVM分區視為無分區的空磁碟。

4. pvcreate /dev/sda1                          
#初始化實體卷冊來讓LVM使用

5. vgcreate -s 8M myvg0 /dev/sda1 
#建立卷冊組,並定義物理延伸區大小爲8Mb(預設爲4Mb)

or vgextend myvg0 /dev/sda1
#加入一個可辨認的的實體卷冊到已存在的卷冊組

6. lvcreate -L 1024M -n mylv myvg0
#建立邏輯卷冊

7. mkfs -t ext3 /dev/myvg0/mylv
#在邏輯卷冊上建立檔案系統並格式化

8. mount /dev/myvg0/mylv /mnt/mystuff
#掛載邏輯卷冊至 /mnt/mystuff 以準備使用

如何增加邏輯卷冊容量(需要底層檔案系統允許)
1. 增加一個新的實體或虛擬磁碟到機器內,以提供更多的磁碟使用空間

2. fdisk /dev/sdc
#分區新磁碟

3. pvcreate /dev/sdc
# 初始化實體卷冊

4. vgextend myvg0 /dev/sdc
# 加入一個實體卷冊到已存在的卷冊組

5. lvextend -L 2048M /dev/myvg0/mylv
# 延伸邏輯卷冊大小到2GB
or 
   lvresize -L+2048M /dev/myvg0/mylv   
or
   lvresize -L+100%FREE /dev/myvg/mylv
# 或延伸邏輯卷冊大小到全部的閒置空間

6. resize2fs /dev/myvg0/mylv
# 延伸原有的檔案系統

如何減少邏輯卷冊容量(需要底層檔案系統允許)
1. resize2fs /dev/myvg0/mylv 900M
#縮小檔案系統大小至900Mb

2. lvreduce -L 900M /dev/myvg0/mylv
or
   lvresize -L 900M /dev/myvg0/mylv
#縮小邏輯卷冊至900Mb


如何快照與備份邏輯卷冊(需要底層檔案系統允許)
1. lvcreate -s -L 1024M -n snapshot0 /dev/myvg0/mylv
# 建立一如邏輯卷冊的快照

2. tar cvzf snapshot0.tar.gz snapshot0 
# 找您最熟悉的備份工具來備份

3. lvremove /dev/mvvg0/snapshot0
# 刪除快照

 #LVM commands

 PV commands 
pvs                回報實體卷冊資訊
pvscan          掃描使用實體卷冊之所有磁碟
pvdisplay      顯示實體卷冊屬性
pvck              檢查實體卷冊之元數據(metadata)
pvcreate       使用一個磁碟或分區來初始化LVM
pvchange     改變實體卷冊屬性
pvremove     刪除一個實體卷冊
pvresize        在LVM下改變磁碟或分區大小
pvmove         移動在物理卷冊內的邏輯延伸區到卷冊組內之空物理延伸區,再讓
                       原物理卷冊離線。

 VG commands
vgs               回報卷冊組資訊
vgscan         掃描使用卷冊組之所有磁碟
vgdisplay     顯示卷冊組屬性
vgck             檢查卷冊組元數據
vgcreate      使用已有的實體卷冊來建立卷冊組
vgchange     改變卷冊組屬性
vgremove     移除卷冊組
vgextend      增加一個實體卷冊至卷冊組
vgreduce      從卷冊組移除一個實體卷冊


 LV commands 
lvs                     回報邏輯卷冊資訊
lvscan              掃描使用邏輯卷冊的所有磁碟
lvdisplay          顯示邏輯卷冊
lvcreate           在卷冊組內建立邏輯卷冊
lvchange         改變邏輯卷冊屬性
lvremove         移除邏輯卷冊
lvextend          增大邏輯卷冊空間
lvreduce          減少邏輯卷冊空間
lvresize            調整邏輯卷冊空間

 LVM global commands
lvmdiskscan      掃描系統內可以使用LVM的磁碟與分區
dmsetup command    使用低階LVM操作

/dev/mapper/vgname-lvname  邏輯卷冊在檔案系統的映射檔路徑
/dev/vgname/lvname




留言

這個網誌中的熱門文章

Linux 操作不求人系列 - 貳章之貳 - Shell Script 程式設計(II) - BASH 與 TCSH / CSH

     在上章,我們介紹很多bash shell指令的應用方式,並讓它們變成 script,在這章此節,我們要承襲上節,繼續討論 bash shell script 的其它程式設計概念,與讓程式可重複使用的方法,就是利用函式(function)。      首先,我們來創作一個判斷是否為閏年的函數,script的名稱就取為 check_year.sh ,請自行將其設為可執行。程式碼如圖2-6,為了解說方便,筆者利用指令 nl check_year.sh 將程式碼包含行數印出(圖2-7),其他除顏色外,都與圖2-6同。以下 export 宣告環境變數,自訂變數無需加宣告保留字。(2021.10.07更正export說明,以下自訂變數宣告請直接去除export開頭) (圖2-6) (圖2-7)        圖2-7第2-6行,與之前的範例相似,皆有防堵參數個數輸入錯誤的判斷。第7-11行為接著判斷輸入的年分,是否為真的正整數,也就是大於零的數字。其中第7行可解釋為,利用正規表示式搜尋 $2 字串值得頭至尾部的字元,皆由 0-9 組成,若有,則為真(True)會進入 if 內的陳述執行, 但我們想要的,應該是僅要字串其中一字元為非正整數,便進入if 內的警告並跳出 。故,筆者在判斷式前多加一個 ! ,代表著當字元完全是正整數時,就不要執行  if  內陳述,而直接往第12行執行,但若其中有一個字元為非正整數,則會進入 if 內印出錯誤訊息並跳出 Script 。在此例使用者輸入非正整數等字串(如:12ab、cde、1a1b),便會出現錯誤訊息"Error Value",並跳出 Script 。而第8行的判斷式,效果跟第7行相同,但只能在BASH 3.0才能支援,故筆者故意保留,讓讀者可以學到另一種表示方式。         第12-28行,為宣告一個函式 leapyr () ,在 BASH Script內若要使用含式,必須在使用之前先建立函式的功能,如函式建立在第12-28行,則若要呼叫使用(Call)函式,則必須在第29行之後才能呼叫,並且可重複呼叫。第13行...

Linux操作不求人- 肆章之壹 - 伺服器架設(I) - SSH(SFTP、SCP)、FTP伺服器與遠端連線

@ ssh, sftp      通常安裝好 CentOS6_x64 作業系統後,sshd, ssh daemon 的服務功能是預設開啟的,如筆者的前面篇章所述,預設的 iptables 防火牆設定,亦是開啟讓 ssh 的連線是可通過的,不僅可以連出,也可以被連入。若要確認是否有安裝 sshd 套件以及在啟動時的 runlevel 2 3 5 是否有被載入,可以使用以下指令搜尋: $   rpm  -qa  |   grep  openssh     #  ssh 與 sshd 連線服務皆由 openssh 應用軟體提供。 或使用以下 $   rpm  -qa  |   grep  ssh         #  比用關鍵字 openssh 搜尋更模糊,故符合的條件更多。      如圖4-1可以查詢到有關於 openssh-client 與 openssh-server 的套件, openssh-server 便是提供連入服務的軟體,openssh-client 為提供可以連出的工具。若無以上套件,則使用 yum install openssh ,則可下載安裝。 (圖4-1) 再接著輸入以下指令查詢到 sshd 這個服務,是否有再開機程序內載入,如圖4-2 $ chkconfig | grep ssh   # 查詢 sshd 是否有於 開機 runlevel 啟動 再利用以下指令,來查詢是否防火牆有允許連線 $ iptables  -L  |  grep ssh   # 出現如圖4-2 允許通過之條件 (圖4-2)      接下來,我們要先來調整 sshd 的設定檔,利用 vim  /etc/sshd/sshd_conf ,如圖4-3-1與4-3-2。因為設定...

Linux 操作不求人系列 - 參章之貳 - 系統管理(II) - 新增網路卡與顯示卡

#新增網路卡  @ Driving Ethernet Network Card     現代人若一刻沒網路使用,可能會有焦慮並開始失去人生方向的感覺,故筆者先來說明如何讓CenOS6_x64可以使用網路。開始之前,我們先假設網路為固定式網路,非家用利用PPPoE(https://en.wikipedia.org/wiki/Point-to-point_protocol_over_Ethernet)的ADSL撥接方式,故只要我們 確認網路卡驅動正常 、 設定網路上網參數(如DHCP(https://en.wikipedia.org/wiki/Dynamic_Host_Configuration_Protocol),或是須設定 IP、Netmask、Gateway、DNS ) ,皆符合網路提供者的規定,通常這樣就可以連上網際網路,且網卡為 Intel系列(GT、MT、PT、iXXX等...)的網卡,在驅動程式更是省事,在CentOS6_x64下,通常皆可直接使用驅動成功,但系統預設是不啟動網路。在配合 GNOME 搭配的 NetworkManager 軟體,直接點選Gnome桌面右上 NetworkManager 圖示內的 Connect ( 因筆者的網路已經連線了,故僅顯示Disconnect )即可上網(圖3-14上),若要使用命令列,啟動第一塊網卡路之網路功能,可以輸入指令 ifup eth0 ,若要暫停網路功能,請輸入指令 ifdown eth0 ,其中 eth 為乙太網路硬體代號, 0 為安裝的網路卡硬體裝置順序,如多張網卡,為 eth0、eth1、eth2...  之排序,若想知道網卡對應的排序,可利用指令 dmesg | grep 'eth' ,如圖3-14下,因筆者只有一張虛擬出來的網路卡,故僅為 eth0 。 (圖3-14)       因筆者在 VirtualBox 虛擬裝置執行,故其網路卡裝置已經被虛擬成 Intel PRO MT(圖3-15),所以直接利用DHCP方式即上網,但筆者接著還是要介紹無法順利驅動的網路卡,要如何來驅動,如常見在 PC 主機板上的,RealTek RTL8111B 乙太網路...