![带有 EFS 挂载的 vsftpd 服务器 - 根设备已满](https://linux22.com/image/212466/%E5%B8%A6%E6%9C%89%20EFS%20%E6%8C%82%E8%BD%BD%E7%9A%84%20vsftpd%20%E6%9C%8D%E5%8A%A1%E5%99%A8%20-%20%E6%A0%B9%E8%AE%BE%E5%A4%87%E5%B7%B2%E6%BB%A1.png)
另一个我无法找到 Google 答案的问题
我有一个带有 vsftpd 的 FTP 服务器,我在 /mnt/ 下安装了 AWS EFS 驱动器,所有用户目录都在下面
/mnt/efs/fs1/
user1/
user2/
...etc
当用户上传文件时,我可以看到使用的 df -hT
命令/dev/root
已满。有没有办法将 EFS 驱动器安装为单独的驱动器,或者安装在不会耗尽空间的目录下/dev/root
?
我使用用户数据挂载 EFS 卷
#cloud-config
package_update: true
package_upgrade: true
runcmd:
- yum install -y amazon-efs-utils
- apt-get -y install amazon-efs-utils
- yum install -y nfs-utils
- apt-get -y install nfs-common
- file_system_id_1=fs-efs-id-here
- efs_mount_point_1=/mnt/efs/fs1
- mkdir -p "${efs_mount_point_1}"
- test -f "/sbin/mount.efs" && printf "\n${file_system_id_1}:/ ${efs_mount_point_1} efs tls,_netdev\n" >> /etc/fstab || printf "\n${file_system_id_1}.efs.us-east-1.amazonaws.com:/ ${efs_mount_point_1} nfs4 nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport,_netdev 0 0\n" >> /etc/fstab
- test -f "/sbin/mount.efs" && grep -ozP 'client-info]\nsource' '/etc/amazon/efs/efs-utils.conf'; if [[ $? == 1 ]]; then printf "\n[client-info]\nsource=liw\n" >> /etc/amazon/efs/efs-utils.conf; fi;
- retryCnt=15; waitTime=30; while true; do mount -a -t efs,nfs4 defaults; if [ $? = 0 ] || [ $retryCnt -lt 1 ]; then echo File system mounted successfully; break; fi; echo File system not available, retrying to mount.; ((retryCnt--)); sleep $waitTime; done;
谢谢伊加尔
答案1
因此,看起来因为我使用的是 Ubuntu 22.04LTS,AWS 的 efs-helper 软件包无法正常工作。另外,我缺少挂载 EFS 的安全组权限。因此,它/mnt/efs/fs1
实际上是 Ubuntu 本地文件夹。