Yum 库

yum   :rpm的前端程序,可解决软件包相关依赖性可在多个库之间定位软件包,up2date的替代工具

yum ,存储了众多的rpm包,以及包的相关元数据文件(放置在特定目录repodata下)

yum安装的故障原因:配置文件出错,缓存出现问题

yum的配置文件

/etc/yum.conf:为所有仓库提供公共配置

/etc/yum.repos.d/*.repo:为仓库的指向提供配置

yum的repo配置文件中可用的变量

$releasever: 当前OS的发行版的主版本号

$arch: 平台,i386,i486,i586,x86_64等

$basearch:基础平台;i386, x86_64

$YUM0-$YUM9:自定义变量

yum-config-manager –disable “仓库名” 禁用仓库

yum-config-manager –enable “仓库名” 启用仓库

仓库指向的定义:

[repositoryID]       //仓库名

name=Some name for this repository      //名字

baseurl=url://path/to/repository/       //仓库路径

enabled={1|0}      //启用或禁用默认启用

gpgcheck={1|0}    //是否支持包校验

gpgkey=URL

enablegroups={1|0}

failovermethod={roundrobin|priority}

roundrobin:意为随机挑选,默认值

priority:按顺序访问

cost= 默认为1000

yum命令

yum命令的用法: yum [options] [command] [package …]

显示仓库列表: yum repolist [all|enabled|disabled]

显示程序包: yum list

yum list [all | glob_exp1] [glob_exp2] […]

yum list {available|installed|updates} [glob_exp1] […]

安装程序包

yum install package1 [package2] […]

yum reinstall package1 [package2] […] (重新安装)

升级程序包: yum update [package1] [package2] […]

yum downgrade package1 [package2] […] (降级)

检查可用升级: yum check-update

卸载程序包: yum remove | erase package1 [package2] […]

查看程序包information: yum info […]

查看指定的特性(可以是某文件)是由哪个程序包所提供:

yum provides | whatprovides feature1 [feature2] […]

清理本地缓存: 清除/var/cache/yum/$basearch/$releasever缓存

yum clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]

构建缓存: yum makecache

搜索:yum search string1 [string2] […]

以指定的关键字搜索程序包名及summary信息

查看指定包所依赖的capabilities:

yum deplist package1 [package2] […]

查看yum事务历史: yum history [info|list|packages-list|packages-info| summary|addon-info|redo|undo|

rollback|new|sync|stats]

yum history

yum history info 6

yum history undo 6   //卸载所有,包括依赖包

yum   history  redo  6    //重复做第6步

日志 :/var/log/yum.log

安装及升级本地程序包:

yum localinstall rpmfile1 [rpmfile2] […] (用install替代)

yum localupdate rpmfile1 [rpmfile2] […] (用update替代)

包组管理的相关命令

yum   grouplist    //查看包组名

yum groupinstall group1 [group2] […]

yum groupupdate group1 [group2] […]

yum grouplist [hidden] [groupwildcard] […]

yum groupremove group1 [group2] […]

yum groupinfo group1 […]

yum的命令行选项:

–nogpgcheck:禁止进行gpg check

-y: 自动回答为“yes”

-q:静默模式

–disablerepo=repoidglob:临时禁用此处指定的repo

–enablerepo=repoidglob:临时启用此处指定的repo

–noplugins:禁用所有插件

Yum仓库:

Yum的repo配置文件中的可用变量:

$releasever  :当前OS的发行版的主版本号

$arch   :平台,i386 ,i486 ,i586 ,x86_64等

$basearch :基础平台;i386, ,x86_64

创建yum仓库:  createrepo [options]    <directory>

构建yum服务

[os7]

name=centos 7.4

baseurl=http://172.20.0.1/centos/7/Packages/

gpgkey=http://172.20.0.1/centos/7/RPM-GPG-KEY-CentOS-7

gpgcheck=0

[epel]

baseurl=http://172.20.0.1/epel/7/x86_64/

gpgkey=file:///root/rpm-gpg-key-epel-7    #localhost

gpgcheck=0

enabled=0

 

[base]

name=centoc 7.4

baseurl=file:///misc/cd

gpgcheck=0

 

构建网络yum服务器

第一步;准备光盘,包,元数据

在/var/www/html下创建路径:mkdir -p centos/{6,7}/x86_64/

第二步,准备网络服务,ftp  ,http, https

rpm –ivh  vsftpd(光盘下的rpm安装包)

Centos6: /etc/rc.d/init.d/vsftpd

service   vsftpd   start   //启动vsftpd

chkconfig      vsftpd   on     //设置为开机自启动

Centos7:  /usr/lib/systemd/system/vsftpd.service

systemctl  start   vsftpd     //启动vsftpd

systemctl    enable  vsftpd     //设置为开机自启动

netstat   -ntl    //查看21端口是否打开

第三步;关闭防火墙:

Centos6: service  iptables   stop    //关闭防火墙

chkconfig   iptables   off     //开机不启动

Centos7: systemctl   stop   firewallld.service     //关闭防火墙

iptables   -vnL    //查看防火墙服务是否停止

systemctl  disable   firewalld.service    //开机不启动

cp   /misc/cd/repodata/     /data/  -r     //复制repodata到指定目录

第四步;复制元数据repodata和rpm包文件

mkdir   /var/ftp/pub/{6,7}

cd   /var/ftp/pub/6

cp   /misc/cd/repodata/     .    -r     //复制repodata到指定目录

cp   /misc/cd/Packages     .    -r     //复制部分rpm包

第五步;客户端配置

[ftpbase]

name= ftp  server    repo

baseurl=ftp://192.168.8.133/pub/$releasever

gpgcheck =0

 

createrepo     //生成元数据

wget      网络文件具体地址       下载文件到当前目录

mkdir     /mnt/cdrom

mount   /dev/sr0   /mnt/cdrom

rpm  -ivh    /mnt/cdrom/Packages/rpm 包名     –root=/mnt/sysimage

yum 与rpm 的关系:yum 是对rpm 的二次封装,rpm不能使用,也不能安装yum

t0131d35baff6a87d64

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要在Linux上搭建yum,需要按照以下步骤进行操作: 1. 安装httpd和createrepo软件包,这两个软件包是搭建yum的基础。 2. 创建一个目录,用于存放rpm软件包,例如/var/www/html/yum。 3. 将需要添加到yum的rpm软件包复制到该目录下。 4. 运行createrepo命令,生成repodata目录和相关文件,例如:createrepo /var/www/html/yum。 5. 配置httpd服务,将/var/www/html/yum目录设置为httpd服务的根目录,并启动httpd服务。 6. 在客户端上配置yum,将仓的baseurl设置为http://<yum服务器IP>/yum。 7. 完成上述步骤后,就可以使用yum命令从yum中安装软件包了。 需要注意的是,搭建yum需要一定的Linux基础知识和操作经验,建议在操作前先备份重要数据,以免造成不必要的损失。 ### 回答2: yum是一种用于在Linux操作系统中,自动从互联网上下载安装的软件包的软件工具。在Linux系统中,Yum是用于存储Linux软件包和相关依赖关系的仓。通过搭建自己的Yum,可以更方便地管理软件包、集中控制软件版本,提高软件部署效率和安全性。 首先需要在服务器上安装httpd服务,以便于其他客户端可以通过http协议访问yum。 接着需要安装createrepo工具,用于创建软件仓的元数据。首先将准备好的软件包上传到web服务器指定的目录下,执行以下命令: $ createrepo --database /path/to/my_repo/ 注意:此处的/path/to/my_repo/指的是存储软件包的目录。 然后修改httpd服务的配置文件httpd.conf,将软件仓的目录加入到httpd服务中: Alias /my_repo /path/to/my_repo/ <Directory /path/to/my_repo/> Options Indexes FollowSymLinks MultiViews Require all granted </Directory> 接着保存并重启httpd服务: $ systemctl restart httpd 最后,在客户端的yum配置文件(/etc/yum.repos.d)中添加新的仓。例如,创建一个新的仓文件my_repo.repo: [my_repo] name=My Repo baseurl=http://server_ip/my_repo enabled=1 gpgcheck=0 注意:此处的server_ip指的是Yum所在服务器的实际IP地址。 现在可以使用yum命令来从你自己的仓中安装软件包了: $ yum install package_name 通过以上步骤,就可以成功地搭建自己的Yum了,方便地进行软件包管理、版本控制和软件部署。 ### 回答3: Linux是一种非常流行的操作系统,拥有一个强大的社区和开源生态系统。Linux搭建yum是一种在Linux上管理软件包的常用方法。yum是一种软件,用于安装、更新和卸载软件包。在yum中,您可以找到和下载大量的软件包。以下是如何搭建一个yum的步骤。 1.准备环境 在搭建yum之前,需要准备一个Linux机器,此处以CentOS为例。还需要一个HTTP服务器,这里使用Apache。确保系统已经安装了必要的软件包,如:httpd、createrepo和yum-utils。 2.配置HTTP服务器 yum使用HTTP和FTP来获取和安装软件包,因此需要配置一个HTTP服务器。可以使用Apache来搭建一个HTTP服务器。打开Apache配置文件,位置在/etc/httpd/conf/httpd.conf,搜索DocumentRoot,将其修改为所需目录,例如/var/www/html。 在此之后,启用Apache服务,这可以通过执行以下命令实现:systemctl enable httpd.service systemctl start httpd.service 3.创建yum 将需要的rpm包拷贝到一个目录中,模拟一个yum服务器。使用createrepo来创建仓,这个工具会扫描指定目录中的所有rpm包并生成仓的索引信息。 在httpd的DocumentRoot目录下,创建一个子目录yum,然后将rpm包放在这个目录下。使用createrepo工具来生成仓索引。命令为createrepo /var/www/html/yum。 4.配置yum文件 yum使用repo文件来指定软件源,新建一个*.repo文件,例如:centos7.repo,将其保存在/etc/yum.repos.d/目录下。编辑文件,添加如下内容: [base] baseurl=http://localhost/yum/ gpgcheck=0 enabled=1 在这个文件里,baseurl是yum服务器的地址,gpgcheck是指是否检查GPG密钥,enbled设置为1表示该软件源可用。 5.测试yum 现在,yum已经配置好了,可以测试yum是否连接到了这个新的软件源。执行以下命令: yum clean all yum list 如果您可以看到新安装的rpm包,说明yum已经成功连接到了新的yum服务器。 总结: 搭建yum是非常方便的,您可以使用已有的HTTP服务器来构建,然后使用createrepo对rpm包进行索引。通过配置*.repo文件,您可以轻松地将新的软件源添加到yum,并使用yum命令来获取、安装和卸载rpm包。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值