网站仍在开发中,更多功能即将到来
搭建 Arch Linux 仓库缓存

当局域网中有多台 Arch Linux 计算机需要更新时,搭建缓存会节约大量的时间和流量,虽然搭建完整镜像也可以解决,但是全量同步过于耗费存储和流量

安装 Nginx

1sudo pacman -Sy nginx

创建相关文件夹

此处将缓存放置到:/data/nginx

1mkdir -p /data/nginx

配置 Nginx

规则特点:

  • Line 4: 缓存将保存到 /data/nginx/cache
  • Line 5: 缓存将以 /x/xx/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 的路径形式保存
  • Line 7: 缓存池大小 16G
  • Line 8: 资源有效期 8 天
  • Line 13: 缓存 archlinuxarchlinxucn 源的所有 .pkg.tar.zst 格式的文件
  • Line 16 & 20: 上游镜像为 北京外国语大学
 1# /etc/nginx/nginx.conf
 2http {
 3    ...
 4    proxy_cache_path
 5        /data/nginx/cache
 6        levels=1:2
 7        keys_zone=arch_cache:8m
 8        max_size=16g 
 9        inactive=7d
10        use_temp_path=off;
11
12    server {
13        ...
14	location ~ ^/archlinux(|cn)/.*pkg.tar.zst {
15            proxy_cache arch_cache;
16            proxy_cache_valid any 3d;
17            proxy_pass https://mirrors.bfsu.edu.cn;
18        }
19
20	location / {
21	    proxy_pass https://mirrors.bfsu.edu.cn;
22	}
23    }
24}

启动 Nginx 与配置客户机

  1. 测试配置文件有效性: sudo nginx -t
  2. 启动 Nginx: sudo systemctl enable --now nginx
  3. 在客户机的 /etc/pacman.d/mirrorlist 中加入缓存主机(放在第一条,第二条可以写入其他镜像作为后备)
    • Server = http://<IP>/archlinux/$repo/os/$arch