Ubuntu 16.04搭建本地mirror軟件源(含16和14):
參考網址(感謝作者):http://blog.csdn.net/fanwanli04/article/details/79622726
mkdir /space/mirror/14.04
mkdir /space/mirror/14.04/mirror
mkdir /space/mirror/14.04/var
mkdir /space/mirror/14.04/skel
mkdir /space/mirror/16.04
mkdir /space/mirror/16.04/mirror
mkdir /space/mirror/16.04/var
mkdir /space/mirror/16.04/skel
apt-get install apt-mirror
cp -rv /etc/apt/mirror.list /etc/apt/mirror.list.bak
cp -rv /etc/apt/mirror.list /etc/apt/mirror.list.14.04
cp -rv /etc/apt/mirror.list /etc/apt/mirror.list.16.04
修改16.04 mirror配置:
vi /etc/apt/mirror.list.16.04
############# config ##################
#
set base_path /space/mirror/16.04
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 amd64
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 xenial main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu xenial-security main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu xenial-updates main restricted universe multiverse
clean http://archive.ubuntu.com/ubuntu
:wq
cp -rv /etc/apt/mirror.list.16.04 /etc/apt/mirror.list
開始同步:
apt-mirror
如果想一直保持更新,可以做個計劃任務定時執行
Ubuntu 14.04基本同上,將/etc/apt/mirror.list.14.04寫爲trusty
安裝apache2
apt-get install apache2
vi /etc/apache2/sites-enabled/000-default.conf
<VirtualHost *:8080> (默認爲80)
DocumentRoot /space/mirror (默認爲/var/www/html)
:wq
vi /etc/apache2/ports.conf
Listen 8080
:wq
vi /etc/apache2/apache2.conf
<Directory /space/mirror/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
:wq
service apache2 restart
訪問:http://ip:8080 (先確保apache可以正常訪問)
安裝nginx:
apt-get install nginx
vi /etc/nginx/sites-enabled/default
upstream apt-mirror {
server 127.0.0.1:8080;
}
server {
root /space/mirror;
......
location /ubuntu/14.04/ {
proxy_pass http://apt-mirror/14.04/mirror/archive.ubuntu.com/ubuntu/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for;
}
location /ubuntu/16.04/ {
proxy_pass http://apt-mirror/16.04/mirror/archive.ubuntu.com/ubuntu/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for;
}
}
:wq
vi /etc/nginx/nginx.conf
http {
......
client_header_buffer_size 512k;
large_client_header_buffers 4 512k;
client_max_body_size 100m;
}
:wq
service nginx restart
訪問:http://ip/ubuntu/16.04 (確保能正常訪問)
客戶端設置:
vi /etc/apt/sources.list
deb [arch=amd64] http://10.0.1.5/ubuntu/16.04 xenial main restricted
deb [arch=amd64] http://10.0.1.5/ubuntu/16.04 xenial-updates main restricted
deb [arch=amd64] http://10.0.1.5/ubuntu/16.04 xenial universe
:wq