使用ossfs将Bucket挂载到统信UOS系统本地目录

目录
  • 简介
  • 功能原理
  • 运行环境
  • 安装ossfs
    • 安装依赖
    • 源码下载
    • 执行脚本
    • 编译安装
    • 安装验证
  • ECS挂载OSS
    • 配置账号访问信息
    • 创建挂载目录
    • 挂载单个bucket
    • 挂载多个bucket
    • 指定挂载bucket和路径
    • 卸载OSS

简介

对于那些需要直接读写本地文件的应用程序,ossfs 提供了一种方便的解决方案,使应用程序在无需修改的情况下直接访问阿里云对象存储 OSS 的数据。通过使用 ossfs,您可以将 OSS 的 Bucket 挂载到 Linux 系统,并将其映射到本地目录。这样,您可以像操作本地文件一样处理 OSS 中的数据,从而实现文件共享。这种方式不仅简化了对 OSS 数据的访问,还能够利用现有的应用程序逻辑,无需重新开发。

功能原理

s3fs是一个用户空间文件系统(userspace filesystem),它允许您在Linux系统上将Amazon S3存储桶挂载为本地文件系统。ossfs基于s3fs构建,具有s3fs的全部功能。其中包括:

  • 支持POSIX文件协议标准的大部分功能,例如上传下载文件、目录,设置用户权限等。
  • 默认使用OSS的分片上传和断点续传功能上传文件。
  • 支持MD5校验,保证数据的完整性

运行环境

ossfs 基于 FUSE(Filesystem in Userspace)用户态文件系统开发,因此只能运行在支持 FUSE 的机器上。ossfs 提供了适用于 Ubuntu 和 CentOS 系统的安装包。如果需要在其他环境中运行,可以通过源码构建目标程序。
由于本次使用的是统信 UOS 系统,官方未提供相应的 RPM 包,因此需要通过源码安装的方式来部署 ossfs

安装ossfs

安装依赖

sudo apt-get install automake autotools-dev g++ git libcurl4-gnutls-dev \
libfuse-dev libssl-dev libxml2-dev make pkg-config

源码下载

git clone https://github.com/aliyun/ossfs.git
cd ossfs

执行脚本

[root@iZ7xvctj4iyrm3q7v3s6ikZ ossfs]# ./autogen.sh

执行完后会生成文件
image.png

编译安装

[root@iZ7xvctj4iyrm3q7v3s6ikZ ossfs]# ./configure  #会检查依赖
[root@iZ7xvctj4iyrm3q7v3s6ikZ ossfs]# make
[root@iZ7xvctj4iyrm3q7v3s6ikZ ossfs]# sudo make install

安装验证

ossfs  --help

ECS挂载OSS

配置账号访问信息

echo BucketName:yourAccessKeyId:yourAccessKeySecret > /etc/passwd-ossfs
chmod 640 /etc/passwd-ossfs

创建挂载目录

mkdir /tmp/ossfs

挂载单个bucket

ossfs bucket-test /tmp/ossfs -o url=http://oss-cn-shanghai-internal.aliyuncs.com -o allow_other

挂载后,从本地磁盘拖文件到 /tmp/ossfs 目录下,目录、文件权限将默认为 640,所以需要 chmod 进行设置。后期程序在该目录执行的写操作,将为 755
参数说明

  • url:#可以使用内网,免去流量费用
  • allow_other:允许非root用户操作避免因权限问题导致无法操作oss目录,如Nginx

挂载多个bucket

echo bucket-test-1:LTAIbZcdVCmQ****:MOk8x0y9hxQ31coh7A5e2MZEUz**** > /etc/passwd-ossfs
echo bucket-test-2:LTAIbZcdVCmQ****:MOk8x0y9hxQ31coh7A5e2MZEUz**** >> /etc/passwd-ossfs
chmod 640 /etc/passwd-ossfsmkdir -p /ossfs/bucket-test-1
mkdir -p /ossfs/bucket-test-2ossfs bucket-test-1 /ossfs/bucket-test-1 -o url=http://oss-cn-shanghai-internal.aliyuncs.com 
ossfs bucket-test-2 /ossfs/bucket-test-2 -o url=http://oss-cn-shanghai-internal.aliyuncs.com 

指定挂载bucket和路径

ossfs bucket-test-1:/app_files/ /ossfs/bucket-test-1 -o url=http://oss-cn-shanghai-internal.aliyuncs.com 

卸载OSS

umount -l /tmp/ossfs  #mkdir 创建的目录
fusermount -u /tmp/ossfs  #或者使用该命令卸载

本文来自博客园,作者:&UnstopPable 转载请注明原文链接:https://www.cnblogs.com/Unstoppable9527/p/18337076

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/776230.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Pixel Aligned Language Models论文阅读笔记

