今天看到同事做了一个公司本地的apache镜像源,感觉好叼的样子。然后就自己上网找些资料,尝试自己搭建一套出来。然后就有了这篇博文。。。

  声明:本文中充满了浓浓的技术嫉妒的心理,阅读需谨慎。

  本文以 [ubuntu16.4LTS 64位] 为例子进行配置,其他系统大同小异,如果在配置中遇到了奇葩问题,请留言讨论或自行百度。

第一步:找到源配置文件

  在ubuntu下,源文件的位置为: /etc/apt/source.list 。使用vim或者nano等编辑器,以管理员身份打开即可观赏代码。

第二部:找一个好用的镜像地址列表

  我找的是阿里的一个镜像站,其他的也有很多,我觉着阿里至少在五年之内不会倒闭,所以就选它了。

  首先将原文件备份:

cp ./source.list ./source.list.bak

  然后开始修改 source.list 文件,将文件中所有的代码全部注释掉,使用 # 符号实现。然后将以下代码拷贝到文件中去:

# 源码
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse # 测试版源
deb http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse # 源码(src)
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse # 测试版源
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse # Canonical 合作伙伴和附加
deb http://archive.canonical.com/ubuntu/ xenial partner
deb http://extras.ubuntu.com/ubuntu/ xenial main

  保存退出。至此,我们就将原来的`蜗牛`版的源替换成了`急速`版的源了。执行下update试试,是不是发现速度快了很多?

第三步:执行完update后,我们来安装一个工具先

sudo apt-get install -y apt-mirror

  这个工具是用来拷贝配置本地源的。安装完后来配置此工具:

vim /etc/apt/mirrors.list

set nthreads 20 
set _tilde 0 
deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse 
deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse 
deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse 
deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse 
deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse 
clean http://mirrors.aliyun.com/ubuntu 

  现在都配置好了,开始执行下载操作:

apt-mirror 

  NOTE:大约80G,先看看硬盘在决定要不要继续吧。速度么,再快能怎么快呢?毕竟80G。

第四步:配置本机源

  假设你已经下载完了,无论是下一半玩技术还是真的等了一夜下载,无所谓,现在开始对本地源进行配置了。

  下载的源路径大概再这里 /var/spool/apt-mirror/mirror/mirrors.aliyun.com/ubuntu

  执行以下代码完成配置:

# 编辑source.list文件
vim /etc/apt/sources.list deb file:///var/spool/apt-mirror/mirror/mirrors.aliyun.com/ubuntu trusty main restricted universe multiverse
deb file:///var/spool/apt-mirror/mirror/mirrors.aliyun.com/ubuntu trusty-security main restricted universe multiverse
deb file:///var/spool/apt-mirror/mirror/mirrors.aliyun.com/ubuntu trusty-updates main restricted universe multiverse
deb file:///var/spool/apt-mirror/mirror/mirrors.aliyun.com/ubuntu trusty-proposed main restricted universe multiverse
deb file:///var/spool/apt-mirror/mirror/mirrors.aliyun.com/ubuntu trusty-backports main restricted universe multiverse

  至此,本地源配置完成,恭喜恭喜。

第五步:将源开放

  如果自己一个人用一个80G的源,有点自私,也有点浪费资源了。互联网本着开放自由共享的原则才发展到现在的境地,为何不把本地的80G源开放共享下呢?同事们也会很感激你的。

  首先,要安装一个工具:

sudo apt-get install apache2

  然后将镜像文件链接到 apache2 的根目录下(大概是这个目录 /var/www/html/):

ln -s /var/spool/apt-mirror/mirror/mirrors.aliyun.com/ubuntu /var/www/html/ubuntu

  此时,本地源的开放已经完成了。别人要使用你的源,则需要稍微进行下配置即可:

# 在别人家的机器上操作
vim /etc/apt/sources.list # 添加源配置,x.x.x.x 表示你的机器的IP地址
deb http://x.x.x.x/ubuntu trusty main restricted universe multiverse
deb http://x.x.x.x/ubuntu trusty-security main restricted universe multiverse
deb http://x.x.x.x/ubuntu trusty-updates main restricted universe multiverse
deb http://x.x.x.x/ubuntu trusty-proposed main restricted universe multiverse
deb http://x.x.x.x/ubuntu trusty-backports main restricted universe multiverse

  好了,这下就彻底配置完成了。

