如何掛載或卸載我的 Amazon EFS 檔案系統?
我想掛載、自動掛載,或針對我的 Amazon Elastic File System (Amazon EFS) 檔案系統進行內部部署掛載。或者,我想卸載我的 EFS 檔案系統。
解決方法
注意: 若要掛載您的 EFS 檔案系統,請使用 Amazon EFS 用戶端 amazon-efs-utils 或 NFS 公用程式套件 nfs-utils。如需 NFS 公用程式套件的資訊,請參閱 Mankier 網站上的 Package nfs-utils (套件 nfs-utils)。
使用 Amazon EFS 客戶端掛載 Amazon EFS 檔案系統
為您的發行版本安裝 Amazon EFS 用戶端
若要安裝 amazon-efs-utils,請根據您的發行版本執行下列其中一個命令:
Amazon Linux 1、Amazon Linux 2 和 Amazon Linux 2023 (AL2023):
sudo yum install -y amazon-efs-utils
不含 yum 的 AL2023 Amazon Machine Image (AMI):
sudo dnf install -y amazon-efs-utils
Ubuntu 和 Debian:
sudo apt-get update sudo apt-get -y install git binutils rustc cargo pkg-config libssl-dev git clone https://github.com/aws/efs-utils cd efs-utils ./build-deb.sh sudo apt-get -y install ./build/amazon-efs-utils*deb
注意: 某些 Ubuntu 與 Debian 發行版本在其套件儲存庫中未包含 rust 或 cargo,或者可能包含早於 1.70 的版本。如果 apt-get install 命令因缺少或過期的 Rust 工具鏈而失敗,請在執行 build-deb.sh 之前執行下列命令:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh . "$HOME/.cargo/env"
OpenSUSE 或 SUSE Linux Enterprise Server (SLES):
sudo zypper refresh sudo zypper install -y git rpm-build make rust cargo openssl-devel git clone https://github.com/aws/efs-utils cd efs-utils make rpm sudo zypper --no-gpg-checks install -y build/amazon-efs-utils*rpm
所有其他發行版本:
sudo yum -y install git rpm-build make rust cargo openssl-devel git clone https://github.com/aws/efs-utils cd efs-utils make rpm sudo yum -y install build/amazon-efs-utils*rpm
將您的 Amazon EFS 檔案系統連線到您的 Amazon EC2 執行個體
請完成下列步驟:
- 開啟 Amazon EFS 主控台。
- 在導覽窗格選擇 File systems (檔案系統)。
- 選取您的 EFS 檔案系統。
- 若要查看 Mount (掛載) 命令,請選擇 Attach (附加)。
- 使用 SSH 或 AWS Systems Manager 的功能 Session Manager,連線到您的 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體。
- 若要建立掛載點目錄並將 EFS 檔案系統掛載至這些目錄,請執行下列命令:
注意: 請將 fs-12345678 與 fs-01233210 替換為您的 EFS 檔案系統 ID,並將 fsap-12345678 替換為您的 EFS 存取點 ID。sudo mkdir -p /mnt/efs sudo mkdir -p /mnt/efs-ap sudo mount -t efs -o tls fs-12345678:/ /mnt/efs sudo mount -t efs -o tls,accesspoint=fsap-12345678 fs-01233210 /mnt/efs-ap
使用 NFS 公用程式套件掛載 Amazon EFS 檔案系統
為您的發行版本安裝 NFS 公用程式套件
若要安裝 nfs-utils 套件,請根據您的發行版執行下列其中一個命令:
RHEL 和 CentOS:
sudo yum -y install nfs-utils
不含 yum 的 Linux 發行版本:
sudo dnf install -y nfs-utils
Ubuntu:
sudo apt install nfs-common
將您的 Amazon EFS 檔案系統連線到您的 Amazon EC2 執行個體
- 開啟 Amazon EFS 主控台。
- 在導覽窗格選擇 File systems (檔案系統)。
- 選取您的 EFS 檔案系統。
- 若要查看 Mount (掛載) 命令,請選擇 Attach (附加)。
- 使用 SSH 或 Session Manager 連線到您的 EC2 執行個體。
- 若要將 EFS 檔案系統掛載至本機目錄,請執行下列命令:
注意: 請將 mount-target-DNS 替換為您的虛擬私有雲端 (VPC) 中 EFS 掛載目標的 DNS 名稱。sudo mkdir -p /mnt/efs #creating the efs-mount-point sudo mount -t nfs -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport mount-target-DNS:/ /mnt/efs
或者,若要使用 IP 位址來掛載檔案系統,請執行下列命令:
注意: 請將 mount-target-ip 替換為 VPC 中 EFS 掛載目標的 IP 位址。sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport mount-target-ip:/ /mnt/efs
自動掛載 Amazon EFS 檔案系統
您可以在執行中或新的 EC2 執行個體掛載 EFS 檔案系統。
使用執行中的 EC2 執行個體
如果您已經有執行中的 EC2 執行個體,請使用 /etc/fstab 自動掛載您的 EFS 檔案系統。
請完成下列步驟:
-
若要啟動 Vim 文字編輯器,請執行下列命令:
vim /etc/fstab -
若要在開機時自動掛載您的 EFS 檔案系統,請根據您的組態執行 efs 類型條目或 nfs4 類型條目的命令。
對於 ** amazon-efs-utils ** 套件,請執行下列命令:fs-########:/ /mnt/efs efs _netdev,nofail,noresvport,tls,iam 0 0對於 ** nfs-utils ** 套件,請執行下列命令:
fs-########.efs.REGION.amazonaws.com:/ /mnt/efs nfs4 defaults,_netdev,nofail 0 0注意: 請將 fs-######## 替換為您的 EFS 檔案系統 ID。
-
若要在重新啟動的情況下立即套用組態,請執行下列命令:
mount -a
如需使用掛載協助程式的掛載選項,請參閱 Automatically mounting EFS file systems (自動掛載 EFS 檔案系統)。
注意: 若要掛載您的 EFS 檔案系統,您可以使用與用戶端執行個體不同可用區域中掛載目標的 IP 位址。此掛載方法可能會產生跨可用區域資料傳輸費用,並導致延遲。
使用新的 EC2 執行個體
如果您建立新的 EC2 執行個體,請使用 Amazon EC2 啟動執行個體精靈,自動掛載您的 EFS 檔案系統。設定 EC2 執行個體時,請執行下列動作:
- 在 File systems (檔案系統) 下,選取您的檔案系統。檔案系統 ID 旁邊的路徑是 EC2 執行個體使用的掛載點。您可以根據需求變更此路徑。
- 請注意,AWS 會自動在 Advanced details (進階詳細資訊) 區段中產生使用者資料,以掛載 EFS 檔案系統。
- 選擇預設的安全群組,以確保 EC2 執行個體可以存取您的 EFS 檔案系統。若要允許 SSH 存取,請編輯預設的安全群組。接著新增一項規則,將 Type (類型) 設為 SSH、Protocol (通訊協定) 設為 TCP、Port Range (連接埠範圍) 設為 22,且 Source (來源) 定為 Anywhere (0.0.0.0/0)。
或者,若要在自訂 AMI 或使用特定選項上掛載 EFS 檔案系統,請執行下列命令以新增自訂使用者資料:
RHEL 和 CentOS:
#!/bin/bash sudo mkdir -p /mnt/efs sudo yum -y install nfs-utils
Ubuntu:
#!/bin/bash sudo mkdir -p /mnt/efs sudo apt install nfs-common sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport mount-target-ip:/ /mnt/efs
然後,啟動您的 EC2 執行個體。
在內部部署環境掛載 Amazon EFS 檔案系統
若要在內部部署伺服器上掛載 EFS 檔案系統,您必須具備 Amazon EFS 與內部部署伺服器之間的連線。若要建立內部部署伺服器與 Amazon Virtual Private Cloud (Amazon VPC) 之間的連線,請使用 AWS Direct Connect 與 AWS VPN。然後,執行下列命令以安裝 NFS 用戶端並掛載您的檔案系統:
sudo yum -y install nfs-utils (Red Hat Linux) sudo apt-get -y install nfs-common (Ubuntu) sudo mkdir -p /mnt/efs sudo mount -t nfs -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport mount-target-IP:/ /mnt/efs
卸載 Amazon EFS 檔案系統
若要卸載檔案系統,請執行下列 umount 命令:
sudo umount /mnt/efs
如果掛載點忙碌中,請執行下列有 -l 參數的 umount 命令:
sudo umount -l /mnt/efs
相關資訊
Package management tool (套件管理工具)
Tutorial: Mounting with on-premises Linux clients (教學課程:使用內部部署 Linux 用戶端進行掛載)
Run commands when you launch an EC2 instance with user data input (透過使用者資料輸入啟動 EC2 執行個體時執行命令)
This article was reviewed and updated on 2026-03-06.
相關內容
已提問 1 年前
已提問 2 年前
已提問 2 年前
