linux下的软件包在有网络的情况下比较好安装,在ubuntu下,更新sourcelist,然后使用apt-get就可以很方便的安装包,在centos下面,更新yum列表,然后使用yum也可以进行方便的软件安装,但是在没有网络的情况下就比较难安装,可以用一个个包的安装的方式去安装,这个在少量的包的情况下比较好处理,在多的情况下就比较麻烦了,本篇文档,就是介绍了在无网的情况下,根据自己的需要制作内网的包的安装服务器
centos系列
使用光驱作为安装源
1、将光驱挂载到服务器的本地目录
[root@node1 ~]# mount /dev/cdrom /mnt
mount: block device /dev/sr0 is write-protected, mounting read-only
2、修改本地的yum源文件,将源指向光驱挂载的目录
vim /etc/yum.repos.d/myiso.repo
添加
[myiso]
name=myiso
baseurl=file:///mnt
gpgcheck=0
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
3、更新本地的源缓存
[root@node1 yum.repos.d]# yum makecache
Loaded plugins: security
myiso | 3.6 kB 00:00 ...
myiso/group_gz | 17 kB 00:00 ...
myiso/filelists_db | 3.4 MB 00:00 ...
myiso/primary_db | 6.8 MB 00:00 ...
myiso/other_db | 2.3 MB 00:00 ...
Metadata Cache Created
做完上面的就可以使用本地的光驱的中的包使用yum安装了
使用iso文件作为安装源
1、将iso文件拷贝到服务器,然后挂载到服务器本地
[root@node1 ~]# mount -t iso9660 OracleLinux-R6-U5-Server-x86_64-dvd.[V41362-01].iso /mnt -o loop
mount: /root/OracleLinux-R6-U5-Server-x86_64-dvd.[V41362-01].iso is write-protected, mounting read-only
2、修改本地的yum源文件,将源指向光驱挂载的目录
vim /etc/yum.repos.d/myiso.repo
添加
[myiso]
name=myiso
baseurl=file:///mnt
gpgcheck=0
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
3、更新本地的源缓存
[root@node1 yum.repos.d]# yum makecache
Loaded plugins: security
myiso | 3.6 kB 00:00 ...
myiso/group_gz | 17 kB 00:00 ...
myiso/filelists_db | 3.4 MB 00:00 ...
myiso/primary_db | 6.8 MB 00:00 ...
myiso/other_db | 2.3 MB 00:00 ...
Metadata Cache Created
做完上面的就可以使用本地的iso中的包使用yum安装了
使用安装包做一个ftp的yum安装服务器
1、安装vsftpd服务器
rpm -ivh vsftpd-2.2.2-11.el6_4.1.x86_64.rpm
这个包在操作iso中的包路径下面有
2、配置ftp服务器
默认的ftp目录为/var/ftp/pub/
创建源目录
mkdir /var/ftp/pub/centos
将iso挂载到源目录,也可以直接将文件拷贝到这个目录当中去
mount -t iso9660 OracleLinux-R6-U5-Server-x86_64-dvd.[V41362-01].iso /var/ftp/pub/centos/ -o loop
配置完成后,镜像的下载地址就为:
ftp://youripaddress/pub/centos/
我的为:
ftp://172.16.81.129/pub/centos/
3、使用的机器的配置
修改yum源
vim /etc/yum.repos.d/ftpcentos.repo
添加
[ftpcentos]
name=ftpcentos
baseurl=ftp://172.16.81.129/pub/centos/
enabled=1
4、更新yum的缓存
[root@node2 yum.repos.d]# yum makecache
Loaded plugins: security
ftpcentos | 3.7 kB 00:00
ftpcentos/filelists_db | 3.3 MB 00:00
ftpcentos/primary_db | 3.0 MB 00:00
ftpcentos/other_db | 1.3 MB 00:00
ftpcentos/group_gz | 203 kB 00:00
Metadata Cache Created
制作自己的定制源
1、安装制作源的工具
rpm -ivh deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm
rpm -ivh python-deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm
rpm -ivh createrepo-0.9.9-18.0.1.el6.noarch.rpm
这三个包在默认的iso当中有
2、将安装包拷贝到指定的目录
本例子使用leveldb,snappy举例,snappy是leveldb的依赖包。
将
leveldb-1.7.0-2.el6.x86_64.rpm
snappy-1.0.5-1.el6.x86_64.rpm
拷贝到
/usr/src/myepel/目录当中去
[root@node1 src]# createrepo myepel/
Spawning worker 0 with 2 pkgs
Workers Finished
Gathering worker results
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
检查目录下面会生成repodata,存储一些元数据信息
[root@node1 src]# ll myepel/
total 200
-rw-r--r-- 1 root root 162052 Apr 16 08:45 leveldb-1.7.0-2.el6.x86_64.rpm
drwxr-xr-x 2 root root 4096 Apr 16 08:48 repodata
-rw-r--r-- 1 root root 34372 Apr 16 08:45 snappy-1.0.5-1.el6.x86_64.rpm
3、修改源列表
同样的将yum源的目录指向这个myepel/
[myiso]
name=myiso
baseurl=file:///usr/src/myepel/
gpgcheck=0
enabled=1
4、更新yum缓存
[root@node1 yum.repos.d]# yum makecache
[root@node1 yum.repos.d]# yum install leveldb
即可安装了