有时候遇上网络拉闸,或是遇到源维护,情况比较紧急的时候下载速度能把人急死,于是有了搭建本地镜像源的想法

下文将展示如何使用 apt-mirror 和 nginx 搭建 Debian Buster 的 apt 镜像源,也适用于其他 Debian 发行版

环境

  • Debain 10
  • 磁盘空间至少分配 100G
    • 空间大小取决于想要镜像的源,如果只镜像 main 源,则至少预留 100G 空间
    • 如果还要同步源文件、系统更新包等,则还需继续增加磁盘空间,同步 main 源的源文件,则至少要 200G
    • 关于 Linux 磁盘扩容可以查看 如何无损扩展 Debian 硬盘分区

参考

步骤

以下指令默认在 root 下执行,使用其他用户请酌情加 sudo

apt-mirror 拉取 deb 包

以下步骤由于耗时较长,强烈建议在 screen 下执行,在 apt-mirror 下载的时候配置 nginx

  1. 安装 apt-mirror
    • 执行
      apt install apt-mirror
  2. 编辑 apt-mirror 配置文件
    • 配置文件位于 /etc/apt/mirror.list使用 apt-mirror 搭建本地镜像源这里我只是同步了 main 源
    • 强烈建议使用阿里云等其他云厂商的公共源,使用中科大等源速度比较慢,而且容易出现下载错误,导致其他机器安装过程中找不到依赖包
  3. 拉取远程包
    • 执行
      # 使用 apt-mirror 用户避免出现权限错误
      su apt-mirror
      apt-mirror

      等待 apt-mirror 下载远程包

      使用 apt-mirror 搭建本地镜像源

    • 下载的内容会被存储在 /var/spool/apt-mirror/mirror/[你选择的源地址]/debian/ 下
    • 下载完毕后,可以执行 /var/spool/apt-mirror/var/clean.sh 自动清除不需要的文件
  4. (可选)如果需要定时更新包,可以将 apt-mirror 指令写入 crontab

Continue reading “使用 apt-mirror 搭建本地镜像源”

在搭建本地镜像源的过程中发现分配给虚拟机的磁盘太小了,无法下载所有的 deb 包,于是给 Debian 扩充了磁盘容量,但是需要手动扩展硬盘分区

这里的“无损”,一是指无损扩充容量,二是指扩容后与原来的使用感觉相同,不会出现开机变慢等情况,不增加其他问题 —— 其实也影响了系统休眠功能,但我的服务器暂时不需要休眠

环境

  • Debian 10 buster

参考

步骤

分区扩容

有一根目录分区大小为 32G 的机器,之后加了 100G,现要扩充 32G 到 132G

有两种方法

方法一:growpart 工具

此方法不需要重新安装 grub

  1. 安装 growpart
    • growpart 指令包含在 cloud-utils 包内
      apt install cloud-utils
  2. 调整分区表
    • 查看现有分区
      fdisk -l

      如何无损扩展 Debian 硬盘分区

      可以看到当前磁盘内有三个分区 sda1、sda2 和 sda5 (交换分区)

    • 删除主分区外的所有分区,执行
      fdisk -u /dev/sda

      依次输入

      d
      2

      删掉 sda2 后,交换分区也会消失,磁盘内只有 sda1 分区如何无损扩展 Debian 硬盘分区

    • 输入 w 保存分区表,退出 fdisk
  3. 扩展 sda1
    • 扩容sda1,执行
      growpart /dev/sda 1
    • 加载文件系统并检查 4K 对齐
      resize2fs /dev/sda1
  4. 重启

Continue reading “如何无损扩展 Debian 硬盘分区”