linux中yum命令的使用

yum

(1)yum概念

    Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
        yum repository: yum repo,存储了众多rpm包,以及包的相关的元数据文件(放置于特定目录repodata下)。

(2)yum客户端的配置文件

/etc/yum.conf:              为所有仓库提供公共配置
/etc/yum.repos.d/*.repo:    为仓库的指向提供配置

仓库指向的定义:
    [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

(3)配置yum仓库时可用的变量:

    $releasever: 当前OS的发行版的主版本号
    $arch: 平台,i386,i486,i586,x86_64等
    $basearch:基础平台;i386, x86_64 
    $YUM0-$YUM9:自定义变量 

示例:
http://server/centos/ releasever/ basearch/
http://server/centos/7/x86_64
http://server/centos/6/i384

(4)yum源的来源

    阿里云repo文件: http://mirrors.aliyun.com/repo/
    CentOS系统的yum源
    阿里云:
        https://mirrors.aliyun.com/centos/$releasever/os/x86_64/
        EPEL的yum源:
    阿里云:
        https://mirrors.aliyun.com/epel/$releasever/x86_64
    yum源可以来自souhu、aliyun等一些网站。

(5)yum命令

usage: yum [options] [command] [package …]
显示

yum repolist [all|enabled|disabled]

all: 列出所有仓库
enabled:列出可用的仓库
disabled:列出不可用的仓库

yum list 显示程序包;
yum list GLOBING 可以使用通配符模糊查找;
yum list {available 显示没有装好的包|installed显示已经装好的包|updates显示更新的包} [glob_exp1][…]
yum info FILENAME 查看程序包的信息;

示例: [root@centos7 ~]#yum info vsftpd

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

yum provides | whatprovides feature1 [feature2][…]
安装

yum install PACKAGES 
yum reinstall PACKAGES 重新安装; 

升级

yum update [package1] [package2] [...]
yum downgrade package1 [package2] [...] (降级)

检查

yum check-update

卸载

yum remove | erase package1 [package2] [...]
[root@centos7 ~]#yum remove tree #卸载tree
注意:卸载时只卸载要卸载的包,依赖的包不卸载。

清除缓存:

清除/var/cache/yum/$basearch/$releasever缓存
yum clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]
缓存问题有可能倒置不能使用yum;遇到问题清除缓存;

搜索

搜索: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]

    日志 :/var/log/yum.log

示例
[root@centos7 ~]#yum history list
Loaded plugins: fastestmirror, langpacks
ID | Login user | Date and time | Action(s) | Altered
——————————————————————————-
2 | root | 2017-08-02 22:50 | Install | 2 <
1 | System | 2017-07-14 11:19 | Install | 1257 >
history list
[root@centos7 ~]#yum history undo 2

选项:
–nogpgcheck:禁止进行gpg check
-y: 自动回答为“yes”
-q:静默模式 必须分开写
–disablerepo=repoidglob:临时禁用此处指定的repo

示例:
[root@localhost~]#yum install -y tree --disablerepo="172.16.0.1_cobbler_ks_mirror_7_"

–enablerepo=repoidglob:临时启用此处指定的repo
–noplugins:禁用所有插件
yum-config-manager 命令的使用:
–add-repo=地址(repodate的父目录路径)
–disable “reponame” 禁用仓库
–enable “reponame” 启用仓库

示例:
[root@localhost~]#yum-config-manager --add-repo= http://172.16.0.1/cobbler/ks_mirror/7/ #创建仓库
[root@localhost~]#yum-config-manager --disable "centos 7" #禁用centos 7仓库
[root@localhost~]#yum-config-manager --enable "centos 7" #启用centos 7仓库

包组管理的相关命令:

yum grouplist   列包组
前面加+ 表示没有安装;- yum安装则不安装
yum groupinstall group1 [group2] [...]   安装组包
yum groupupdate group1 [group2] [...]    升级组包
yum grouplist [hidden] [groupwildcard] [...] 
yum groupremove group1 [group2] [...]     移除组包
yum groupinfo group1 [...]              显示组信息
注意:遇到安装问题有可能有二个问题,一个是安装路径问题,另一个是缓存问题;包组大小对文件名不敏感;

(6)如何配置yum仓库示例如下

1、必须先把光盘挂载到一个目录下;
2、将/etc/yum.repos.d/下的repo库移动到一个文件夹中,以免产生干扰;
        [root@centos7 ~]#cd /etc/yum.repos.d/
        [root@centos7 ~]# ls
        [root@centos7 ~]# mkdir bak/
        [root@centos7 ~]#mv *.repo bak/
3、编辑base.repo文件  这个文件的结尾必须是.repo结尾。
        [root@centos7 ~]# vim base.repo
            [base]        #ID必须要有
            name=CentOS 7 #名字可有可无,如果没有的话报错,建议写上;
            baseurl=file:///run/media/root/CentOS\ 7\ x86_64/   #路径必须是repodata的父目录
            gpgcheck=0      #是否开启公钥检查  1表示检查  0表示不检查
            enabled=1       #是否开启这个库   1表示开启   0表示不开启
4、检查是否安装成功
        [root@centos7 ~]# yum repolist

示例2:
如何搭建第三方软件的ios镜像,我模拟一个centos6和centos7上搭建;centos7作为server,centos6作为client;
1、安装ftp
        [root@centos7 ~]#rpm -ivh /run/media/root/CentOS\ 7\ x86_64/Packages/vsftpd-3.0.2-21.el7.x86_64.rpm 
2、启动服务
        [root@centos7 ~]#systemctl start vsftpd 
3、 关闭selinux
        [root@centos7 ~]#getenforce
        Enforcing
        [root@centos7 ~]#setenforce 0 #临时生效;
4、清空防火墙
        [root@centos7 ~]#iptables -F
5、在cmd上输入地址查看是否通。
6、挂载iso镜像;
        [root@centos7 ~]#dd if=/dev/sr0 of=centos7.iso bs=5M count=10 #模拟一个光盘
        [root@centos7 ~]#mount centos7.iso /var/ftp/pub/7
7、同第五步一样查看是否有文件;
8、centos6上创建库
        [root@localhost~]#cd /etc/yum.repos.d/
        [root@localhost/etc/yum.repos.d]#mkdir bak/
        [root@localhost/etc/yum.repos.d]#mv *.repo bak/ 
        [root@localhost/etc/yum.repos.d]#vim base.repo
        [base]
        name=centos 7
        baseurl=ftp://192.168.159.136/var/ftp/pub/7/
        gpgcheck=0
        enabled=1
9、测试是否可用:
        [root@localhost/etc/yum.repos.d]#yum repolist
如果成功就可以尽情的安装你所需要的文件了。没有网络也能很好的工作了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值