使用APT镜像在Ubuntu中设置本地存储库的4个步骤

时间:2020-03-05 15:32:45  来源:igfitidea点击:

如何直接从官方Ubuntu存储库在Ubuntu PC或者Ubuntu Server中设置本地存储库。
如果我们有很多计算机经常在所有系统中安装软件,安全更新和修复程序,那么在计算机中创建本地存储库有很多好处,那么拥有本地Ubuntu存储库是一种有效的方法。
因为所有必需的软件包都是通过本地服务器上的快速LAN连接下载的,所以它将节省Internet带宽并降低Internet的年度成本。

我们可以使用许多工具在本地PC或者服务器中设置Ubuntu的本地存储库,但是在本教程中,我们将介绍APT-Mirror。
其中我们将包从默认镜像镜像到我们的本地服务器或者PC,并且本地或者外部硬盘驱动器中至少需要120 GB或者更多可用空间。
可以通过HTTP或者FTP服务器对其进行配置,以与本地系统客户端共享其软件包。

我们需要安装Apache Web Server和APT-Mirror才能使我们的东西开箱即用。
以下是配置有效的本地存储库的以下步骤:

1.安装所需的软件包

首先,我们将从Ubuntu软件包服务器的公共存储库中提取整个软件包,并将其保存在我们本地的Ubuntu服务器硬盘中。

我们将首先安装一个Web服务器来托管我们的本地资源库。
我们将安装Apache Web服务器,但我们可以安装任何所需的Web服务器,该Web服务器是http协议所必需的。
如果我们需要配置ftp协议和Rsync来配置rsync协议,则可以另外安装FTP服务器,例如proftpd,vsftpd等。

$sudo apt-get install apache2

然后我们需要安装apt-mirror:

$sudo apt-get install apt-mirror

注意:正如我已经提到的那样,我们至少需要120 GB的可用空间来镜像或者下载所有软件包。

2.配置APT镜像

现在,在硬盘上创建一个目录以保存所有软件包。
例如,让我们创建一个名为“/theitroad”的目录。
我们将所有软件包保存在此目录中:

$sudo mkdir /theitroad

现在,打开文件/etc/apt/mirror.list文件

$sudo nano /etc/apt/mirror.list
Copy the below lines of configuration to mirror.list and edit as your requirements.
############# config ##################
#set base_path    /theitroad
## set mirror_path  $base_path/mirror
# set skel_path    $base_path/skel
# set var_path     $base_path/var
# set cleanscript $var_path/clean.sh
# set defaultarch  <running host architecture>
# set postmirror_script $var_path/postmirror.sh
# set run_postmirror 0
set nthreads     20
set _tilde 0
############## end config ##############
deb http://archive.ubuntu.com/ubuntu trusty main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse
#deb http://archive.ubuntu.com/ubuntu trusty-proposed main restricted universe multiverse
#deb http://archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu trusty main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse
#deb-src http://archive.ubuntu.com/ubuntu trusty-proposed main restricted universe multiverse
#deb-src http://archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse
clean http://archive.ubuntu.com/ubuntu

注意:我们可以将以上官方镜像服务器URL替换为最接近的官方URL,可以通过访问Ubuntu Mirror Server页面获得最近的服务器。

如果我们不着急并且可以等待镜像,则可以使用默认的官方镜像。

其中我们将镜像Ubuntu的最新最好的LTS版本的软件包存储库。
Ubuntu 14.04 LTS(Trusty Tahr)因此,我们已经配置了trusty。
如果我们需要镜像Saucy或者其他版本的Ubuntu,请对其进行编辑作为其代号。

现在,我们必须运行apt-mirror,它现在将获取/镜像存储库中的所有软件包。

sudo apt-mirror

从Ubuntu Server下载所有软件包将花费一些时间,这取决于我们和镜像服务器的连接速度和性能。
我已经中断下载了,因为我已经这样做了...

3.配置Web服务器

为了能够从其他计算机访问存储库,我们需要一个Web服务器。
我们也可以通过ftp来执行此操作,但是我选择使用上面步骤1中提到的Web服务器。
因此,我们现在将配置Apache Server:

我们将创建一个从本地存储库目录到Apache托管目录中目录ubuntu的符号链接,即/var/www/ubuntu

$sudo ln -s /theitroad /var/www/ubuntu
$sudo service apache2 start

上面的命令将允许我们从本地主机(即默认情况下为http://127.0.0.1)浏览镜像存储库。

4.配置客户端

最后,我们需要在其他计算机上添加存储库源,这将从我们的计算机中获取软件包和存储库。
为此,我们需要编辑/etc/apt/sources.list并添加以下几行。

$sudo nano /etc/apt/sources.list

将此行添加到/etc/apt/sources.list中并保存。

deb http://192.168.0.100/ubuntu/trusty main restricted universe

注意:这里192.168.0.100是我们服务器计算机的LAN IP地址,我们需要用IP地址替换它。

$sudo apt-get update

现在,我们可以从本地Ubuntu存储库中使用sudo apt-get install packagename安装所需的软件包,并具有高速下载和低带宽的功能。