两种方式:
a、每一台机器都配一个本地文件系统上的yum仓库 file:///packege/path/
b、在局域网内部配置一台节点(server-base)的本地文件系统yum仓库,然后将其发布到web服务器中,其他节点就可以通过http://server-base/pagekege/path/
(一台虚拟机机器上有,其他机器通过http下载)制作流程:
先挑选一台机器mini4,挂载一个系统光盘到本地目录/mnt/cdrom,然后启动一个httpd服务器,将/mnt/cdrom 软连接到httpd服务器的/var/www/html目录中 (cd /var/www/html; ln -s /mnt/cdrom ./centos )
然后通过网页访问测试一下: http://mini4/centos 会看到光盘的目录内容至此:网络版yum私有仓库已经建立完毕
剩下就是去各台yum的客户端配置这个http地址到repo配置文件中
详细:
dev下有个文件叫cdrom,ll /dev/cdrom结果是一个链接指向sr0,这是设备文件,现在是没有东西的。
linux下把硬件表面看成文件其实是光驱,现在看是没有的,要把光驱挂载到文件系统里
所以文件系统要先建立一个目录,这个目录可以随意创建,以后可以通过这个文件夹访问到光驱里面的内容了
约定俗成在/mnt下创建
mount -t iso9660(文件系统类型) -o ro(readonly) /dev/cdrom(要挂载设备) /mnt/cdrom(要挂在目录)
无论哪种配置,都需要先将光盘挂在到本地文件目录中
mount -t iso9660 /dev/cdrom /mnt/cdrom
为了避免每次重启后都要手动mount,可以在/etc/fstab中加入一行挂载配置,即可自动挂载
vi /etc/fstab
/dev/cdrom /mnt/cdrom iso9660 defaults 0 0
现在再看ll /dev/cdrom就有东西了 。
现在问题是,重启后需要重新挂很麻烦,可以让他开启就挂,
vi /etc/fstab决定系统启动要挂在那些分区的 .
现在就是本地机文件系统有这些包资源了,要做的是把挂载的目录/mnt/cdrom的东西拷贝到web目录中,但浪费资源
可以在web服务器中建立连接指向这个文件夹
就是静态资源网站,就用http服务器就可以httpd
service httpd status
如果没有httpd,yum install httpd
service httpd start
测试:浏览器中输入虚拟机名就行,可能是本机ip或host改的主机名?
cd /var/www/
cd html/
一开始里面什么都没有的
小演示:vi hello.html
fdsfsdf
mini4/hello.html会有页面
ln -s /mnt/cdrom ./centos 创建一个软连接
cd centos/
ll 里面就是 /mnt/cdrom的东西
这是浏览器mini4/centos/就是东西啦
在其他机器上操作:
cd /etc/yum.repos.d/
ll
cp CentOS-Media.repo.bak CentOS-mini4.repo 复制一个
vi CentOS-mini4.repo
name=CentOS-mini4
baseerl=http://mini4/centos
yum repolist 检查下认不认识这个库
yum clean all
现在这台机器就算没挂载光盘也可以去web上拿