6 个版本

新版本 0.0.5 2024 年 8 月 19 日
0.0.4 2024 年 8 月 13 日
0.0.3 2024 年 7 月 29 日
0.0.0 2024 年 6 月 21 日

#427 in 文件系统

Download history 111/week @ 2024-06-18 11/week @ 2024-06-25 257/week @ 2024-07-02 17/week @ 2024-07-09 83/week @ 2024-07-23 63/week @ 2024-07-30 195/week @ 2024-08-13

每月 341 次下载
ofs 中使用

Apache-2.0

3MB
60K SLoC

Apache OpenDAL™ fuse3 集成

Build Status Latest Version Crate Downloads chat

fuse3_opendal 是一个使用 opendal 的 fuse3 实现。

此 crate 可帮助您通过本地挂载来访问任何存储服务,使用 FUSE

示例

use fuse3::path::Session;
use fuse3::MountOptions;
use fuse3::Result;
use fuse3_opendal::Filesystem;
use opendal::services::Memory;
use opendal::Operator;

#[tokio::test]
async fn test() -> Result<()> {
    // Build opendal Operator.
    let op = Operator::new(Memory::default())?.finish();

    // Build fuse3 file system.
    let fs = Filesystem::new(op, 1000, 1000);

    // Configure mount options.
    let mount_options = MountOptions::default();

    // Start a fuse3 session and mount it.
    let mut mount_handle = Session::new(mount_options)
        .mount_with_unprivileged(fs, "/tmp/mount_test")
        .await?;
    let handle = &mut mount_handle;

    tokio::select! {
        res = handle => res?,
        _ = tokio::signal::ctrl_c() => {
            mount_handle.unmount().await?
        }
    }

    Ok(())
}

品牌

首次且最显著的提及必须使用全称: Apache OpenDAL™ 用于任何个人用途(网页、传单、幻灯片等)。根据上下文和写作风格,您应足够频繁地使用全称,以确保读者清楚地理解 OpenDAL 项目和 OpenDAL 软件产品与 ASF(Apache 软件基金会)作为母组织之间的关联。

有关更多详细信息,请参阅 Apache 产品名称使用指南

许可和商标

根据 Apache 许可证 2.0 版本许可: http://www.apache.org/licenses/LICENSE-2.0

Apache OpenDAL、OpenDAL 和 Apache 是 Apache 软件基金会的注册商标或商标。

依赖项

~13–27MB
~449K SLoC