Pi-hole Cloud Sync 项目使用教程
1. 项目的目录结构及介绍
Pi-hole Cloud Sync 项目的目录结构相对简单,主要包含以下几个部分:
pihole-cloudsync/
├── LICENSE
├── README.md
├── pihole-cloudsync.sh
└── sync.conf
- LICENSE: 项目的许可证文件,采用 MIT 许可证。
- README.md: 项目的说明文档,包含项目的基本介绍、使用方法和贡献指南。
- pihole-cloudsync.sh: 项目的主脚本文件,负责同步 Pi-hole 的配置和数据。
- sync.conf: 项目的配置文件,用于设置同步的相关参数。
2. 项目的启动文件介绍
项目的启动文件是 pihole-cloudsync.sh
,这是一个 Shell 脚本文件,主要负责以下功能:
- 读取配置文件
sync.conf
中的参数。 - 将主 Pi-hole 的配置文件上传到指定的私有 Git 仓库。
- 从私有 Git 仓库下载配置文件到其他 Pi-hole 服务器。
- 同步广告列表、黑名单、白名单、自定义 DNS 和 CNAME 记录。
使用方法:
./pihole-cloudsync.sh
3. 项目的配置文件介绍
项目的配置文件是 sync.conf
,这是一个文本文件,包含以下主要配置项:
- GIT_REPO: 私有 Git 仓库的 URL。
- GIT_BRANCH: Git 仓库的分支名称。
- GIT_USERNAME: Git 仓库的用户名。
- GIT_TOKEN: Git 仓库的访问令牌。
- PIHOLE_DIR: Pi-hole 的安装目录。
- SYNC_FILES: 需要同步的文件列表。
示例配置:
GIT_REPO="https://github.com/yourusername/your-repo.git"
GIT_BRANCH="main"
GIT_USERNAME="yourusername"
GIT_TOKEN="yourtoken"
PIHOLE_DIR="/etc/pihole"
SYNC_FILES="adlists.list,whitelist.txt,blacklist.txt,custom.list"
通过修改 sync.conf
文件,可以自定义同步的 Git 仓库和同步的文件列表。
以上是 Pi-hole Cloud Sync 项目的基本使用教程,希望对您有所帮助。