AWS 授予 Apache 写入不同 EBS 卷的权限

AWS 授予 Apache 写入不同 EBS 卷的权限

我有一个运行 Apache 的 EC2 实例,我的网站(php 文件)也位于该 EC2 实例上。网站用户将能够上传和下载文件,我想将(用户上传的)文件存储在单独的 EBS 卷上。我是否需要授予 Apache 特殊权限才能写入单独的 EBS 卷?

答案1

将 EBS 卷视为另一个磁盘。创建卷后,您需要将其安装到 Linux 实例上。要从 AWS 控制台执行此操作,请右键单击 EBS 卷,然后选择“附加卷”。选择要将卷附加到的实例,它应该会建议一个设备名称(例如 /dev/sdg,假设您使用的是 Linux)。然后单击“附加”以附加卷。

此时,您需要登录到您的 EC2 实例。同样,假设您正在运行 Linux,您可以使用 lsblk 命令查看新磁盘。某些版本的 Linux 会将设备从 /dev/sdg 映射到 /dev/xvdg:

$ lsblk
NAME    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
xvdf    202:80   0   150G  0 disk
└─xvdf1 202:81   0   150G  0 part /data
xvdg    202:96   0   100G  0 disk
xvda1   202:1    0    16G  0 disk /

现在您需要对新磁盘进行分区(fdisk /dev/xvdg)、格式化它(mkfs /dev/xvdg1),然后将其挂载到文件系统上的某个位置(并且不要忘记在 /etc/fstab 中添加一个条目)。

您希望 Apache 将该卷挂载到哪里并在那里写入文件,并且运行 Apache 的用户将需要对该路径的写权限。

相关内容