ubuntu 使用s3fs配置自动挂载对象存储

一、环境准备

1.有访问对象存储权限的AKSK

2.服务器、对象存储

二、实施步骤

sudo apt update

sudo apt install s3fs

echo "AK:SK" >/home/ubuntu/.passwd-s3fs ---位置自定义

chmod 600 /home/ubuntu/.passwd-s3fs ---权限必须要有

mkdir /data

sudo s3fs yyy1 /data -o passwd_file=/home/ubuntu/.passwd-s3fs -o url=http://s3.cn-northwest-1.amazonaws.com.cn -o allow_other -o endpoint=cn-northwest-1

allow_other --其他用户也能看到 如只想让root看或者挂载用户看就不加

vi /usr/local/bin/mount-s3.sh

准备启动脚本

#!/bin/bash

定义变量

BUCKET_NAME="yyy1"

MOUNT_POINT="/data"

PASSWD_FILE="/home/ubuntu/.passwd-s3fs"

REGION="cn-northwest-1"

URL="http://s3.cn-northwest-1.amazonaws.com.cn"

检查挂载点是否存在,不存在则创建

if [ ! -d "$MOUNT_POINT" ]; then

mkdir -p "$MOUNT_POINT"

fi

尝试挂载S3存储桶

s3fs "BUCKET_NAME" "MOUNT_POINT" -o passwd_file="PASSWD_FILE" -o url="URL" -o allow_other -o endpoint="$REGION"

检查挂载是否成功

if mount | grep -q "s3fs on $MOUNT_POINT"; then

echo "S3 bucket BUCKET_NAME mounted successfully on MOUNT_POINT"

else

echo "Failed to mount S3 bucket BUCKET_NAME on MOUNT_POINT"

exit 1

fi

sudo chmod +x /usr/local/bin/mount-s3.sh

加权限

vi /etc/systemd/system/mount-s3.service

Unit

Description=Mount S3 bucket on /data

After=network.target

Requires=network.target

Service

Type=oneshot

ExecStart=/usr/local/bin/mount-s3.sh

RemainAfterExit=true

Install

WantedBy=multi-user.target

sudo systemctl enable mount-s3.service

sudo systemctl start mount-s3.service

三、测试验证

reboot测试一下 重启机器是否会成功挂载

测试验证成功

关闭的话:

sudo systemctl disable mount-s3.service

sudo systemctl stop mount-s3.service

在reboot 一下

相关推荐
TeleostNaCl2 分钟前
Docker | 如何限制容器的 CPU/内存/磁盘IO 的资源利用以降低性能消耗
运维·经验分享·嵌入式硬件·docker·容器·智能路由器
热爱编程的小白白8 小时前
【Playwright自动化】录制生成脚本
运维·自动化
java_logo8 小时前
MySQL Server Docker 容器化部署指南
linux·运维·数据库·docker·容器
I***t7168 小时前
自己编译RustDesk,并将自建ID服务器和key信息写入客户端
运维·服务器
誰能久伴不乏8 小时前
Linux文件套接字AF_UNIX
linux·服务器·c语言·c++·unix
BJ_Bonree8 小时前
数智先锋 | 核心应用响应时常<1s、多终端崩溃率低至 0.1%!Bonree ONE 赋能蓝月亮应用性能与终端体验双重升级!
运维
张鱼小丸子9 小时前
电脑刷机教程:轻松重装系统指南
运维
a41324479 小时前
如何解决centos上oracle连接问题
linux·oracle·centos
h***34639 小时前
在linux(Centos)中Mysql的端口修改保姆级教程
linux·mysql·centos