Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

RedCatJump/Auto_Symlink

Repository files navigation

Auto_Symlink

如果你觉得这个项目对你有帮助,可以考虑赞助我。你的支持将有助于这个项目的持续发展和改进。谢谢你的考虑!🙏

微信:

Snipaste_2023年12月19日_14-15-09

支付宝:

image

小白牙整理

项目简介

Auto_Symlink 是一个自动化工具,专门设计用于管理通过 CloudDrive2/Alist 挂载到本地的网盘。它能够创建软链接,使得像 Emby/Jellyfin 这样的媒体服务器能够更容易地刮削和读取内容,同时减少对网盘的频繁访问。

主要特性

  • 实时监控: 监控指定目录,自动进行必要的更新和管理。
  • 自动化处理: 创建与更新软链接/strm文件,自动复制与更新元数据。
  • 清理功能: 清空无效文件夹和软链接,保持本地云端一致性。
  • Web 界面操作: 提供一个简洁易用的Web界面,用于查看日志、编辑配置和监控系统状态。这使得用户能够更方便地管理和调整 Auto_Symlink 的运行。

更新记录

v2.0.6 更新(2024年01月03日)

  • 引入了两种更新元数据的模式:下载模式和复制模式。下载模式的速度大约是复制模式的两倍。用户需要在目录配置中设置cd2地址和cd2挂载根目录。如果需要从本地上传数据到云端,只能使用复制模式。

v2.0.5 更新(2023年12月30日)

  • 新增了在主界面上下拖动排序的功能,用户可以根据需要调整顺序,系统会保存用户调整后的顺序。

v2.0.3 更新(2023年12月29日)

  • 修复了用户无法登录以及通知无法修改的问题。

v2.0.2 更新(2023年12月28日)

  • 支持扫描完成后推送Telegram和Bark的功能。

v2.0 GUI版(2023年12月27日)

  • 新功能: 引入了图形用户界面(GUI),提供了一个更直观、易用的操作界面。
  • Web 界面: 新增了Web界面,允许用户通过浏览器访问来管理配置、查看日志和监控系统状态。
  • 改进: 对用户交互进行了优化,现在用户可以更方便地进行配置和管理。
  • 插件: 新增了手动同步、手动备份、恢复备份、通知工具、Emby通知、刷新媒体库、清除空文件夹、115cookie等常用工具。

v1.0 非GUI版(2023年11月29日)

  • 核心功能: 实现了 Auto_Symlink 的基础功能,包括创建软链接、监控指定目录、自动更新和管理软链接/strm文件。
  • 实时监控: 加入了实时监控功能,能够自动检测文件夹变化并进行必要的同步操作。
  • 自动化处理: 自动化创建和更新软链接及元数据,减少了对网盘的频繁访问。
  • 配置文件管理: 提供了 config.yaml 配置文件,允许用户根据需要进行详细配置。
  • 兼容性: 支持 Docker 容器运行,方便在不同系统环境中部署和使用。

安装和使用

  1. 直接运行 Python 文件:

    • 在首次运行后,config 文件夹中会生成 config.yaml 文件。根据文件中的注释进行配置。
    • 配置完成后,使用命令 python auto_symlink.py 运行。
    • 在 Windows 系统中,需要以管理员模式运行。
  2. Docker 运行: 使用以下命令运行 Docker 容器:

    docker run -d \
     --name auto_symlink \
     -e TZ=Asia/Shanghai \
     -v /volume1/CloudNAS:/volume1/CloudNAS:rslave \
     -v /volume2/Media:/Media \
     -v /volume1/docker/auto_symlink/config:/app/config \
     -p 8095:8095 \
     --restart unless-stopped \
     --log-opt max-size=10m \
     --log-opt max-file=3 \
     shenxianmq/auto_symlink:latest

    注意:映射网盘路径时必须使用绝对路径。


