跳到主要內容

附錄 - 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操作不求人 - 肆章之貳 - 伺服器架設(II) - 郵件伺服器 - postfix 與 dovecot

     CentOS6_x64 在預設狀態下,通常已經有開啟發 email 的伺服器軟體 postfix,但僅限制在本機(localhost / 127.0.0.1 ) 使用,且僅是讓系統可以傳送錯誤訊息給 root。故我們要經由設定,讓電腦主機內的使用者帳號,皆可以收發 email,而我們用的送信軟體為 postfix,負責 smtp 的部分( https://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol ) ,收信軟體則為 dovecot,負責 pop 或 imap ( https://en.wikipedia.org/wiki/Post_Office_Protocol,https://en.wikipedia.org/wiki/Internet_Message_Access_Protocol )的部分,收發信機制的運作機制,可參考wikipedia,https://en.wikipedia.org/wiki/Email,筆者不再贅述,直接說明架設伺服器軟體的操作。先利用 rpm -qa | grep postfix 與 rpm -qa | grep dovecot 來查詢是否已經有安裝,若無,則利用 yum install postfix 與 yum install dovecot 來安裝。除此之外,再利用 chkconfig | grep postfix 與  chkconfig | grep dovecot 來確認是否有在開機時啟動,若想自動化開機啟動,再請設定 c hkconfig --level 235 postfix on 與   chkconfig  --level 235 dovecot on  來載入。 如圖4-10與圖4-11: (圖4-10) (圖4-11)      接著我們利用 vim 來修改 postfix 設定檔  /etc/postfix/main.cf 。相同地,我們先閱讀設定檔內容前面的說明,postfix 的作者相當細心,每個設定前的說明很詳細,...

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。因為設定...