当前位置:   article > 正文

Ubuntu 18.04实现自建本地Mirror源-完整_ubuntu mirror

ubuntu mirror

企业内网,很多机器不方便直接去外网安装和更新,所以想到了自建Ubuntu Mirror的想法。最开始不知道实现方法,网上上搜索了很多文章,借鉴了很多做法。最后发现,网上别人成功的方法只能借鉴,没法照搬。每一个不同环境实现Mirror都会有不同的差异,但是大道同归,主题思路是差不多的。下面分享我总结和整理的方法。

一、安装Ubuntu 18.04,此过程步骤跳过。

二、安装apt-mirror:

sudo apt-get install apt-mirror

因为最后是通过Web的方式提供源文件,所以我们也把nginx安装了:

sudo apt-get install nginx

安装完apt-mirror后,会在/etc/apt下产生一个mirror.list文件,我们需要在里面设置数据根目录 :

sudo vi /etc/apt/mirror.list

编辑mirror.list文件:

  1. set base_path /var/spool/apt-mirror
  2. #
  3. # set mirror_path $base_path/mirror
  4. # set skel_path $base_path/skel
  5. # set var_path $base_path/var
  6. # set cleanscript $var_path/clean.sh
  7. # set defaultarch <running host architecture>
  8. # set postmirror_script $var_path/postmirror.sh
  9. # set run_postmirror 0
  10. # 20个线程同时下载
  11. set nthreads 20
  12. set _tilde 0

保存退出,就可以开始下载离线镜像包了。不过下载前,我们需要先确认自己网络环境,确认是去ubuntu官网同步下载速度,如何很慢的话,建议要更改为国内源,国内源很多,有ubuntu国内官方源,也有一些大学和大厂自建的源。下面网址收录了官网和国内源的地址,大家根据自己喜爱选择,建议选择官网、aliyun、清华:

模板:18.04source - Ubuntu中文

mirror.list里面默认是国外官网的镜像地址,我修改为国内官网的镜像地址,过程中发现cn.archive.ubuntu.com速度其实很慢,反而直接使用archive.ubuntu.com更改。这还是跟自己的网路环境有关系,因为同步文件数百G,建议大家一定要选好镜像地址。镜像文件目录,因为是测试,我只选择了main、security、updates。

  1. deb http://cn.archive.ubuntu.com/ubuntu bionic main restricted universe multiverse
  2. deb http://cn.archive.ubuntu.com/ubuntu bionic-security main restricted universe multiverse
  3. deb http://cn.archive.ubuntu.com/ubuntu bionic-updates main restricted universe multiverse
  4. clean http://cn.archive.ubuntu.com/ubuntu

以上准备好以后,我们开始进行同步:

sudo apt-mirror

这个过程要等很久,同步文件有几百G,大家要提前规划好server磁盘空间。也注意专线频宽占用。

同步完成后,接下来我们开始配置HTTP访问,前面我们安装了nginx,先要调整配置:

先打开配置文件:

sudo vi /etc/nginx/sites-enabled/default

编辑文件内容,主要设定服务端口,autoindex on;调整根目录。

  1. server {
  2. listen 80 default_server;
  3. listen [::]:80 default_server;
  4. # SSL configuration
  5. #
  6. # listen 443 ssl default_server;
  7. # listen [::]:443 ssl default_server;
  8. #
  9. # Note: You should disable gzip for SSL traffic.
  10. # See: https://bugs.debian.org/773332
  11. #
  12. # Read up on ssl_ciphers to ensure a secure configuration.
  13. # See: https://bugs.debian.org/765782
  14. #
  15. # Self signed certs generated by the ssl-cert package
  16. # Don't use them in a production server!
  17. #
  18. # include snippets/snakeoil.conf;
  19. autoindex on;
  20. root /var/spool/apt-mirror/mirror/;
  21. # Add index.php to the list if you are using PHP
  22. index index.html index.htm index.nginx-debian.html;

保存配置后,我们看看nginx配置是否成功:

  1. sudo nginx -t
  2. 成功后有如下提示:
  3. nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
  4. nginx: configuration file /etc/nginx/nginx.conf test is successful

如果测试通过,表示配置文件没有问题,那么就可以开启服务:

sudo service nginx restart

通过web可以成功访问:http://localhost 。

三、客户端验证,打开客户端(18.04)source文件:

sudo vi /etc/apt/source.list

将source.list中的网址替换为内网的Ubuntu mirror网址:

  1. deb http://yourservername/ubuntu bionic main restricted universe multiverse
  2. deb http://yourservername/ubuntu bionic-security main restricted universe multiverse
  3. deb http://yourservername/ubuntu bionic-updates main restricted universe multiverse

更新镜像源缓存:

sudo apt-get update

客户端安装测试:

sudo apt-get install nginx

验证安装来源:

  1. sudo apt policy nginx
  2. nginx:
  3. Installed: 1.14.0-0ubuntu1.9
  4. Candidate: 1.14.0-0ubuntu1.9
  5. Version table:
  6. *** 1.14.0-0ubuntu1.9 500
  7. 500 http://yourservername/ubuntu bionic-updates/main amd64 Packages
  8. 500 http://yourservername/ubuntu bionic-security/main amd64 Packages
  9. 100 /var/lib/dpkg/status
  10. 1.14.0-0ubuntu1 500
  11. 500 http://yourservername/ubuntu bionic/main amd64 Packages

四、此外,还可以在mirror server设置定时更新镜像源,我们需要配置apt-mirror每天定时同步,其实就是配置cron。这里apt-mirror提供了cron模板文件,在/etc/cron.d/apt-mirror 中:

0 4 * * * apt-mirror /usr/bin/apt-mirror > /var/spool/apt-mirror/var/cron.log

PS:注意目录要根据自己的安装目录配置。每台Ubuntu安装后因分区差异,目录都略有不同。

五、以上过程,很多方法都是网上自学的,如果不足之处,望予以指正。极少有ubuntu 自建mirror需求,如有使用,您可以选择作为实现参考方法。镜像URL需要根据自己使用的client架构选择,URL可以参考aliyun、清华等给出的建议URL地址。谢谢!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/498945
推荐阅读
相关标签
  

闽ICP备14008679号