首頁 > 軟體

RHCSA 系列(六): 使用 Parted 和 SSM 來設定和加密系統儲存

2020-06-16 17:52:47

在本篇文章中,我們將討論在 RHEL 7 中如何使用傳統的工具來設定和設定本地系統儲存,並介紹系統儲存管理器(也稱為 SSM),它將極大地簡化上面的任務。

RHCSA: 設定和加密系統儲存 – Part 6

請注意,我們將在這篇文章中展開這個話題,但由於該話題的寬泛性,我們將在下一期中繼續介紹有關它的描述和使用。

 

在 RHEL 7 中建立和修改分割區

在 RHEL 7 中, parted 是預設的用來處理分割區的程式,且它允許你:

  • 展示當前的分割區表
  • 操縱(擴大或縮小分割區的大小)現有的分割區
  • 利用空餘的磁碟空間或額外的物理儲存裝置來建立分割區

強烈建議你在試圖增加一個新的分割區或對一個現有分割區進行更改前,你應當確保該裝置上沒有任何一個分割區正在使用(umount /dev/分割區),且假如你正使用裝置的一部分來作為 swap 分割區,在進行上面的操作期間,你需要將它禁用(swapoff -v /dev/分割區) 。

實施上面的操作的最簡單的方法是使用一個安裝媒介例如一個 RHEL 7 的 DVD 或 USB 安裝盤以急救模式啟動 RHEL(TroubleshootingRescue a Red Hat Enterprise Linux system),然後當讓你選擇一個選項來掛載現有的 Linux 安裝時,選擇“跳過”這個選項,接著你將看到一個命令列提示符,在其中你可以像下圖顯示的那樣開始鍵入與在一個未被使用的物理裝置上建立一個正常的分割區時所用的相同的命令。

RHEL 7 急救模式

要啟動 parted,只需鍵入:

  1. #parted/dev/sdb

其中 /dev/sdb 是你將要建立新分割區所在的裝置;然後鍵入 print 來顯示當前裝置的分割區表:

建立新的分割區

正如你所看到的那樣,在這個例子中,我們正在使用一個 5 GB 的虛擬驅動器。現在我們將要建立一個 4 GB 的主分割區,然後將它格式化為 xfs 檔案系統,它是 RHEL 7 中預設的檔案系統。

你可以從一系列的檔案系統中進行選擇。你將需要使用 mkpart 來手動地建立分割區,接著和平常一樣,用 mkfs.型別 來對分割區進行格式化,因為 mkpart 並不支援許多現代的檔案系統的到即開即用。

在下面的例子中,我們將為裝置設定一個標記,然後在 /dev/sdb 上建立一個主分割區 (p),它從裝置的 0% 開始,並在 4000MB(4 GB) 處結束。

標記分割區的名稱

接下來,我們將把分割區格式化為 xfs 檔案系統,然後再次列印出分割區表,以此來確保更改已被應用。

  1. #mkfs.xfs /dev/sdb1
  2. #parted/dev/sdb print

格式化分割區為 XFS 檔案系統

對於舊一點的檔案系統,在 parted 中你可以使用 resize 命令來改變分割區的大小。不幸的是,這只適用於 ext2, fat16, fat32, hfs, linux-swap, 和 reiserfs (若 libreiserfs 已被安裝)。

因此,改變分割區大小的唯一方式是刪除它然後再建立它(所以,確保你對你的資料做了完整的備份!)。毫無疑問,在 RHEL 7 中預設的分割區方案是基於 LVM 的。

使用 parted 來移除一個分割區,可以用:

  1. #parted/dev/sdb print
  2. #parted/dev/sdb rm1

移除或刪除分割區

 

邏輯卷管理(LVM)

一旦一個磁碟被分好了分割區,再去更改分割區的大小就是一件困難或冒險的事了。基於這個原因,假如我們計劃在我們的系統上對分割區的大小進行更改,我們應當考慮使用 LVM 的可能性,而不是使用傳統的分割區系統。這樣多個物理裝置可以組成一個邏輯組,以此來存放任意數目的邏輯卷,而邏輯卷的增大或減少不會帶來任何麻煩。

簡單來說,你會發現下面的示意圖對記住 LVM 的基礎架構或許有用。

LVM 的基本架構

 

