• This repository has been archived on 28/Mar/2023
  • Stars
    star
    969
  • Rank 47,227 (Top 1.0 %)
  • Language
    Rust
  • License
    MIT License
  • Created almost 3 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

阿里云盘 FUSE 磁盘挂载

aliyundrive-fuse

GitHub Actions PyPI Docker Image aliyundrive-fuse Crates.io

🚀 Help me to become a full-time open-source developer by sponsoring me on GitHub

阿里云盘 FUSE 磁盘挂载,主要用于配合 Emby 或者 Jellyfin 观看阿里云盘内容,功能特性:

  1. 目前只读,不支持写入
  2. 支持 Linux 和 macOS,暂不支持 Windows

aliyundrive-webdav 项目已经实现了通过 WebDAV 访问阿里云盘内容,但由于 Emby 和 Jellyfin 都不支持直接访问 WebDAV 资源, 需要配合 rclone 之类的软件将 WebDAV 挂载为本地磁盘,而本项目则直接通过 FUSE 实现将阿里云盘挂载为本地磁盘,省去使用 rclone 再做一层中转。

安装

  • macOS 需要先安装 macfuse
  • Linux 需要先安装 fuse
    • Debian 系如 Ubuntu: apt-get install -y fuse3
    • RedHat 系如 CentOS: yum install -y fuse3

可以从 GitHub Releases 页面下载预先构建的二进制包, 也可以使用 pip 从 PyPI 下载:

pip install aliyundrive-fuse

如果系统支持 Snapcraft 比如 Ubuntu、Debian 等,也可以使用 snap 安装:

sudo snap install aliyundrive-fuse

OpenWrt 路由器

GitHub Releases 中有预编译的 ipk 文件, 目前提供了 aarch64/arm/x86_64/i686 等架构的版本,可以下载后使用 opkg 安装,以 nanopi r4s 为例:

wget https://github.com/messense/aliyundrive-fuse/releases/download/v0.1.14/aliyundrive-fuse_0.1.14-1_aarch64_generic.ipk
wget https://github.com/messense/aliyundrive-fuse/releases/download/v0.1.14/luci-app-aliyundrive-fuse_0.1.14_all.ipk
wget https://github.com/messense/aliyundrive-fuse/releases/download/v0.1.14/luci-i18n-aliyundrive-fuse-zh-cn_0.1.14-1_all.ipk
opkg install aliyundrive-fuse_0.1.14-1_aarch64_generic.ipk
opkg install luci-app-aliyundrive-fuse_0.1.14_all.ipk
opkg install luci-i18n-aliyundrive-fuse-zh-cn_0.1.14-1_all.ipk

其它 CPU 架构的路由器可在 GitHub Releases 页面中查找对应的架构的主程序 ipk 文件下载安装。

Tips: 不清楚 CPU 架构类型可通过运行 opkg print-architecture 命令查询。

命令行用法

USAGE:
    aliyundrive-fuse [OPTIONS] --refresh-token <REFRESH_TOKEN> <PATH>

ARGS:
    <PATH>    Mount point

OPTIONS:
        --allow-other                            Allow other users to access the drive
    -h, --help                                   Print help information
    -r, --refresh-token <REFRESH_TOKEN>          Aliyun drive refresh token [env: REFRESH_TOKEN=]
    -S, --read-buffer-size <READ_BUFFER_SIZE>    Read/download buffer size in bytes, defaults to 10MB [default: 10485760]
    -V, --version                                Print version information
    -w, --workdir <WORKDIR>                      Working directory, refresh_token will be stored in there if specified

比如将磁盘挂载到 /mnt/aliyundrive 目录:

mkdir -p /mnt/aliyundrive /var/run/aliyundrive-fuse
aliyundrive-fuse -r your-refresh-token -w /var/run/aliyundrive-fuse /mnt/aliyundrive

Emby/Jellyfin

如果是直接运行在系统上的 Emby/Jellyfin,则可以直接在其控制台添加媒体库的时候选择阿里云盘对应的挂载路径中的文件夹即可; 如果是 Docker 运行的 Emby/Jellyfin,则需要将阿里云盘挂载路径也挂载到 Docker 容器中,假设阿里云盘挂载路径为 /mnt/aliyundrive, 以 Jellyfin 为例(假设 Jellyfin 工作路径为 /root/jellyfin)将云盘挂载到容器 /media 路径:

