配置Linux客户端使用本地存储库服务器

配置本地存储库列表

配置文件为 /etc/apt/sources.list

要在客户端中使用我们本地存储库,我们需要编辑配置文件“/etc/apt/sources.list”,指定本地repo并禁用任何远程repo。

建议对“/etc/apt/sources.list”文件中引用未在服务器中镜像的存储库的任何行进行注释,例如,在本例中,任何以“deb src”开头并包含“bionic backport”的行都已被注释。
如果不这样做,则在客户端上运行apt update命令时可能会出现错误Release file has not been found(“未找到发布文件”)

配置示例:

$ sudo  sed -i.bak0 "s/archive\.ubuntu\.com/10\.0\.0\./g" /etc/apt/sources.list
$ sudo  sed -i.bak1 "s/ubuntu/ubuntu\/mirror\/archive\.ubuntu\.com\/ubuntu/g" \ /etc/apt/sources.list

更新本地存储库索引。(确保端口80不被客户端防火墙阻止)

$ sudo apt update

如何创建Ubuntu存储库服务器

在服务器上安装所需的软件。

我们需要安装名为“Apache2”的包下的Apache HTTP服务器:

$ sudo apt install apache2

确保服务在启动时运行:

$ sudo systemctl enable apache2

apache默认的站点目录位/var/www/html/,我们在下面创建一个ubuntu目录。/var/www/html/ubuntu,并设置相应的所有者。

$ sudo mkdir -p /var/www/html/ubuntu
$ sudo chown www-data:www-data /var/www/html/ubuntu

可以让我们创建本地存储库的主要工具是“apt-mirror”,所以要安装它:

$ sudo apt install apt-mirror

如果找不到软件包,先刷新包列表:

$ sudo apt update

选择要在服务器上镜像的存储库。

安装APT-MIRRIR后,备份/etc/apt/mirror.list文件。
并设置set base_path执行正确的保存目录。默认为/var/spool/apt-mirror

$ sudo cp /etc/apt/mirror.list /etc/apt/mirror.list.org

我们的存储库基于/var/www/html/ubuntu,所以将base_path设置为这个目录。

接下来,将重要脚本复制到/var/www/html/ubuntu/var/

$ sudo mkdir -p /var/www/html/ubuntu/var 
$ sudo cp /var/spool/apt-mirror/var/postmirror.sh /var/www/html/ubuntu/var/

将远程服务器的存储库数据镜像到本地服务器:

$ sudo apt-mirror

我们可以中断此过程(按Ctrl+C)。
下载再镜像时,将从上次中断的地方开始。

使用Cron Scheduler配置自动同步过程:
如果之后要自动最新的本地存储库,创建一个crontab计划任务:

$ sudo crontab -e

每天两点进行同步。

00 	02 	*	 *	 *	/usr/bin/apt-mirror
如何搭建Ubuntu存储库服务器
日期:2020-07-07 20:55:15 来源:oir作者:oir