Ubuntu建立本地源非常实用,很多服务器在局域网没有网络或者网络很慢的情况下,或者需要批量安装同样的软件的时候,一旦每一台服务器都去外网下载,是不是很慢,并且也不是一个运维工程师愿意这么干的!那有什么好的办法呢,如下记录Ubuntu 12.04本地源的安装方法,仅供参考。
系统环境:Ubuntu 12.04
一、实验目的
是在一台Ubuntu 12.04服务器上面建立Ubuntu常用软件安装源,由于项目需求需要安装很多的deb包,并保证局域网数台机器都部署一致的软件和环境,那大家先找一台服务器端联网apt-get下载需要的软件包,做成本地源,然后局域网数台服务器通过脚本或者通过kickstart自动同步该安装源。
服务器端ip:192.9.117.140
测试机ip:192.9.117.141
二、正式安装
1、首先在服务器端apt-get install 安装所需软件,当大家安装步骤执行之后,大家会发现,大家刚刚安装的软件都保存在/var/cache/apt/archives/目录下,大家看到该目录下很多.deb文件。
创建目录mkdir /data/soft -p //设立安装源路径
拷贝/var/cache/apt/archives/文件到/data/soft 命令:cp -p /var/cache/apt/archives/*.deb /data/soft/
2、安装dpkg-dev
安装dpkg-dev,并执行dpkg-scanpackages 扫描依赖包并生成依赖关系gz包:
root@ubuntu12-04 www:~# apt-get install dpkg-dev -y
Reading package lists... Done
Building dependency tree
Reading state information... Done
dpkg-dev is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
root@ubuntu12-04 www:~#
root@ubuntu12-04 www:~# cd /data/
root@ubuntu12-04 www:/data# ls
soft
root@ubuntu12-04 www:/data# dpkg-scanpackages soft/ |gzip > soft/Packages.gz
3、建立源链接
编译安装nginx,用来做Ubuntu本地源的web服务器
tar xzf nginx-1.2.0.tar.gz &&cd nginx-1.2.0 &&./configure ./configure --without-http_rewrite_module &&make &&make install 即可。
然后修改nginx.conf发布目录为/data目录,并在http段添加 autoindex on;即可!
启动nginx /usr/local/nginx/sbin/nginx
确保访问http://192.9.117.140/ 可以查看到soft目录即表示nginx 安装配置成功。
三、客户机测试
环境:客户机无法联网,服务器配置完毕后,为了跟客户端联通网络,断开服务器的外网网络,保持跟客户端同网段,然后如下:
修改source源文件/etc/apt/sources.list
cp /etc/apt/sources.list /etc/apt/sources.list.back //备份文件
可以新建/etc/apt/sources.list 空文件
echo "deb http://192.9.117.140 soft/ " >/etc/apt/sources.list 【注意source.list内容的格式,soft代表目录,因为140已经指定了发布目录为/data,所以这里不要写成 /data/soft/】
以上步骤完成后就ok了!
最后在客户端执行 apt-get update
大家现在安装软件就会从源里面寻找 apt-get install 软件名即可!通过以上环境的配置,大家可以举一反三,可以联系脚本、kickstart等等自动安装,这样可以学到更多!欢迎多交流!