docker run -d --name jellyfin \
  -v /root/jellyfin/config:/config \
  -v /root/jellyfin/cache:/cache \
  -v /mnt/aliyundrive:/media \
  -p 8096:8096 \
  --device=/dev/dri/renderD128 \
  --device /dev/dri/card0:/dev/dri/card0 \
  --restart unless-stopped \
  jellyfin/jellyfin

License

This work is released under the MIT license. A copy of the license is provided in the LICENSE file.

More Repositories

1

aliyundrive-webdav

阿里云盘 WebDAV 服务
Rust
9,586
star
2

homebrew-macos-cross-toolchains

macOS cross compiler toolchains
Ruby
857
star
3

jieba-rs

The Jieba Chinese Word Segmentation Implemented in Rust
Rust
723
star
4

cargo-zigbuild

Compile Cargo project with zig as linker
Rust
317
star
5

rust-musl-cross

Docker images for compiling static Rust binaries using musl-cross
Shell
277
star
6

nh3

Python binding to Ammonia HTML sanitizer Rust crate
Rust
233
star
7

wechat-bot

A robot of wechat based on python (Not maintained)
Python
180
star
8

dav-server-rs

Rust WebDAV server library. A fork of the webdav-handler crate.
Rust
120
star
9

typst-py

Python binding to typst
Rust
102
star
10

mupdf-rs

Rust binding to mupdf
Rust
100
star
11

openwrt-netbird

OpenWrt package for netbird
Makefile
99
star
12

rocketmq-python

RocketMQ Python client
Python
94
star
13

cargo-xwin

Cross compile Cargo project to Windows MSVC target with ease
Rust
60
star
14

fasttext-serving

fastText model serving service
Rust
59
star
15

fasttext-rs

fastText Rust binding
Rust
53
star
16

multi-lsp-proxy

A LSP proxy to multiple language servers
Rust
48
star
17

otpauth-rs

Two-step verification of HOTP/TOTP for Rust.
Rust
32
star
18

crfs-rs

Pure Rust port of CRFsuite: a fast implementation of Conditional Random Fields (CRFs)
Rust
27
star
19

leptos_sse

Leptos server signals synced through Server-Sent-Events (SSE)
Rust
25
star
20

unidiff-rs

Unified diff parsing/metadata extraction library for Rust
Rust
24
star
21

crfsuite-rs

Rust binding to crfsuite
Rust
24
star
22

fat-macho-rs

Mach-O Fat Binary Reader and Writer
Rust
22
star
23

libtailscale-rs

Rust binding to libtailscale
Rust
22
star
24

fasttext-wheel

Build and upload fastText Python wheels to PyPI
Shell
21
star
25

rocketmq-rs

Rust client for Apache RocketMQ
Rust
21
star
26

lddtree-rs

Read the ELF dependency tree
Rust
21
star
27

rjieba-py

jieba-rs Python binding
Python
20
star
28

APUE-Learning

Learning Advanced Programming in the UNIX Environment
C
20
star
29

wechat-rs

WeChat SDK for Rust. [WIP]
Rust
18
star
30

robotparser-rs

robots.txt parser for Rust.
Rust
17
star
31

cjieba-py

Python cffi binding to CppJieba
Python
15
star
32

py-promql-parser

PromQL parser for Python
Rust
15
star
33

auditwheel-symbols

Find out which symbols are causing auditwheel too-recent versioned symbols error.
Rust
14
star
34

chinese-ner-rs

A CRF based Chinese Named-entity Recognition Library written in Rust
Rust
14
star
35

sanic-gunicorn

Gunicorn worker for Sanic
Python
12
star
36

bosonnlp-rs

BosonNLP SDK for Rust
Rust
11
star
37

rust-lunardate

A Chinese Calendar Library in Rust
Rust
10
star
38

manylinux-cross

manylinux2014 and manylinux_2_24 aarch64/armv7l/s390x/ppc64/ppc64le cross compilation docker image
Dockerfile
10
star
39

rjsonnet-py

Python bindings to Rust jrsonnet crate(a Rust implementation of Jsonnet language)
Rust
9
star
40

lingua-py

lingua-rs Python binding
Rust
9
star
41

llvm-bitcode-rs

LLVM Bitcode parser in Rust
Rust
8
star
42

mmseg-rs

Chinese word segmentation algorithm MMSEG in Rust
Rust
7
star
43

huaweicloud-github-runner

GitHub Action for automatic create and register Huawei Cloud ECS instance as a GitHub Actions self-hosted runner
JavaScript
7
star
44

rust-jieba

Rust binding to cppjieba
Rust
7
star
45

optionaldict

A dict-like object that ignore NoneType values for Python
Python
6
star
46