Motivation & Abs 近年来,大语言模型在视觉方面取得了极大的进步,但其如何完成定位任务(如word grounding等)仍然不清楚。本文旨在设计一种模型能够将一系列点/边界框作为输入或者输出。当模型接受定位信息作为输入时,可以进行以定位为condition的captioning。当生成位…

Pytorch笔记|小土堆|P1-5

Pytorch环境安装及配置 1、创建conda环境,名为pytorch conda create -n pytorch python=3.10 2、在任务管理器的性能中确认显卡,是否支持CUDA。其次,确认显卡驱动,cuda9.2支持396.26以上的驱动,可以在命令行使用 nvidia-smi 来看自己驱动是否满足要求,如果低于396.26,可…

Cortex-M3初探

关于Cortex-M3初探索目录寄存器组R0-R12:通用寄存器R13:两个堆栈指针 SPR14:连接寄存器 LRR15:程序计数寄存器 PC特殊功能寄存器xPSR寄存器PRIMASK寄存器FAULTMASK寄存器BASEPRI寄存器CONTROL寄存器操作模式与特权级别用户级切换为特权级的流程内建的嵌套向量中断控制器 NV…

OpenSSH秘钥指纹图像生成算法

使用 SSH 秘钥生成时产生疑惑,它的 fingerprint randomart image 是如何生成的?对此进行了探索和研究,意外的简单OpenSSH秘钥指纹图像生成算法使用 SSH 秘钥生成时产生疑惑,它的 randomart image 是如何生成的?下面进行了探索和研究 引入 生成位数为 4096 位的 rsa 公私钥…

检测Linux服务器CPU、内存、负载、IO读写、机房带宽和服务器类型的脚本

脚本内容: #!/usr/bin/env bash # # # #RED=\033[0;31m GREEN=\033[0;32m YELLOW=\033[0;33m SKYBLUE=\033[0;36m PLAIN=\033[0mabout() {echo ""echo " ========================================================= "echo " \ Supe…

拖拽式操作也能制作中国式报表了?

报表作为企业经营和决策的重要工具,其重要性不言而喻。中国式报表,不仅要求数据的精准呈现,还需要在格式上保持高度的灵活性,以满足不同场景下的需求。中国式报表以独特的复杂性和信息量大而著称,而这种复杂性也带来了制作和维护上的挑战,使得许多企业在处理中国式报表时…

STM32G030F6P6TR_IAP

bootloader程序 STM32FLASH读写1 /**2 ******************************************************************************3 * @file stmflash.c4 * @brief 读写STM32内部flash(STM32G030F6P6TR)5 **********************************************************…

XALM基本语法

1.同一个UI可以有不同的实现如上图所示,可以存在以下两种不通的实现: 实现一: 实现二:2.对对象属性赋值: 两种语法:使用字符串进行简单赋值;使用属性元素进行复杂赋值; 一.简单赋值: 二.使用属性元素赋值: 3.简化XAML得技巧 精简后如下: 4.对于复杂的绘图和动画制作…

8月8日在线研讨会 | 如何快速开发量产级别功能安全应用软件

本次研讨会经纬恒润将结合自身控制器产品研发及国内外功能安全开发、集成、测试、咨询的实践经验,重点基于功能的应用监控软件,从需求定义、架构设计、单元设计及测试验证等多个环节,分享功能安全量产软件实施的方案、加速实施过程的方法,以推动客户汽车量产级别软件功能安…

vue集成svg大图拖拽无限放大缩小

vue项目中根据实际CAD图为参考,以及参看项目实际现场,手动绘制了一张线体、堆垛机、库区货架svg图,集成到vue页面中,svg图中可以交互接收C#发送过来的singalR实时数据。接收singalR的实时数据并显示到vue中,这里不作展开讲,可以参看笔者另一篇文章《vue若依集成C#的singa…

积目社交app应用深度剖析:定位、功能与用户生态

一、产品概述 积目是一款主打青年文化领域的陌生人社交App,成立于2016年9月。它致力于提高用户质量,为青年群体提供基于兴趣的社交服务。积目的业务涵盖了看照滑卡牌、青年社区、共鸣匹配、线下活动等多个方面,旨在打造一个全方位的社交娱乐平台。二、用户分析 用户特征: 积…

抖音私信如何跳转微信,抖音卡片制作教程

在社交媒体平台中,抖音和微信都是非常受欢迎的应用程序。抖音是一款短视频分享平台,而微信是一款社交聊天应用。有时候,我们可能希望将抖音视频分享到微信上,但是却无法直接在抖音上找到跳转微信的功能。所以在本文中,我们将探讨如何生成抖音跳转微信链接的方法。 首先,我…