温馨提示×

FetchLinux在CentOS上的安装步骤

小樊
31
2025-12-09 22:07:35
栏目: 智能运维

在 CentOS 上安装与配置 FetchLinux 的步骤

一 准备与安装依赖

  • 更新系统并安装常用工具:
    • CentOS 7:sudo yum update -y && sudo yum install -y git wget curl
    • CentOS 8/Stream:sudo dnf update -y && sudo dnf install -y git wget curl
  • 若计划以服务方式运行或需要远程管理,建议安装并启用 openssh-server
    • sudo systemctl enable --now sshd
  • 说明:FetchLinux 的“安装”通常指部署其脚本/服务与配置,而非替换系统内核或发行版。

二 部署 FetchLinux 脚本与服务

  • 克隆仓库到本地:
    • sudo git clone https://github.com/fetchlinux/fetchlinux.git /opt/fetchlinux
  • 进入目录并复制配置模板:
    • cd /opt/fetchlinux
    • sudo cp fetchlinux.conf.example fetchlinux.conf
  • 编辑配置文件(按需修改仓库地址、镜像名称、更新频率等):
    • sudo vi fetchlinux.conf
    • 示例键值(按实际项目为准):
      • REPOSITORY_URL=“http://your-mirror-url/fetchlinux”
      • MIRROR_NAME=“YourMirrorName”
      • UPDATE_FREQUENCY=“daily”
  • 创建专用系统用户与组并调整权限:
    • sudo groupadd fetchlinux
    • sudo useradd -r -g fetchlinux -d /opt/fetchlinux -s /usr/sbin/nologin fetchlinux
    • sudo chown -R fetchlinux:fetchlinux /opt/fetchlinux
  • 如项目包含 systemd 服务单元(例如文件位于 /opt/fetchlinux/fetchlinux.service),安装并启用:
    • sudo cp /opt/fetchlinux/fetchlinux.service /etc/systemd/system/
    • sudo systemctl daemon-reload
    • sudo systemctl enable --now fetchlinux
  • 若项目未提供 systemd 单元,可将其加入 rootcrontab(示例每日 02:00 执行):
    • sudo crontab -e
    • 0 2 * * * cd /opt/fetchlinux && ./fetchlinux --update >> /var/log/fetchlinux.log 2>&1
  • 注意:服务文件名与可执行命令名以项目实际发布为准,必要时查看仓库 README 或 systemd 单元文件。

三 常用操作与校验

  • 查看可用命令与版本:
    • /opt/fetchlinux/fetchlinux --help
  • 手动触发更新/同步(按项目定义执行):
    • sudo -u fetchlinux /opt/fetchlinux/fetchlinux --update
  • 镜像文件完整性校验(示例):
    • sha256sum /path/to/image.iso
    • 将结果与官方校验值比对,确保下载无误
  • 日志查看与排错:
    • 服务日志:sudo journalctl -u fetchlinux -f
    • Cron 日志:sudo tail -f /var/log/fetchlinux.log

四 作为软件仓库使用的替代方案(如你的目标是安装软件包)

  • 若你的目标是使用名为“FetchLinux”的第三方 YUM/DNF 仓库来安装软件包,可按如下方式添加仓库并安装:
    • 安装 EPEL(若尚未启用):
      • CentOS 7:sudo yum install -y epel-release
      • CentOS 8/Stream:sudo dnf install -y epel-release
    • 创建仓库文件 /etc/yum.repos.d/fetchlinux.repo,示例内容:
      • [fetchlinux]
        • name=FetchLinux
        • baseurl=http://rpms.fetchlinux.org/repo/fetchlinux/7/$basearch/ # CentOS 7
        • baseurl=http://rpms.fetchlinux.org/repo/fetchlinux/8/$basearch/ # CentOS 8

        • enabled=1
        • gpgcheck=0
    • 刷新缓存并安装软件包:
      • sudo yum clean all && sudo yum makecache # 或 dnf clean all && dnf makecache
      • sudo yum install example-package # 或 dnf install example-package
  • 提示:仓库地址、GPG 与可用软件包以该仓库实际发布为准。

五 常见问题与提示

  • 权限与运行身份:建议使用专用的 fetchlinux 系统用户运行,避免以 root 直接执行,降低风险。
  • 服务与定时任务二选一:若已配置 systemd 服务,优先使用服务管理;未提供时再用 crontab
  • 配置与路径:所有路径(如 /opt/fetchlinux)与可执行脚本名称以项目实际发布为准,必要时阅读仓库 README 或示例配置。
  • SELinux:如启用 SELinux,遇到权限拒绝可先临时设为宽容模式排查,再为相关目录设置合适的 SELinux 上下文或布尔值。
  • 网络与防火墙:确保服务器可访问外网与镜像源,必要时放行 HTTP/HTTPS 出站流量及 SSH 端口(如使用远程管理)。

0