

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 建立Lightsail區塊儲存磁碟並將其連接至 Linux 執行個體
<a name="create-and-attach-additional-block-storage-disks-linux-unix"></a>

您可以為 Amazon Lightsail 執行個體建立和連接額外區塊儲存磁碟。建立額外磁碟後，您必須連接至您的 Linux/Unix 型 Lightsail 執行個體並且格式化和掛載磁碟。

本主題會示範如何使用 Lightsail 建立新的磁碟並連接。此外也會說明如何使用 SSH 連接至您的 Linux/Unix 型執行個體，讓您能夠格式化和掛載已連接的磁碟。

如果您擁有 Windows Server 型執行個體，請參閱以下主題：[建立區塊儲存磁碟並將其附接至 Windows Server 執行個體](create-and-attach-additional-block-storage-disks-windows.md)。

## 步驟 1：建立新的磁碟並將其連接至您的執行個體
<a name="create-attach-new-disk-to-linux-unix-instance"></a>

1. 在左側導覽窗格中，選擇**儲存**。

1. 選擇 **Create disk (建立磁碟)**。

1. 選擇Lightsail執行個體所在的 AWS 區域 和可用區域。

1. 選擇大小。

1. 輸入磁碟的名稱。

   資源名稱：
   +  AWS 區域 在您的Lightsail帳戶中的每個 中必須是唯一的。
   + 必須包含 2 到 255 個字元。
   + 開頭和結尾必須是英數字元或數字。
   + 可以包含英數字元、數字、句點、破折號和底線。

1. 選擇下列其中一個選項以新增標籤至您的磁碟：
   + **新增僅限金鑰的標籤**或**管理標籤** （如果已新增標籤）。在標籤索引鍵文字方塊中輸入新的標籤，接著按 **Enter (輸入)**。輸入標籤以新增之後，請選擇 **Save** (儲存)，如果不要新增則選擇 **Cancel** (取消)。  
