zoukankan      html  css  js  c++  java
  • 12.Linux软件包管理相关操作

    软件管理

    1.1 rpm介绍

    rpm软件包名称:
    软件名称 版本号(主版本、次版本、修订号) 操作系统 -----90%的规律
    举例:openssh-6.6.1p1-31.el7.x86_64.rpm  
    数字前面的是名称
    数字是版本号:第一位主版本号,第二位次版本号,带横杠的是修订号, el几---操作系统的版本。
    noarch表示:32位64位都支持
    x86_64表示:64位
    i4-686的包表示:32位
    devel:表示这个RPM包是软件的开发包;
    
    #用rpm安装需要考虑如下信息:
    #有依赖关系,不能自动解决依赖关系。
    1.需要考虑系统的版本需要与rpm对应
    2.系统的架构:如32位还是64位
    3.需要考虑依赖关系
    

    1.2 rpm的使用

    语法 # rpm -ivh 软件包名称
    -i install
    -vh verbose human 
    -U  upgrade  升级
    
    查询
    (从本地的rpm数据库)
    -q query
    -l list
    -f file
    -a all
    [root@linux-server ~]# rpm -qa | grep 软件名    # 查找软件是否安装
    [root@linux-server ~]# rpm -ql httpd           #查询http安装的文件
    [root@linux-server ~]# rpm -qf /usr/share/httpd/noindex     #查询该文件属于哪个包
    [root@linux-server ~]# rpm -qf /etc/passwd  #查询某一个文件是哪个软件产生的:只能查询已经安装好的软件
    
    卸载
    语法:# rpm -e 软件名称
    -e erase
    [root@linux-server ~]# rpm -e httpd
    

    rpm工具管理软件包总结

    1. 很难解决包依赖关系 
    2. 如果某个文件没有,很难知道它由哪个rpm包提供
    

    1.3 yum方式管理

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

    yum操作

    安装好环境之后我们有centos自带的官方yum源,我们也可以自行更换或者制作自己的yum源
    
    清理yum缓存:
    	# yum clean all
    
    缓存软件包信息:    
        提高搜索/安装软件的速度
        # yum makecache
        
    查询yum源信息:   
        # yum repolist     
            
    查找软件:
    	# yum search  mysql   
    	此命令会搜索到系统已经安装和yum源里没有安装的软件信息,可以用他简单测试yum是否好用
    
    查看命令属于哪个软件
        # yum provides rz    
    
    查看系统已经安装好的软件和没有安装的软件(源里存在即可查到):
    	# yum list	
    
    安装软件:
    	# yum install 软件名称
    	# yum install mysql mysql-server -y			//-y跳过确认提示直接安装
    
    重装:
        # yum -y reinstall 软件名        
        
    卸载软件:
    	# yum erase  mysql-server 
    	# yum remove mysql-server 
    	# yum -y remove mysql-server
    [root@linux-server ~]# yum -y remove `rpm -qa | grep httpd`  #yum卸载rpm查找出来所有与httpd相关的软件包全部卸载掉
    

    1.4 更换网络yum源

    "更换成阿里云的yum网络源"
    #yum.repos.d yum源或者叫yum仓库
    [root@linux-server ~]# cd /etc/yum.repos.d 
    #换源前先备份
    #创建一个备份目录
    [root@localhost yum.repos.d]# mkdir CentOS.repo.backup
    #将yum.repos.d 的源放入CentOS.repo.backup中
    [root@localhost yum.repos.d]# mv *.repo CentOS.repo.backup/
    #下载aliyun的yum源
    [root@localhost yum.repos.d]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
    [root@localhost yum.repos.d]# yum clean all #清理一下缓存
    [root@localhost yum.repos.d]# yum makecache #运行makecache生成缓存
    
    参数解释
    curl -o  指定存放路径
    或者 wget -O 大O小o都是指定存放路径
    curl 系统自带, wget需要自己去安装
    
    "安装扩展源--epel.repo"
    [root@linux-server ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
    [root@linux-server ~]# cd /etc/yum.repos.d/
    [root@linux-server yum.repos.d]# ls
    CentOS-Base.repo  epel.repo
    

    1.5 制作本地yum源方式

    原理:通过CentOS系统镜像去制作本地yum源
    把镜像做成软件库,然后我们去它那里下载各种软件包
    
    1.将本地镜像上传到虚拟机root目录中
    2.将镜像挂载到目录中,这样就能访问镜像里的文件
    [root@linux-server ~]# mkdir /mnt/centos7u4
    [root@linux-server ~]# mount CentOS-7-x86_64-DVD-1708.iso /mnt/centos7u4/
    3.制作自己的本地镜像源
    [root@linux-server ~]# rm -rf /etc/yum.repos.d/* #删除已有的源
    [root@linux-server ~]# cd /etc/yum.repos.d/   #yum源配置文件存放目录
    #在yum.repos.d目录中编写yum配置文件是必须是.repo
    [root@linux-server yum.repos.d]# vim CentOS.Base.repo 
    [centos7u4]  #yum源区别名称,用来区分其他的yum源
    name=centos7u4  #yum源描述   yum源名字
    baseurl=file:///mnt/centos7u4  #指定本地yum仓库所在路径
    enabled=1  #是否启用此yum源(1为打开,0为关闭)
    gpgcheck=0 #检查软件(0不检查 1检查) 
    如果写了1检查,还要写个 key= 做验证
    
    [root@linux-server yum.repos.d]#yum makecache #建立yum缓存 刷新
    

    通过开启yum下载缓存功能制作自己的yum源

    原理:打开yum缓存功能,下载好的软件安装包保存下来。
    制作自己的yum源:
    打开Yum缓存功能:安装完软件之后,软件不会被删除(默认安装完之后,不会保留安装包)
    # vim /etc/yum.conf  修改下面参数的值为1,软件会被保存到cachedir指定的目录下
    keepcache=1
    [root@linux-server ~]# yum install -y httpd wget
    [root@linux-server ~]# cd /var/cache/yum/x86_64/7/base/packages/  #yum缓存仓库
    [root@linux-server 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@linux-server ~]# mkdir /myyum   (把rpm安装包放到此目录里面)
    把想用yum安装的软件包拷贝到目录下
    [root@linux-server ~]# cp /var/cache/yum/x86_64/7/base/packages/* /myyum/
    [root@linux-server ~]# yum install -y createrepo  #创建repo文件工具
    [root@linux-server ~]# createrepo /myyum         //此目录就可以作为yum源了。
    [root@linux-server ~]# vim /etc/yum.repos.d/myyum.repo
    [myyum]
    name=myyum
    baseurl=file:///myyum
    enabled=1
    gpgcheck=0
    [root@linux-server ~]# yum repolist
    
  • 相关阅读:
    Python操作文件和目录
    ffmpeg命令简单使用
    【转载】一个简单的爬虫:爬取豆瓣的热门电影的信息
    【转载】正则表达式re.S的用法
    linux用户添加
    SQL语句update修改数据库字段
    linux命令之cp
    linux命令——tree命令
    Linux磁盘管理
    Python资源安装过程出现Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None))…………
  • 原文地址:https://www.cnblogs.com/eba001/p/14287915.html
Copyright © 2011-2022 走看看