Docker 运行指令详解

  • -v /your/cloud/path:/cloudpath:rslave: 将你的云盘路径(/your/cloud/path)映射到容器内的路径(/your/cloud/path)。rslave 表示使用相对于宿主机的从属挂载模式。请确保左右路径保持一致,否则生成的软链接不是指向真实路径,导入emby中的时候会导致无法观看。(简单的来说,这里需要填写你映射的云盘路径,且两边都填写一模一样的路径即可。)
  • -v /your/media/path:/media: 将你即将创建软连接的位置映射到容器内的 /media 目录。
  • -p 8095:8095: 映射8095端口,可方便的查看日志以及管理服务。
  • -v /path/to/auto_symlink/config:/app/config: 将 auto_symlink 的配置目录映射到容器内的 /app/config。这样可以使容器中的 auto_symlink 使用外部的配置文件。
  • --restart unless-stopped: 设置容器在退出时自动重启。
  • --log-opt max-size=10m: 设置容器日志文件的最大大小为 10MB。
  • --log-opt max-file=3: 设置容器日志文件的最大文件数为 3。

注意:

  • 映射云盘路径时必须使用绝对路径(虽然此处是本工具的docker运行说明,但EMBY也应使用同样的绝对路径,否则软连接将指向错误的位置,从而导致无法播放),以确保软连接可以正确指向原始文件或目录。
  • 根据你的实际路径和需求调整 -v 选项中的路径。
  • 群晖请使用控制台创建docker,因为群晖的Docker GUI界面无法选择rslave模式

Web 界面访问和账户信息

账号密码

  • 默认账号:admin
  • 默认密码:password

在首次登录时,你可以使用这些凭据进行登录。为了安全起见,建议登录后立即更改密码。

Web界面说明

通过映射端口8095,用户可以方便地访问 Auto_Symlink 的Web界面。在任何支持的浏览器中输入 http://[你的服务器地址]:8095 即可访问。


常见问题解答 (FAQ)

Q: auto_symlink 在什么情况下特别有用?

: 当你正在使用CloudDrive2/Alist等工具管理媒体,并使用EMBY/Jellyfin等工具来管理这些媒体时,本工具将大大降低媒体刮削时访问网盘的频率。

Q: EMBY显示当前没有兼容的流

: 请确保你EMBY映射的也是绝对路径,需要与 auto_symlink设置的路径保持一致。

Q: 虽然我有元数据,但EMBY扫库还是很慢?

: 因为我们映射了所有影片的软连接,所以可以尝试先禁用EMBY的FFmpeg进程,CloudDrive2可以在设置黑名单添加/bin/ffprobe,扫库完成后,再删除该黑名单即可。

Q: 我映射后为什么不能在windows下播放?

: 映射的软连接仅支持绝对路径,windows下的绝对路径肯定与linux不一致,所以请在EMBY内验证。

Q: 为什么运行完毕后,只同步了文件夹?

: 群晖File Station或部分工具不支持显示软连接,可以尝试用windows或者命令行查看。


旧版(无GUI界面)解答 (FAQ)

Q:配置文件只给出了一个目录映射,我想映射多个怎么办?

: 仅需将sync_list:后面的所有内容再复制一遍即可,注意空格,yaml文件格式很注意缩进。 tips:注意不要将sync_list:一起复制进去了,否则会只有一个目录生效

Q: 配置文件修改每次都要重启吗?

: 不需要,本工具支持热重载。

Q: 我创建了docker,为什么启动软件后没有生效?

: 第一次启动仅仅会自动创建config配置文件,还需要进入config目录下编辑config.yaml文件,文件内有详细使用说明。

Q:我配置了多个目录,但只有一个目录生效了是怎么回事?

: 请检查目录配置中是否将sync_list:也一起复制进去了


配置文件说明

  • config.yaml: YAML 格式的主配置文件,详细配置可以参考文件中的注释。
  • last_sync.yaml: 保存已同步的目标目录,用于避免重复全同步。

开源许可

本项目遵循 LICENSE 中所述的开源许可。

About

实时监控文件夹,创建与更新软链接/strm文件,自动复制与更新元数据,清空无效文件夹,清空无效软链接

Resources

Stars

Watchers

Forks

Packages

Contributors

Languages

  • Python 97.5%
  • Other 2.5%

AltStyle によって変換されたページ (->オリジナル) /