Não é possível montar uma pasta no Ubuntu como AWS S3 Bucket

Não é possível montar uma pasta no Ubuntu como AWS S3 Bucket

Estou tentando montar uma pasta em uma nova instância do AWS EC2 executando o Ubuntu 18.04, para o AWS S3.

Tenho seguido as instruções que encontrei emhttps://cloud.netapp.com/blog/amazon-s3-as-a-file-systemehttps://www.nakivo.com/blog/mount-amazon-s3-as-a-drive-how-to-guide/. Eu também vi a mensagemProblemas de montagem de um bucket S3 em uma instância do AWS Ubuntu

Quando executo o comando para montar a pasta, não recebo nenhum erro, mas quando olho para as pastas montadas atualmente, minha nova não está listada, por exemplo:

[email protected]:~$ sudo s3fs -o allow_other alextestbackup ~/s3-bucket/ -o passwd_file=~/.passwd-s3fs
[email protected]:~$ mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,nosuid,relatime,size=486512k,nr_inodes=121628,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=100208k,mode=755)
/dev/xvda1 on / type ext4 (rw,relatime,discard)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
cgroup on /sys/fs/cgroup/unified type cgroup2 (rw,nosuid,nodev,noexec,relatime)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,name=systemd)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls,net_prio)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/rdma type cgroup (rw,nosuid,nodev,noexec,relatime,rdma)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=26,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=13950)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,pagesize=2M)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
mqueue on /dev/mqueue type mqueue (rw,relatime)
fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime)
configfs on /sys/kernel/config type configfs (rw,relatime)
/var/lib/snapd/snaps/snapd_14066.snap on /snap/snapd/14066 type squashfs (ro,nodev,relatime,x-gdu.hide)
/var/lib/snapd/snaps/amazon-ssm-agent_4046.snap on /snap/amazon-ssm-agent/4046 type squashfs (ro,nodev,relatime,x-gdu.hide)
/var/lib/snapd/snaps/core18_2253.snap on /snap/core18/2253 type squashfs (ro,nodev,relatime,x-gdu.hide)
lxcfs on /var/lib/lxcfs type fuse.lxcfs (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=100204k,mode=700,uid=1000,gid=1000)

Tentei várias combinações para o comando mount:

sudo /usr/bin/s3fs -o allow_other alextestbackup /home/ubuntu/s3-bucket/
s3fs -o allow_other alextestbackup ~/s3-bucket/ -o passwd_file=~/.passwd-s3fs
s3fs alextestbackup ~/s3-bucket/ -o passwd_file=~/.passwd-s3fs

Também testei fazer com que .passwd-s3fs tivessem credenciais incorretas e não recebi nenhum aviso de que elas estavam incorretas.

Para mim, parece que as credenciais não estão sendo obtidas por algum motivo? Ou há algo mais que estou perdendo.

Qualquer ajuda será muito apreciada e se você precisar de alguma informação sobre o arquivo de log, deixe-me saber o que postar aqui.

Responder1

Parei/iniciei a instância AWS E2 e executei:

sudo /usr/bin/s3fs -o allow_other alextestbackup /home/ubuntu/s3-bucket/

e agora vejo o diretório montado (últimas linhas do comando mount):

lxcfs on /var/lib/lxcfs type fuse.lxcfs (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=100204k,mode=700,uid=1000,gid=1000)
s3fs on /home/ubuntu/s3-bucket type fuse.s3fs (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other)

e posso confirmar que quando escrevo um arquivo no s3-bucket posso ver o arquivo no console AWS S3.

Então... não tenho ideia do que estava acontecendo antes, ou apenas foi necessário reiniciar após instalar o s3fs

Responder2

Eu tenho o S3 montado no EC2 (Ubuntu18) e nunca consegui montá-lo usando a linha de comando. Quando adicionei uma entrada ao arquivo /etc/fstab e remontei (source -a), funcionou bem. Também garanti que minha instância do EC2 tivesse uma função que incluísse as políticas apropriadas de leitura/gravação/exclusão do S3.

Srini tem uma boa explicação (embora apenas a entrada fstab tenha funcionado para mim) no link abaixo.

https://serverfault.com/a/1063745/981157

informação relacionada