建立物理卷,卷組和邏輯卷

遵循下面的步驟是為了使用傳統的捲管理工具來設定 LVM。由於你可以通過閱讀這個網站上的 LVM 系列來擴充套件這個話題,我將只是概要的介紹設定 LVM 的基本步驟,然後與使用 SSM 來實現相同功能做個比較。

: 我們將使用整個磁碟 /dev/sdb/dev/sdc 來作為物理卷(PV),但是否執行相同的操作完全取決於你。

1. 使用 /dev/sdb 和 /dev/sdc 中 100% 的可用磁碟空間來建立分割區 /dev/sdb1/dev/sdc1

  1. #parted/dev/sdb print
  2. #parted/dev/sdc print

建立新分割區

2. 分別在 /dev/sdb1 和 /dev/sdc1 上共建立 2 個物理卷。

  1. # pvcreate /dev/sdb1
  2. # pvcreate /dev/sdc1

建立兩個物理卷

記住,你可以使用 pvdisplay /dev/sd{b,c}1 來顯示有關新建的物理卷的資訊。

3. 在上一步中建立的物理卷之上建立一個捲組(VG):

  1. # vgcreate tecmint_vg /dev/sd{b,c}1

建立卷組

記住,你可使用 vgdisplay tecmint_vg 來顯示有關新建的卷組的資訊。

4. 像下面那樣,在卷組 tecmint_vg 之上建立 3 個邏輯卷(LV):

  1. # lvcreate -L 3G-n vol01_docs tecmint_vg [vol01_docs 3 GB]
  2. # lvcreate -L 1G-n vol02_logs tecmint_vg [vol02_logs 1 GB]
  3. # lvcreate -l 100%FREE -n vol03_homes tecmint_vg [vol03_homes 6 GB]

建立邏輯卷

記住,你可以使用 lvdisplay tecmintvg 來顯示有關在 tecmintvg 之上新建的邏輯卷的資訊。

5. 格式化每個邏輯卷為 xfs 檔案系統格式(假如你計劃在以後將要縮小卷的大小,請別使用 xfs 檔案系統格式!):

  1. #mkfs.xfs /dev/tecmint_vg/vol01_docs
  2. #mkfs.xfs /dev/tecmint_vg/vol02_logs
  3. #mkfs.xfs /dev/tecmint_vg/vol03_homes

6. 最後,掛載它們:

  1. #mount/dev/tecmint_vg/vol01_docs /mnt/docs
  2. #mount/dev/tecmint_vg/vol02_logs /mnt/logs
  3. #mount/dev/tecmint_vg/vol03_homes /mnt/homes

 

移除邏輯卷,卷組和物理卷

7.現在我們將進行與剛才相反的操作並移除邏輯卷、卷組和物理卷:

  1. # lvremove /dev/tecmint_vg/vol01_docs
  2. # lvremove /dev/tecmint_vg/vol02_logs
  3. # lvremove /dev/tecmint_vg/vol03_homes
  4. # vgremove /dev/tecmint_vg
  5. # pvremove /dev/sd{b,c}1

8. 現在,讓我們來安裝 SSM,我們將看到如何只用一步就完成上面所有的操作!

  1. #yum update &&yum install system-storage-manager

我們將和上面一樣,使用相同的名稱和大小:

  1. # ssm create -s 3G-n vol01_docs -p tecmint_vg --fstype ext4 /mnt/docs /dev/sd{b,c}1
  2. # ssm create -s 1G-n vol02_logs -p tecmint_vg --fstype ext4 /mnt/logs /dev/sd{b,c}1
  3. # ssm create -n vol03_homes -p tecmint_vg --fstype ext4 /mnt/homes /dev/sd{b,c}1

是的! SSM 可以讓你:

  • 初始化塊裝置來作為物理卷
  • 建立一個捲組
  • 建立邏輯卷
  • 格式化邏輯卷,以及
  • 只使用一個命令來掛載它們

9. 現在,我們可以使用下面的命令來展示有關物理卷、卷組或邏輯卷的資訊:

  1. # ssm list dev
  2. # ssm list pool
  3. # ssm list vol

檢查有關物理卷、卷組或邏輯卷的資訊

10. 正如我們知道的那樣, LVM 的一個顯著的特點是可以在不停機的情況下更改(增大或縮小)邏輯卷的大小:

假定在 vol02logs 上我們用盡了空間,而 vol03homes 還留有足夠的空間。我們將把 vol03homes 的大小調整為 4 GB,並使用剩餘的空間來擴充套件 vol02logs:

  1. # ssm resize -s 4G/dev/tecmint_vg/vol03_homes

再次執行 ssm list pool,並記錄 tecmint_vg 中的剩餘空間的大小:

檢視卷的大小

然後執行:

  1. # ssm resize -s+1.99/dev/tecmint_vg/vol02_logs

: 在 -s 後的加號暗示特定值應該被加到當前值上。

11. 使用 ssm 來移除邏輯卷和捲組也更加簡單,只需使用:

  1. # ssm remove tecmint_vg

這個命令將返回一個提示,詢問你是否確認刪除捲組和它所包含的邏輯卷:

移除邏輯卷和卷組

 

管理加密的捲

SSM 也給系統管理員提供了為新的或現存的卷加密的能力。首先,你將需要安裝 cryptsetup 軟體包:

  1. #yum update &&yum install cryptsetup

然後寫出下面的命令來建立一個加密卷,你將被要求輸入一個密碼來增強安全性:

  1. # ssm create -s 3G-n vol01_docs -p tecmint_vg --fstype ext4 --encrypt luks /mnt/docs /dev/sd{b,c}1
  2. # ssm create -s 1G-n vol02_logs -p tecmint_vg --fstype ext4 --encrypt luks /mnt/logs /dev/sd{b,c}1
  3. # ssm create -n vol03_homes -p tecmint_vg --fstype ext4 --encrypt luks /mnt/homes /dev/sd{b,c}1

我們的下一個任務是往 /etc/fstab 中新增條目來讓這些邏輯卷在啟動時可用,而不是使用裝置識別編號(/dev/something)。

我們將使用每個邏輯卷的 UUID (使得當我們新增其他的邏輯卷或裝置後,我們的裝置仍然可以被唯一的標記),而我們可以使用 blkid 應用來找到它們的 UUID:

  1. #blkid-o value UUID /dev/tecmint_vg/vol01_docs
  2. #blkid-o value UUID /dev/tecmint_vg/vol02_logs
  3. #blkid-o value UUID /dev/tecmint_vg/vol03_homes

在我們的例子中:

找到邏輯卷的 UUID

接著,使用下面的內容來建立 /etc/crypttab 檔案(請更改 UUID 來適用於你的設定):

  1. docs UUID=ba77d113-f849-4ddf-8048-13860399fca8 none
  2. logs UUID=58f89c5a-f694-4443-83d6-2e83878e30e4 none
  3. homes UUID=92245af6-3f38-4e07-8dd8-787f4690d7ac none

然後在 /etc/fstab 中新增如下的條目。請注意到 devicename (/dev/mapper/devicename) 是出現在 /etc/crypttab 中第一列的對映標識:

  1. #Logical volume vol01_docs:
  2. /dev/mapper/docs /mnt/docs ext4 defaults 02
  3. #Logical volume vol02_logs
  4. /dev/mapper/logs /mnt/logs ext4 defaults 02
  5. #Logical volume vol03_homes
  6. /dev/mapper/homes /mnt/homes ext4 defaults 02

現在重新啟動(systemctl reboot),則你將被要求為每個邏輯卷輸入密碼。隨後,你可以通過檢查相應的掛載點來確保掛載操作是否成功:

確保邏輯捲掛載點

 

總結

在這篇教學中,我們開始探索如何使用傳統的捲管理工具和 SSM 來設定和設定系統儲存,SSM 也在一個軟體包中整合了檔案系統和加密功能。這使得對於任何系統管理員來說,SSM 是一個非常有價值的工具。

假如你有任何的問題或評論,請讓我們知曉 – 請隨意使用下面的評論框來與我們儲存聯絡!


via: http://www.tecmint.com/rhcsa-exam-create-format-resize-delete-and-encrypt-partitions-in-linux/

作者:Gabriel Cánepa 譯者:FSSlc 校對:wxy

本文由 LCTT 原創翻譯,Linux中國 榮譽推出

本文永久更新連結地址http://www.linuxidc.com/Linux/2015-09/123362.htm


IT145.com E-mail:sddin#qq.com