![Lightsail 主控台中的僅索引鍵標籤。](http://docs.aws.amazon.com/zh_tw/lightsail/latest/userguide/images/amazon-lightsail-key-only-tags.png)
   + **Create a key-value tag (建立索引鍵值標籤)**，接著將索引鍵輸入 **Key (索引鍵)** 文字方塊，將值輸入 **Value (值)** 文字方塊。完成輸入標籤後，請選擇 **Save (儲存)**，如果不要新增則選擇 **Cancel (取消)**。

     鍵值標籤在儲存前一次只能新增一個。若要新增超過一個索引鍵值標籤，請重複之前的步驟。  
![Lightsail 主控台中的索引鍵值標籤。](http://docs.aws.amazon.com/zh_tw/lightsail/latest/userguide/images/amazon-lightsail-key-value-tag.png)
**注意**  
如需有關僅索引鍵和索引鍵值標籤的詳細資訊，請參閱[標籤](amazon-lightsail-tags.md)。

1. 選擇 **Create disk (建立磁碟)**。

   幾秒鐘後，磁碟就會建立，而您會看到新的磁碟管理頁面。

1. 從清單選擇執行個體，接著選擇 **Attach** (連接) 將新的磁碟連接至執行個體。

## 步驟 2：連接執行個體以格式化和掛載磁碟
<a name="connect-to-linux-unix-instance-using-ssh-format-mount-disk"></a>

1. 建立和連接磁碟後，請回到 Lightsail 中的執行個體管理頁面。

   **Connect (連接)** 索引標籤會依預設顯示。  
![執行個體管理頁面的 Connect 索引標籤](http://docs.aws.amazon.com/zh_tw/lightsail/latest/userguide/images/lightsail-instance-management-page-connect-tab.png)

1. 選擇 **Connect using SSH** (使用 SSH 連接) 以連接至執行個體。

1. 在終端機視窗中輸入下列命令：

   ```
   lsblk
   ```

   的輸出會`lsblk`省略磁碟路徑的`/dev/`字首。
**注意**  
2023 年 6 月 29 日，我們更新了Lightsail執行個體的基礎硬體。在下列範例中，上一代執行個體的裝置名稱會顯示為 `/dev/xvda`。在此日期之後建立之執行個體的裝置名稱會顯示為 `/dev/nvme0n1`。

------
#### [ Current generation instances ]

   在下列範例輸出中，根磁碟區 (`nvme0n1`) 有兩個分割區 (`nvme0n1p1` 和 `nvme0n1p128`)，而額外的磁碟區 (`nvme1n1`) 沒有分割區。

   ```
   [ec2-user ~]$ sudo lsblk
   NAME          MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
   nvme1n1       259:0    0  30G  0 disk /data
   nvme0n1       259:1    0  16G  0 disk
   └─nvme0n1p1   259:2    0   8G  0 part /
   └─nvme0n1p128 259:3    0   1M  0 part
   ```

------
#### [ Previous generation instances ]

   在下列範例輸出中，根磁碟區 (`xvda`) 有一個分割區 (`xvda1`)，而額外的磁碟區 (`xvdf`) 沒有分割區。

   ```
   [ec2-user ~]$ sudo lsblk                
   NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
   xvda    202:0    0  16G  0 disk
   └─xvda1 202:1    0   8G  0 part /
   xvdf    202:80   0  24G  0 disk
   ```

------

1. 判斷是否在磁碟上建立檔案系統。新磁碟是原始的區塊型儲存設備，您必須先在這些磁碟區上建立檔案系統，才能掛載和使用它們。從快照還原的磁碟可能已經有檔案系統了。如果您在現有檔案系統上建立新的檔案系統，此操作會覆寫您的資料。

   使用下列項目來判斷您的磁碟是否具有檔案系統。如果您的磁碟沒有檔案系統，請繼續**步驟 2.5。**如果您的磁碟有檔案系統，請跳至**步驟 2.6。**

------
#### [ Current generation instances ]

   ```
   sudo file -s /dev/nvme1n1
   ```

   您應該會看到以下在全新磁碟上的輸出。

   ```
   /dev/nvme1n1: data
   ```

   如果您看到類似以下的輸出，這表示您的磁碟已經有檔案系統了。

   ```
   /dev/nvme1n1: SGI XFS filesystem data (blksz 4096, inosz 512, v2 dirs)
   ```

------
#### [ Previous generation instances ]

   ```
   sudo file -s /dev/xvdf
   ```

   您應該會看到以下在全新磁碟上的輸出。

   ```
   /dev/xvdf: data
   ```

   如果您看到類似以下的輸出，這表示您的磁碟已經有檔案系統了。

   ```
   /dev/xvda1: Linux rev 1.0 ext4 filesystem data, UUID=1701d228-e1bd-4094-a14c-12345EXAMPLE (needs journal recovery) (extents) (large files) (huge files)
   ```

------

1. 使用下列命令在磁碟上建立新的檔案系統。以裝置名稱 (例如 `/dev/nvme1n1`) 替換 {{device\_name}}。取決於應用程式的要求或作業系統的限制，您可以選擇不同的檔案系統類型，例如 `ext3` 或 `ext4`。
**重要**  
此步驟假設您要掛載空的磁碟。如果您要掛載的磁碟已有資料 (例如，從快照還原的磁碟)，掛載磁碟之前請不要使用 `mkfs`。反之，請跳至**步驟 2.6 **並建立掛載點。否則，您將格式化磁碟並刪除現有資料。

------
#### [ Current generation instances ]

   ```
   sudo mkfs -t xfs {{device_name}}
   ```

   您應該會看到類似以下的輸出。

   ```
   meta-data=/dev/nvme1n1           isize=512    agcount=16, agsize=1048576 blks
            =                       sectsz=512   attr=2, projid32bit=1
            =                       crc=1        finobt=1, sparse=1, rmapbt=0
            =                       reflink=1    bigtime=1 inobtcount=1
   data     =                       bsize=4096   blocks=16777216, imaxpct=25
            =                       sunit=1      swidth=1 blks
   naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
   log      =internal log           bsize=4096   blocks=16384, version=2
            =                       sectsz=512   sunit=1 blks, lazy-count=1
   realtime =none                   extsz=4096   blocks=0, rtextents=0
   ```

------
#### [ Previous generation instances ]

   ```
   sudo mkfs -t ext4 {{device_name}}
   ```

   您應該會看到以下輸出，如下所示。

   ```
   mke2fs 1.42.9 (4-Feb-2014)
   Filesystem label=
   OS type: Linux
   Block size=4096 (log=2)
   Fragment size=4096 (log=2)
   Stride=0 blocks, Stripe width=0 blocks
   4194304 inodes, 16777216 blocks
   838860 blocks (5.00%) reserved for the super user
   First data block=0
   Maximum filesystem blocks=4294967296
   512 block groups
   32768 blocks per group, 32768 fragments per group
   8192 inodes per group
   Superblock backups stored on blocks:
   32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
   4096000, 7962624, 11239424
   
   Allocating group tables: done
   Writing inode tables: done
   Creating journal (32768 blocks): done
   Writing superblocks and filesystem accounting information: done
   ```

------

1. 使用以下命令建立磁碟的掛載點目錄。掛載點是磁碟在檔案系統樹狀目錄中的位置，也是您在掛載磁碟後讀取和寫入檔案的位置。將 {{mount\_point}} 的位置替換為未使用的空間，例如 `/data`。

   ```
   sudo mkdir {{mount_point}}
   ```

1. 您可以輸入下列命令來驗證磁碟現在具有檔案系統。

------
#### [ Current generation instances ]

   ```
   sudo file -s /dev/nvme1n1
   ```

   您會看到類似以下的輸出`/dev/nvme1n1: data`，而不是 。

   ```
   /dev/nvme1n1: SGI XFS filesystem data (blksz 4096, inosz 512, v2 dirs)
   ```

------
#### [ Previous generation instances ]

   ```
   sudo file -s /dev/xvdf
   ```

   您會看到類似以下的輸出`/dev/xvdf: data`，而不是 。

   ```
   /dev/xvdf: Linux rev 1.0 ext4 filesystem data, UUID=0ee83fdf-e370-442e-ae38-12345EXAMPLE (extents) (large files) (huge files)
   ```

------

1. 最後，輸入下列命令來掛載磁碟。

   ```
   sudo mount {{device_name mount_point}}
   ```

   檢閱新磁碟掛載的檔案許可，以確保您的使用者和應用程式可寫入此磁碟。如需有關檔案許可的詳細資訊，請參閱《Amazon EC2 使用者指南》**中的[使 Amazon EBS 磁碟區可供使用](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-using-volumes.html)。

## 步驟 3：在每次重新啟動執行個體時掛載磁碟
<a name="mount-disk-every-time-reboot-instance-linux-unix"></a>

您可能想在每次重新啟動 Lightsail 執行個體時掛載此磁碟。如果您不這麼做，此步驟為選用。

1. 若要在每次系統重新啟動時掛載此磁碟，請在 `/etc/fstab` 檔案中新增裝置的項目。

   建立 `/etc/fstab` 檔案的備份，如果在編輯檔案時不小心損毀或刪除此檔案，即可使用檔案的備份。

   ```
   sudo cp /etc/fstab /etc/fstab.orig
   ```

1. 使用任何文字編輯器 (例如 vim) 開啟 `/etc/fstab` 檔案。

   您必須先輸入 ，`sudo`才能開啟檔案，才能儲存變更。

1. 使用以下格式在磁碟的檔案結尾新增新的一行。

   ```
   device_name  mount_point  file_system_type  fs_mntops  fs_freq  fs_passno
   ```

   例如，您的新行看起來可能類似以下內容。

------
#### [ Current generation instances ]

   ```
   /dev/nvme1n1 /data xfs defaults,nofail 0 2
   ```

------
#### [ Previous generation instances ]

   ```
   /dev/xvdf /data ext4 defaults,nofail 0 2
   ```

------

1. 儲存檔案並結束您的文字編輯器。