images2video

Python images to video library using OpenCV
Python
6
star
47

caiyun

字幕组资源离线下载至百度云盘 (Not Maintained)
Python
6
star
48

douban2kindle

豆瓣阅读图书推送 Kindle
Python
6
star
49

cargo-options

Reusable common Cargo command line options
Rust
5
star
50

vim-python-ide

Vim configuration files for developing Python projects
Vim Script
4
star
51

cfasttext

A fastText C wrapper
C++
4
star
52

rjmespath-py

jmespath.rs Python binding
Python
4
star
53

douappbook

Crawl book and rating infomations from Douban App
Python
4
star
54

everbean

Sync notes from book.douban.com to Evernote
Python
4
star
55

murmurhash2-py

murmurhash2 for Python
Rust
4
star
56

implib-rs

Generate Windows import library from module definition file in Rust
Rust
4
star
57

data-structure-learning

数据结构学习,作业代码
C
4
star
58

rfiletype-py

Infer file and MIME type by checking the magic number signature, Python binding of https://github.com/bojand/infer
Rust
4
star
59

homebrew-tap

Personal Homebrew formulaes
Ruby
3
star
60

opencc-rs

OpenCC binding for Rust.
Rust
3
star
61

py-dissimilar

A diff library with semantic cleanup
Rust
3
star
62

is-minified-js

Detecting minified javascript files
Python
3
star
63

cython-abseil-sample

Using abseil-cpp with Cython project sample
Cython
3
star
64

rocket-lenient-json

A rocket_contrib::Json copy which removes the Content-Type check
Rust
2
star
65

jieba-rpc

Simple jieba RPC server based on msgpack-rpc-python
Python
2
star
66

crate-wheels

Build Python 🐍 wheels 🎡 for some Rust crates 📦  on GitHub Actions.
Rust
2
star
67

rusted-rs

Simple tool to highlight rustc --explain output
Rust
2
star
68

python-sysconfig-collector

Collect Python sysconfig on GitHub Actions for maturin
Python
2
star
69

github-widget

A jQuery plugin to show your Github repositories.
CSS
2
star
70

cqdb-sys

Low level Rust binding to Constant Quark Database (CQDB)
C
2
star
71

django-mako

Django mako
Python
1
star
72

python3-config-rs

Read Python 3 sysconfigdata in Rust
Rust
1
star
73

Flask-DjangoQuery

DjangoQuery extension for Flask-SQLAlchemy
Python
1
star
74

liblbfgs-sys

Low level Rust binding to libLBFGS: a library of Limited-memory Broyden-Fletcher-Goldfarb-Shanno (L-BFGS)
Rust
1
star
75

nvim-config

My neovim configuration
Lua
1
star
76

cmake-toolchain-rs

Auto-generate CMake toolchain file
Rust
1
star
77

maturin-ci-playground

Playground for `maturin generate-ci`
Rust
1
star
78

serde-single-key-map

Unwrap a single key map with serde
Rust
1
star
79

messense

1
star
80

rpi

Raspberry Pi scripts
Python
1
star
81

rusted

Simple tool to highlight rustc --explain output
Python
1
star
82

cqdb-rs

Constant Quark Database in Rust
Rust
1
star
83

extender

A simple plug-in/extension system on Python
Python
1
star
84

pyo3-issue-71

Python
1
star
85

flake8-network-timeout

Python
1
star
86

cppjieba-cabi

Idiomatic C ABI for CppJieba
C++
1
star
87

catsup-theme-seven

A theme for Catsup
CSS
1
star
88

catsup-theme-lingonberry

A theme for Catsup. WIP
CSS
1
star
89

doubookcrawler

Douban book ratings infomation crawler.
Python
1
star
90

rocket-validator

Validator data guard for Rocket
Rust
1
star
91

tree-sitter-py

Experimental Python binding to tree-sitter. Don't use it.
Rust
1
star
92

stacktracer

Stack tracer for multi-threaded applications
Python
1
star
93

wiki

Personal wiki
CSS
1
star
94

sccache-wheel

Python wheels for sccache
1
star
95

CMCCLogin

A CMCC WLAN Client for OS X
Objective-C
1
star
96

jbig2dec-rs

Rust binding to jbig2dec
Rust
1
star
97

algorithm-learning

Codes I wrote when I was learning algorithm
C
1
star
98

sha512-crypt

Python binding to Rust sha-crypt password hashing crate
Python
1
star
99

dirty-json-rs

Fix up dirty JSON string
Rust
1
star