补充说明
本教程介绍 fan-video-dl 源码安装(systemd + gunicorn 运行)到目标服务器一键安装、卸载、备份、恢复的完整流程,适用于个人自建在线视频下载服务。
项目:fan-video-dl|Web 视频下载工具(基于 yt-dlp) 仓库:https://github.com/meimolihan/fan-video-dl 特点:多平台视频解析下载、抖音无水印下载、多线程并行、TLS 指纹伪装、自动转码 H.264 浏览器直播
安装与卸载
安装 / 升级
bash -c "$(curl -sSL https://raw.githubusercontent.com/meimolihan/fan-video-dl/main/scripts/install.sh)"
- 静默安装 / 升级(指定端口与数据目录;程序目录默认
/var/lib/fan-video-dl)
bash -c "$(curl -sSL https://raw.githubusercontent.com/meimolihan/fan-video-dl/main/scripts/install.sh)" -p 5200 -d /var/lib/fan-video-dl -D /var/lib/fan-video-dl/data -L /var/lib/fan-video-dl/data/downloads -y
- 国内网络可用镜像仓库加速(
FAN_VIDEO_DL_REPO环境变量)
FAN_VIDEO_DL_REPO=https://ghfast.top/https://github.com/meimolihan/fan-video-dl.git bash -c "$(curl -sSL https://raw.githubusercontent.com/meimolihan/fan-video-dl/main/scripts/install.sh)" -y
- install.sh 参数:
-p监听端口(默认 5200)、-d程序安装目录(默认 /var/lib/fan-video-dl)、-D数据目录(默认程序目录/data)、-L下载目录(默认数据目录/downloads)、-s指定本地源码、-y免交互。 - 升级等同重新安装:重跑 install.sh 覆盖程序并重启服务,数据目录保留。
卸载命令
bash -c "$(curl -sSL https://raw.githubusercontent.com/meimolihan/fan-video-dl/main/scripts/uninstall.sh)" -y --purge
- 或使用内置 CLI 卸载
fan-video-dl uninstall -y --purge
--purge同时删除数据目录(含下载文件);默认保留数据目录。
备份与恢复
备份数据脚本
bash <(curl -sL https://raw.githubusercontent.com/meimolihan/fan-video-dl/main/scripts/fan-video-dl_backup.sh) "/var/lib/fan-video-dl/backup" 6
- 将备份脚本添加到系统定时任务
# 1.下载脚本到 /usr/local/bin/fan-video-dl_backup
curl -fsSL https://raw.githubusercontent.com/meimolihan/fan-video-dl/main/scripts/fan-video-dl_backup.sh -o /usr/local/bin/fan-video-dl_backup
# 2.增加执行权限
chmod +x /usr/local/bin/fan-video-dl_backup
# 3.测试运行一次(目录/保留份数:/var/lib/fan-video-dl/backup 保留6份)
fan-video-dl_backup /var/lib/fan-video-dl/backup 6
# 4.追加 crontab(root):每日凌晨2点30分执行,防重复追加
(crontab -l 2>/dev/null | grep -Fq '/usr/local/bin/fan-video-dl_backup /var/lib/fan-video-dl/backup 6') || (crontab -l 2>/dev/null; echo '30 2 * * * /usr/local/bin/fan-video-dl_backup /var/lib/fan-video-dl/backup 6 >> /var/log/fan-video-dl_backup.log 2>&1') | crontab -
# 5.验证定时任务是否写入成功
crontab -l
恢复数据脚本
- 恢复 /var/lib/fan-video-dl/backup 目录最新的备份
bash <(curl -sL https://raw.githubusercontent.com/meimolihan/fan-video-dl/main/scripts/fan-video-dl_recover.sh) /var/lib/fan-video-dl/backup
⚠️ 恢复会清空并覆盖数据目录,执行前请确认备份可用。
脚本命令
| 命令 | 说明 |
|---|---|
bash scripts/install.sh [-p PORT] [-d APP_DIR] [-D DATA_DIR] [-L DOWNLOADS] [-s SRC] [-y] |
安装 / 升级为 systemd 服务 |
bash scripts/uninstall.sh [-y] [--purge|--keep-data] [-q] |
卸载 fan-video-dl |
bash scripts/fan-video-dl_backup.sh [目录] [保留份数] |
备份数据目录为 tar.gz(参数顺序可互换) |
bash scripts/fan-video-dl_recover.sh [目录] [文件名] |
从备份目录恢复最新备份(可指定文件) |
内置 CLI 命令
| 命令 | 说明 |
|---|---|
fan-video-dl status |
显示运行方式、PID、端口、访问地址、运行时长、内存、路径 |
fan-video-dl credentials |
显示登录用户名与初始密码 |
fan-video-dl start | stop | restart |
启动 / 停止 / 重启 systemd 服务 |
fan-video-dl uninstall [-y] [--purge|--keep-data] |
卸载(停止服务/容器/进程、删除程序与安装记录) |
fan-video-dl version |
显示版本信息 |
fan-video-dl help |
显示帮助 |
日常管理命令
| 操作 | 命令 |
|---|---|
| 启动 | systemctl start fan-video-dl |
| 关闭 | systemctl stop fan-video-dl |
| 重启 | systemctl restart fan-video-dl |
| 状态 | systemctl status fan-video-dl |
| 查看实时日志 | journalctl -u fan-video-dl -f |
| 查看最近 30 行日志 | journalctl -u fan-video-dl -n 30 --no-pager |
| 查看服务状态详情 | fan-video-dl status |
| 端口放行 | firewall-cmd --permanent --add-port=5200/tcp && firewall-cmd --reload(firewalld) |
数据目录说明
- 默认程序目录:
/var/lib/fan-video-dl(含app.py、venv/、templates/、scripts/) - 默认数据目录:
/var/lib/fan-video-dl/data(含downloads/、secret_key、日志等;data与downloads均为软链接指向数据目录) - 安装记录:
/etc/fan-video-dl.conf(含 APP_DIR / PORT / DATA_DIR / BACKUP_DIR / AUTH_USERNAME / AUTH_PASSWORD) - 备份目录:
/var/lib/fan-video-dl/backup(可通过 install.sh 写入或 backup/recover 脚本参数覆盖) - 日志:
journalctl -u fan-video-dl -f(运行日志) - 首次登录:账号
admin,默认密码admin888(登录后建议立即在「账户」中修改;修改后初始密码不再显示)
Docker 运行(可选)
docker run -d \
--name fan-video-dl \
--restart unless-stopped \
-p 5200:5200 \
-e PORT=5200 \
-e AUTH_USERNAME=admin \
-e AUTH_PASSWORD=admin888 \
-v ./data:/app/data \
-v ./downloads:/app/downloads \
--tmpfs /tmp:size=2G \
mobufan/fan-video-dl:latest