Linux软件源书写格式解析及本地yum源制作
1.Debian类系统
配置文件:/etc/apt/sources.list
例子:deb https://mirrors.aliyun.com/kali kali-rolling main contrib non-free
说明:
1.格式 协议://镜像站网址/发行版 发行版版本代号 软件集合
2.格式:deb--deb格式的包;deb-src--源码包
3.协议:http--http协议;ftp--ftp协议;cdrom--光盘;file--本地磁盘
4.网址:镜像站网址
5.发行版:debian/ubuntu/kali等
6.版本代号:ubuntu12.10--quantal等(进入dists目录查看)
7.软件集合:main/contrib/non-free等(进入dists目录的对应版本目录查看)
8.“发行版-版本代号-软件集合”间是上下级关系可用“/”代替空格;软件集合间属于同级关系,只能用空格
9.访问路径:https://mirrors.aliyun.com/kali/dists/kali-rolling/main/
10.部分镜像站部分系统有“help”等链接,直接按着写也可
2.CentOS类系统
配置文件:/etc/yum.repos.d/CentOS-Base.repo
#只要是.repo结尾即可,叫什么随意
例子:
[base] #yum的名字(随意写)
name=CentOS-$releasever #yum的注释(随意写)
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
#baseurl--软件包根目录;$releasever--系统主版本号;$basearch--cpu结构
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=file:///media/CentOS/
enabled=1 #是否启用此yum源;0为否1为是
gpgcheck=1 #是否对包启用校验;0为否1为是
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-6
#如果gpgcheck为0可以随便写,为1则要配密钥文件所在路径
3.制作本地yum源(以CentOS为例)
首先明确,制作本地yum源使用的iso文件就是安装操作系统时使用的那个iso文件(CentOS也就只有一个ISO文件没有专门的软件iso文件);
其次明确,yum源中baseurl填写的就是iso文件的那一层目录,而不是要写到其下的Packages目录(猜测可能是因为yum命令还要读取与Packages同级的repodata等目录,没做进一步验证)。
最后再明确,如果不使用挂载光盘或iso而是想把光盘或iso文件复制到本地磁盘,那么也是要复制光盘或iso内的所有文件而不是只复制Packages文件夹。
比如我本地虚拟机iso文件自动挂载到了/media/CentOS_6.8_Final,在此直接以其为源制作本地yum源作为示例
mkdir /mnt/CentOS_6.8_Final mount -o loop /mnt/CentOS-6.8-x86_64-bin-DVD1.iso /mnt/CentOS_6.8_Final
cd /etc/yum.repos.d mkdir backup mv * backup cat > my.repo << EOF [mySection] name=myName baseurl=file:///media/CentOS_6.8_Final enabled=1 gpgckeck=0 gpgkey= EOF yum clean all yum search telnet
可以看到查找telnet时已成功从新写的mySection查找
参考: