本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
讓 Amazon EBS 磁碟區可供使用
將 Amazon EBS 磁碟區連接至執行個體後,它會以區塊裝置的形式公開。您可將此磁碟區格式化成任何檔案系統,然後掛載它。將 EBS 磁碟區設為可供使用之後,您可以使用與存取任何其他磁碟區相同的方式來存取該磁碟區。寫入此檔案系統的任何資料都會寫入 EBS 磁碟區,且對使用 裝置的應用程式而言是透明的。
您可以拍攝 EBS 磁碟區的快照以供備份之用,也可以在建立另一個磁碟區時使用 作為基準。如需詳細資訊,請參閱Amazon EBS 快照。
如果您準備使用的 EBS 磁碟區大於 2 TiB,您必須使用 GPT 分割方案來存取整個磁碟區。如需詳細資訊,請參閱Amazon EBS 磁碟區限制。
格式化和掛載連接的磁碟區
假設您有一個 EC2 執行個體,其具有根裝置的 EBS 磁碟區,/dev/xvda
且您剛使用 將空的 EBS 磁碟區連接至執行個體/dev/sdf
。請使用下列步驟讓新連接的磁碟區可供使用。
在 Linux 上格式化和掛載 EBS 磁碟區
-
使用 SSH 連線至您的執行個體。如需詳細資訊,請參閱連線至 Linux 執行個體。
-
裝置可能可以使用和您在區塊型設備映射中指定的不同裝置名稱來連接至執行個體。如需詳細資訊,請參閱 Linux 執行個體上的裝置名稱。使用 lsblk 命令檢視您可用的磁碟裝置及其掛載點 (如適用),以利判斷要使用的正確裝置名稱。lsblk 的輸出會移除完整裝置路徑的
/dev/
前綴。以下是在 Nitro 系統上建置之執行個體的範例輸出,其公開 EBS 磁碟區為 NVMe 區塊裝置。根設備是
/dev/nvme0n1
,其中有兩個名為nvme0n1p1
和nvme0n1p128
。連接的磁碟區是沒有分割區且尚未掛載的/dev/nvme1n1
[ec2-user ~]$
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT nvme1n1 259:0 0 10G 0 disk nvme0n1 259:1 0 8G 0 disk -nvme0n1p1 259:2 0 8G 0 part / -nvme0n1p128 259:3 0 1M 0 part
以下是 T2 執行個體的範例輸出。根設備是
/dev/xvda
,其中有一個名為xvda1
的分割區。連接的磁碟區是沒有分割區且尚未掛載的/dev/xvdf
[ec2-user ~]$
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 8G 0 disk -xvda1 202:1 0 8G 0 part / xvdf 202:80 0 10G 0 disk
-
判斷磁碟區上是否有檔案系統。新磁碟區是原始的區塊型儲存設備,您必須先在這些磁碟區上建立檔案系統,才能掛載和使用它們。從快照建立的磁碟區上可能已有檔案系統,如果您在現有的檔案系統上建立新的檔案系統,此操作會覆寫您的資料。
使用下列其中一個或兩個方法來判斷磁碟區上是否具有檔案系統:
-
使用 file -s 命令取得有關特定裝置的資訊,例如:檔案系統類型。如果輸出如以下範例輸出所示,只顯示
data
,則表示此裝置上不具有檔案系統。[ec2-user ~]$
sudo file -s
/dev/xvdf
/dev/xvdf: data
如果裝置有檔案系統,此命令則會顯示與檔案系統類型相關的資訊。例如,下列輸出顯示具有 XFS 檔案系統的根裝置。
[ec2-user ~]$
sudo file -s
/dev/xvda1
/dev/xvda1: SGI XFS filesystem data (blksz 4096, inosz 512, v2 dirs)
-
使用 lsblk -f 命令以取得連接至執行個體的所有裝置的相關資訊。
[ec2-user ~]$
sudo lsblk -f
例如:下列輸出顯示有三個裝置連接到執行個體 —、
nvme1n1
、nvme0n1
和nvme2n1
。第一欄會列出裝置及其磁碟分割區。第FSTYPE
欄會顯示每個裝置的檔案系統類型。如果特定裝置的欄位空白,表示該裝置不具有檔案系統。在此情況下,裝置上的裝置nvme1n1
和分割區nvme0n1p1
nvme0n1
都是使用 XFS 檔案系統進行格式化,而nvme0n1p128
裝置上的裝置nvme2n1
和分割區nvme0n1
則沒有檔案系統。NAME FSTYPE LABEL UUID MOUNTPOINT nvme1n1 xfs 7f939f28-6dcc-4315-8c42-6806080b94dd nvme0n1 ├─nvme0n1p1 xfs / 90e29211-2de8-4967-b0fb-16f51a6e464c / └─nvme0n1p128 nvme2n1
如果這些命令的輸出顯示裝置上不具有檔案系統,則您必須建立一個檔案系統。
-
-
(有條件) 如果您在前一個步驟中發現裝置上有檔案系統,請略過此步驟。如果您有空的磁碟區,請使用 mkfs -t 命令在磁碟區上建立檔案系統。
警告
如果您要掛載的磁碟區已有資料 (例如,從快照建立的磁碟區),請不要使用此命令。否則,您會格式化磁碟區並刪除現有的資料。
[ec2-user ~]$
sudo mkfs -t xfs
/dev/xvdf
如果您收到
mkfs.xfs
找不到的錯誤,請使用下列命令來安裝 XFS 工具,然後重複上一個命令:[ec2-user ~]$
sudo yum install xfsprogs
-
使用 mkdir 命令建立磁碟區的掛載點目錄。掛載點是磁碟區在檔案系統樹狀目錄中的位置,也是您在掛載磁碟區後讀取和寫入檔案的位置。下列範例會建立名為
/data
的目錄。[ec2-user ~]$
sudo mkdir
/data
-
在上一步建立的掛載點目錄中安裝磁碟區或分割區。
如果磁碟區沒有分割區,則請使用以下命令並指定要掛載整個磁碟區的裝置名稱。
[ec2-user ~]$
sudo mount
/dev/xvdf
/data
如果磁碟區有分割區,請使用以下命令並指定要掛載分割區的分割區名稱。
[ec2-user ~]$
sudo mount
/dev/xvdf1
/data
-
檢閱新磁碟區掛載的檔案許可,以確定您的使用者和應用程式可寫入此磁碟區。如需檔案許可的詳細資訊,請參閱 Linux 文件專案的檔案安全性
。 -
執行個體重新開機後,不會自動保留掛載點。若要在重新啟動後自動掛載此 EBS 磁碟區,請依照下一個程序執行。
在重新開機後自動掛載連接的磁碟區
若要在每次系統重新啟動時掛載連接的 EBS 磁碟區,請將裝置的項目新增至 /etc/fstab
檔案。
您可以在 中使用裝置名稱,例如 /dev/xvdf
,/etc/fstab
但我們建議您改用裝置的 128 位元通用唯一識別碼 (UUID)。裝置名稱可能會變更,但 UUID 會在分割區的整個生命週期中持續存在。透過使用 UUID,您可以降低硬體重新設定後系統無法開機的機會。如需詳細資訊,請參閱將 Amazon EBS 磁碟區對應至 NVMe 裝置名稱。
若要在重新開機後自動掛載連接的磁碟區
-
(選用) 建立
/etc/fstab
檔案的備份,如果在編輯檔案時不小心損毀或刪除此檔案,即可使用檔案的備份。[ec2-user ~]$
sudo cp /etc/fstab /etc/fstab.orig
-
使用 blkid命令尋找裝置的 UUID。記下您要在重新啟動後掛載之裝置的 UUID。您將在下面的步驟中需要它。
例如,下列命令顯示有兩個裝置掛載到執行個體,並顯示兩個裝置的 UUIDs。
[ec2-user ~]$
sudo blkid
/dev/xvda1: LABEL="/" UUID="ca774df7-756d-4261-a3f1-76038323e572" TYPE="xfs" PARTLABEL="Linux" PARTUUID="02dcd367-e87c-4f2e-9a72-a3cf8f299c10" /dev/xvdf: UUID="aebf131c-6957-451e-8d34-ec978d9581ae" TYPE="xfs"
對於 Ubuntu 18.04,請使用 lsblk 命令。
[ec2-user ~]$
sudo lsblk -o +UUID
-
使用任何文字編輯器 (例如
/etc/fstab
或 nano) 開啟 vim 檔案。[ec2-user ~]$
sudo vim /etc/fstab
-
若要於指定的掛載點上掛載裝置,請在
/etc/fstab
中加入下列項目。這些欄位是 blkid(或 lsblk Ubuntu 18.04)、掛載點、檔案系統和建議的檔案系統掛載選項傳回的 UUID 值。如需有關必要欄位的詳細資訊,請執行man fstab
以開啟 fstab 手冊。在下列範例中,我們使用 UUID 掛載裝置
aebf131c-6957-451e-8d34-ec978d9581ae
以掛載點/data
,並使用xfs
檔案系統。我們也使用defaults
和nofail
標記。指定0
以防止檔案系統被傾印,並指定2
,指出其為非根裝置。UUID=
aebf131c-6957-451e-8d34-ec978d9581ae
/data
xfs
defaults,nofail 0 2注意
如果曾在不掛載此磁碟區的狀態下開機執行個體 (例如,在將磁碟區移至其他執行個體後),
nofail
掛載選項可讓執行個體繼續開機,即使在掛載磁碟區的作業出現錯誤。包括 16.04 前之 Ubuntu 版本在內的 Debian 衍生產品,也必須新增nobootwait
掛載選項。 -
若要驗證您的項目是否能夠運作,請執行下列命令來卸載裝置,然後在
/etc/fstab
中掛載所有檔案系統。如果未發生錯誤,則/etc/fstab
檔案沒有問題,檔案系統將會在重新啟動時自動掛載。[ec2-user ~]$
sudo umount
/data
[ec2-user ~]$
sudo mount -a
如果您收到錯誤訊息,請處理檔案中的錯誤。
警告
/etc/fstab
檔案中的錯誤可能會造成系統無法開機。如果是在/etc/fstab
檔案中具有錯誤的系統,請勿將此系統關機。如果您不確定要如何修正
/etc/fstab
中的錯誤,且您已在此程序的第一個步驟中建立備份檔案,您可以隨時使用下列命令,從備份檔案還原。[ec2-user ~]$
sudo mv /etc/fstab.orig /etc/fstab
使用下列其中一種方法,在 Windows 執行個體上提供磁碟區。