配置Linux本地源镜像的更多相关文章

  1. Centos配置yum本地源最简单的办法

    有关centos配置yum本地源的方法 一.前提 先连接镜像 然后在命令行输入如下命令 mount /dev/sr0 /mnt cd /etc/yum.repos.d/ ls 之后会看到如下的界面 二 ...

  2. redhat 7 配置yum本地源

    http://www.unixarena.com/2015/04/how-to-create-the-yum-repository-on-rhel-7.html   1. 在虚拟机上挂上cd 2. m ...

  3. Oracle linux6.1配置yum本地源

    一.准备工作1. Linux安装盘插入光驱2. 挂载光驱 [root@localhost ~]# mount /dev/cdrom /mnt/ mount: block device /dev/sr0 ...

  4. 配置rpm本地源及局域网环境下使用

    LInux个人开发过程中可以直接连到公网,所以想要安装各种软件时直接安装即可,但工作环境往往很让人头疼. 如果应用场景是没法链接外网的,公司内部绝大多数情况下是在自己的局域网下玩,这时候想装个软件是相 ...

  5. linux修改源镜像地址

    1.1 CentOS修改yum源镜像地址为:mirrors.163.com (也可以改为阿里云镜像) 1.首先备份系统自带yum源配置文件/etc/yum.repos.d/CentOS-Base.re ...

  6. Linux下挂载iso文件和配置yum本地源

    Linux的版本: [root@pbn ~]# head -n 1 /etc/issueRed Hat Enterprise Linux Server release 6.1 (Santiago) 1 ...

  7. centos7配置yum本地源(iso镜像)及局域网使用

    2.测试环境: 服务器1:44.135.8.19(yum源) 服务器2:44.135.8.1(局域网机器) 系统:centos7.4 上传iso镜像到服务器,并挂载iso镜像 mount -t iso ...

  8. 无网络下,配置yum本地源

    1. 新建一个没有iso镜像文件的虚拟机: 2. 本地上传一个镜像文件(CentOS7的镜像),到虚拟机已创建的目录: 例如:上传一个镜像文件CentOS-7-x86_64-Everything-17 ...

  9. RHEL 5.7 Yum配置本地源[Errno 2] No such file or directory

    在Red Hat Enterprise Linux Server release 5.7 上配置YUM本地源时,遇到了"Errno 5] OSError: [Errno 2] No such ...

随机推荐

  1. Spring MVC3.2 通过Servlet3.0实现文件上传

    Servlet3.0规范增加了对文件上传的原生支持,这里记录一下Spring MVC3通过Servlet3上传文件的实现. 配置文件: applicationContext.xml <!-- s ...

  2. 12、Docker的网络--bridge

    单机网络 Bridge Network Host Network None Network 多机网络 Overlay Network 12.1 网络命名空间   启动一个容器 docker run - ...

  3. [label][转载][JavaSript]querySelectorAll 方法相比 getElementsBy 系列方法有什么区别?

     轉載出處: http://www.zhihu.com/question/24702250 querySelectorAll 相比下面这些方法有什么区别? getElementsByTagName g ...

  4. elasticsearch不能使用root启动问题解决

    问题: es安装好之后,使用root启动会报错:can not run elasticsearch as root [root@iZbp1bb2egi7w0ueys548pZ bin]# ./elas ...

  5. c# 检查报错详细

    catch (DbEntityValidationException error) { string test = string.Empty; foreach (var validationError ...

  6. Oracle.DataAccess.dll方式操作oracle数据库

    Oracle.DataAccess.dll方式操作oracle数据库 一.查询语句: using (OracleConnection conn = new OracleConnection(Syste ...

  7. jquery中通过添加readonly或者disabled属性实现行为禁止 / 去除某个属性的方法

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. robot framework-断言

    *** Test Cases *** 断言一 #01.should contain . should not contain 与should contain x times @{list1}= cre ...

  9. [Objective-C语言教程]扩展(30)

    类扩展与类别有一些相似之处,但它只能添加到编译时具有源代码的类中(类与类扩展同时编译). 类扩展声明的方法是在原始类的实现块中实现的,因此不能在框架类上声明类扩展,例如Cocoa或Cocoa Touc ...

  10. 简单列举几种常用 FTP

    简单说下几种FTP FTP:文件传输协议(File Transfer Protocol,FTP) SFTP:OPENSSH 提供的隧道级文件传送(file transfer) FTPS:支持传输层安全 ...