美文网首页Linux
十一、软件管理

十一、软件管理

作者: 胖虎喜欢小红 | 来源:发表于2020-01-25 19:32 被阅读0次

    一、rpm介绍

    rpm软件包名称:
    软件名称 版本号(主版本、次版本、修订号) 操作系统 -----90%的规律
    #有依赖关系
    举例:openssh-6.6.1p1-31.el7.x86_64.rpm  
    数字前面的是名称
    数字是版本号:第一位主版本号,第二位次版本号,带横杠的是修订号, el几---操作系统的版本。  
    noarch : 32位64位都支持
    x86_64 :  64位
    i4-6 86的包 :32位
    ======
    RPM包安装信息存储到本地RPM数据库中
    
    #用rpm安装需要考虑如下信息:
    1.需要考虑系统的版本需要与rpm对应
    2.系统的架构:如32位还是64位
    3.需要考虑依赖关系
    

    rpm安装

    #rpm -ivh 软件包名称
    -i install
    -vh verbose human
    -U  upgrade  升级
    
    `查找rpm包的网站:http://pkgs.org`
    1.通过rpm安装
    可以先下载下来
    [root@biudefor ~]# wget http://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/n/ntfs-3g-2017.3.23-11.el7.x86_64.rpm
    
    [root@biudefor ~]# rpm -ivh ntfs-3g-2017.3.23-11.el7.x86_64.rpm  #安装rpm包
    
    2.直接通过连接安装rpm包
    [root@biudefor ~]# rpm -ivh http://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/n/ntfs-3g-2017.3.23-11.el7.x86_64.rpm
    --force  在安装的时候用(强制安装)  
    
    
    案例安装zabbix源
    [root@biudefor ~]# rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
    [root@biudefor ~]# yum install zabbix-server zabbix-agent #安装软件
    

    查询

    ==查询   
    (从本地的rpm数据库)
    -q query
    -l list
    -f file
    [root@biudefor ~]# rpm -qa | grep http # 查找软件是否安装
    [root@biudefor ~]# rpm -ql httpd #查询http安装的文件
    [root@biudefor ~]# rpm -qf /usr/share/httpd/noindex #查询该文件属于哪个包
    [root@biudefor ~]# rpm -qf /etc/passwd  #查询某一个文件是哪个软件产生的:  只能查询已经安装好的软件
    

    卸载

    #rpm -e 软件名称
    -e erase
    [root@biudefor ~]# rpm -e httpd
    [root@biudefor ~]# rpm -e httpd --nodeps #!不检测依赖关系  直接卸载
    --nodeps 在卸载的时候用(卸载的时候不检查依赖关系)
    # yum -y renove `rpm -qa | grep httpd`
    
    rpm工具管理软件包总结:
    1. 很难解决包依赖关系 
    2. 如果某个文件没有,很难知道它由哪个rpm包提供
    

    二 yum方式管理

    #可以自动解决rpm软件依赖关系,虽然是通过yum安装的但是最后执行的还是rpm,也就是说没有rpm命令yum也就不能用了。
    分类:本地yum和远程yum
    本地yum:
    file://
    远程yum:
    http://
    ftp://
    

    本地yum源:

    [root@biudefor ~]# mkdir /mnt/CentOS
    [root@biudefor ~]# mount /dev/cdrom /mnt/CentOS/
    mount: /dev/sr0 is write-protected, mounting read-only
    [root@biudefor ~]# mkdir /etc/yum.repos.d/backup
    [root@biudefor ~]# mv /etc/yum.repos.d/* /etc/yum.repos.d/backup
    [root@biudefor ~]# vim /etc/yum.repos.d/CentOS.repo
    [centos7u4]  #yum源区别名称,用来区分其他的yum源
    name=centos7u4  #yum源描述   yum源名字
    baseurl=file:///mnt/CentOS  #指定本地yum源的路径
    enabled=1  #是否使用此yum源(1为打开,0为关闭)
    gpgcheck=0 #检查软件
    

    yum操作

    清理yum缓存:
        # yum clean all
    
    缓存软件包信息:    
        提高搜索/安装软件的速度
        # yum makecache
        
        查询yum源信息:   
        # yum repolist     
            
    查找软件:
        # yum search  mysql   
        此命令会搜索到系统已经安装和yum源里没有安装的软件信息,可以用他简单测试yum是否好用
    
    查看软件依赖性关系:                 
        # yum  deplist  httpd
    
    查看文件属于哪个软件
        # yum provides rz    
    
    查看系统已经安装好的软件和没有安装的软件(源里存在即可查到):
        # yum list  
    
    查看系统已经安装好的软件组和没有安装的软件组(源里存在即可查到):
        # yum grouplist
        
    安装软件组:
        # yum groupinstall  ‘软件组名称’   
        如果软件或者软件组名称内有空格,要给空格转义或者加引号
    
    安装软件:
        # yum install 软件名称
        # yum install mysql mysql-server -y         //-y跳过确认提示直接安装
    
    重装:
        # yum  reinstall    软件名        
        
    卸载软件:
        # yum erase  mysql-server 
        # yum remove mysql-server 
        # yum -y remove mysql-server
    [root@biudefor ~]# yum -y remove `rpm -qa | grep httpd`  #yum卸载rpm查找出来所有与httpd相关的软件包全部卸载掉
    

    更换网络yum源--aliyun

    [root@biudefor ~]# mv /etc/yum.repos.d/* /etc/yum.repos.d/backup
    [root@biudefor ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo  #下载aliyun的yum源
    或者:
    [root@biudefor ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
    安装扩展源--epel.repo:
    [root@biudefor ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
    [root@biudefor ~]# cd /etc/yum.repos.d/
    [root@biudefor yum.repos.d]# ls
    CentOS-Base.repo  epel.repo
    

    制作自己的yum源

    制作自己的yum源:
    打开Yum缓存功能:安装完软件之后,软件不会被删除(默认安装完之后,不会保留安装包)
    # vim /etc/yum.conf  修改下面参数的值为1,软件会被保存到cachedir指定的目录下
    keepcache=1
    [root@biudefor ~]# yum install -y httpd wget
    [root@biudefor ~]# cd /var/cache/yum/x86_64/7/base/packages/  #yum缓存仓库
    [root@biudefor packages]# ls
    httpd-2.4.6-90.el7.centos.x86_64.rpm        wget-1.14-18.el7_6.1.x86_64.rpm
    httpd-tools-2.4.6-90.el7.centos.x86_64.rpm
    
    自己制作yum源
    [root@biudefor ~]# mkdir /myyum   (把rpm安装包放到此目录里面)
    把想用yum安装的软件包拷贝到目录下
    [root@biudefor ~]# cp /var/cache/yum/x86_64/7/base/packages/* /myyum/
    [root@biudefor ~]# yum install -y createrepo
    [root@biudefor ~]# createrepo /myyum         //此目录就可以作为yum源了。
    [root@biudefor ~]# vim /etc/yum.repos.d/myyum.repo
    [myyum]
    name=myyum
    baseurl=file:///myyum
    enabled=1
    gpgcheck=0
    [root@biudefor ~]# yum repolist
    
    yum排错:
    1.yum配置文件必须以.repo结尾      
    2.yum.conf里面8,9行的值设置成0
    3.配置文件关键字错误
    4.检查yum源是否存在
    5.baseurl路径是否正确
    6.镜像大小是否正确
    7.当有Yum进程存在的时,无法同时再打开一个Yum进程
    

    相关文章

      网友评论

        本文标题:十一、软件管理

        本文链接:https://www.haomeiwen.com/subject/qlyrthtx.html