在公司内网服务器离线情况下,ubuntu无法通过apt下载安装软件,可以通过自建APT源解决。
1、准备条件
1台能上外网的ubuntu做服务端,磁盘空间足够大,我这里使用的Ubuntu16.04,大概需要150G。
2、服务端安装apt-mirror
apt-get install apt-mirror
3、服务端创建目录,充当仓库
mkdir /apt
4、服务端配置mirror.list
vim /etc/apt/mirror.list # 以下配置根据需要修改 # 设置软件包存储目录 # set base_path /apt # 设置镜像存储位置 # set mirror_path $base_path/mirror # 设置临时下载索引位置 # set skel_path $base_path/skel # 设置日志,URLs和MD5校验信息存储位置 # set var_path $base_path/var # 配置删除过期源脚本位置(默认不删除,方便安装旧版本软件) # set cleanscript $var_path/clean.sh # 设置默认架构,i386/amd64,默认下载与本机相同的架构 # set defaultarch # 设定下载后运行的脚本位置 # set postmirror_script $var_path/postmirror.sh # 设置是否执行 下载后的脚本操作,默认是1(但是默认没有postmirror.sh脚本) # set run_postmirror 0 # 设置下载线程数 set nthreads 20 # 是否替换URL中的波浪线,替换成%7E(HTML代码),否则会跳过不进行下载 set _tilde 0
4、服务端替换mirror.list中的默认源为中科大源(推荐,速度快)
sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/mirror.list
5、服务端开始下载镜软件
apt-miiror #下载镜像过程时间比较长,需要耐心等待……
6、服务端启动HTTP服务
cd /apt/ python -m SimpleHTTPServer 5901 &>/dev/null &
7、客户端修改APT源
sed -i 's/https:\/\/us.archive.ubuntu.com/https:\/\/服务端IP/g' /etc/apt/sources.list
8、客户端更新索引以生效
sudo apt-get update
转载请注明:零五宝典 » Ubuntu搭建本地APT仓库,并下载网络源软件到本地