Назад | Перейти на главную страницу

Автоматически монтировать ведро с s3fs при загрузке

Я использую корзину Amazon S3 для доставки некоторого содержимого моего сервера. Мне удалось смонтировать его успешно и предоставить права Apache, но не могу правильно смонтировать его при перезагрузке.

Я обновил свой /etc/fstab с этой строкой, но при загрузке ничего не происходит

s3fs#my-bucket-name /mnt/s3_bucket fuse allow_other,umask=227,uid=33,gid=33,use_cache=/root/cache 0 0

Итак, я попробовал другой способ, прокомментировал указанную строку и просто поместил свою командную строку в /etc/init.d/local :

#!/usr/bin/env bash
s3fs -o allow_other,uid=33,gid=33,umask=227,use_cache=/root/cache my-bucket-name /mnt/s3_bucket

... тоже не сработало.

В итоге я поставил cron, и теперь он работает, но мне он кажется ужасно хакерским, и мне интересно, почему его установка при запуске не работает.

//Crontab
*/10 * * * * ~/mountBucket.sh 1>/dev/null

//Mount script
#!/usr/bin/env bash
if [[ -d /mnt/s3_bucket/someBucketVirtualDirectoryName ]] ; then echo 'Bucket already mounted' ; else s3fs -o allow_other,uid=33,gid=33,umask=227,use_cache=/root/cache my-bucket-name /mnt/s3_bucket ; fi 1>/dev/null

Я что-то пропустил?
Я использую Ubuntu 14.04.4 LTS с Fuse 2.9.2


РЕДАКТИРОВАТЬ: Вот еще одна несвязанная, но важная проблема производительности, которую мне пришлось решить самостоятельно:

Если ваша система включает функции locate и / или mlocate (а в Ubuntu 14.04 есть), вы можете добавить исключение, чтобы оно НЕ сканировало вашу корзину. Мне пришлось изменить оба моих /etc/updatedb.conf и /etc/cron.daily/locate, добавив " /mnt/my-bucket-name" к PRUNEPATHS и " fuse.s3fs" к PRUNEFS Я предполагаю добавить fuse.s3fs should be enough, но ... некогда рисковать прямо сейчас :)

Вы хотите добавить _netdev в свой fstab:

s3fs#my-bucket-name /mnt/s3_bucket fuse _netdev,allow_other,umask=227,uid=33,gid=33,use_cache=/root/cache 0 0