Linux软件管理

  • 软件包
  • rpm
  • yum客户端配置
  • Ubuntu的软件管理
  • 源码编译安装

软件包

软件包可能存在依赖关系,甚至循环依赖,即:A包依赖B包,B包依赖C包,C包依赖A包。安装软件包时,会因为缺少依赖的包,而导致安装包失败。
解决依赖包管理工具
1.yum:rpm包管理器的前端工具
4.dnf:Fedora 18+ rpm包管理器前端管理工具,Centos8代替yum
5.apt:debian包管理器前端工具
6.zypper:suse上的rpm前端管理工具

rpm

RPM 是Red-Hat Package Manager(红帽软件包管理器)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,包括OpenLinux、SuSe以及Turbo Linux等Linux的发行版本都有采用,可以算是公认的行业标准了。
虽然rpm包管理器可以实现软件包的:安装、卸载、升级、查询、校验、数据维护等,但是生产中使用最多的还是rpm的查询,因为rpm安装软件不支持解决包的依赖

rpm命令常用参数
-ivh      #装软件,会显示安装过程,有进度条
-e        #卸载
-q 包名    #查包是否安装上了
-qa       #列出所有安装好的包
-qc 包名      #只列出此包中的配置文件
-qi 包名   #查包的信息,包的版本,包的说明,安装时间,发行者,功能等信息
-ql 包名   #查看包里包含的文件列表
-qf 文件名  #查磁盘上的文件自来哪个包



yum客户端配置

YUM(Yellow dog Updater,Modified)是shell前端软件包管理器。基于rpm包管理,可解决软件包的相关依赖问题,能够从指定的服务器上自动下载rpm包并安装,可自动处理依赖性关系,并且一次安装所有依赖的软件包,不必繁琐地一次次下载,安装。Centos8用dnf代替了yum,不过保留了和yum的兼容性,配置也是通用的。

yum/dnf是基于C/S模式
yum服务器存放rpm包和相关包的元数据
yum客户端访问yum服务器进行安装或查询

yum实现过程
现在yum服务器上创建yum repository仓库,在仓库中实现存储了众多rpm包,以及包的相元数据文件(放置于特定目录repodata下),当yum客户端利用yum/dnf工具进行安装包时,会自动下载repodata中的元数据,查询元数据是否存在相关的包及依赖关系,自动从仓库中找到相关包下载并安装。

yum的通用性更强,yum不是脱离了rpm,yum是间接的调用了rpm。如果rpm破坏了,yum也就用不了了。

yum常用命令
yum install      #安装软件
yum remove       #卸载
yum list xxx     #查,列出xxx来自哪个从库
yum provides 文件名 #查文件来自于哪个包
yum info xxx        #查看信息,版本,描述,官网等信息
yum clean all     #清掉缓存
yum history      #yum的安装和卸载历史
yum客户端配置文件
/etc/yum.conf             #为所有仓库提供公共配置
/etc/yum.repos.d/*.repo:  #为每个仓库提供配置文件 (必须在这个目录下,必须以repo为后缀)yum配置文件格式
/etc/yum.repos.d/*.repo
[repoid]
name=repo description
baseurl=file://  #路径可以多配置几个以实现容错性,这个路径不行就访问下一个路径http://https//ftp://
enabled=1|0   #1表示仓库启用,0表示禁用
gpgcheck=1    #是否检查,0不检查,1是检查,检查还得配置gpgkey
gpgkey=file://http://https//ftp://[repoid]
baseurl=file://http://https//
gpgcheck=0

官方配置的客户端yum源都在国外,国内下载会很慢,所有我们一般都会配置公司自己的yum地址,或是国内的yum源镜像站点(阿里云,腾讯云,清华大学等)。

[BaseOS]
name=BaseOS-lei
baseurl=https://mirror.tuna.tsinghua.edu.cn/centos/8/BaseOS/x86_64/os/https://mirrors.huaweicloud.com/centos/8/BaseOS/x86_64/os/https://mirrors.cloud.tencent.com/centos/8/BaseOS/x86_64/os/https://mirrors.aliyun.com/centos/8/BaseOS/x86_64/os/
gpgcheck=0[AppStream]
name=AppStream-lei
baseurl=https://mirror.tuna.tsinghua.edu.cn/centos/8/AppStream/x86_64/os/https://mirrors.huaweicloud.com/centos/8/AppStream/x86_64/os/https://mirrors.cloud.tencent.com/centos/8/AppStream/x86_64/os/https://mirrors.aliyun.com/centos/8/AppStream/x86_64/os/
gpgcheck=0[epel]
name=epel repo-lei
baseurl=https://mirrors.aliyun.com/epel/$releasever/Everything/$basearchhttps://mirror.tuna.tsinghua.edu.cn/epel/$releasever/Everything/$basearchhttps://mirrors.cloud.tencent.com/epel/$releasever/Everything/$basearchhttps://mirrors.huaweicloud.com/epel/$releasever/Everything/$basearch
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/epel/RPM-GPG-KEY-EPEL-8
yum repolist #列出有哪些仓库
yum repolist -v  #列出仓库里有多少个包



卸载yum源

yum -y remove httpd

yum list xxx
yum info xxx
rpm -q xxx  #查询这个包是否安装上了
rpm -ql xxxx  #查看包含了哪些文件






epel源里有很多好玩的小工具:sl 、cowsay
敲sl就会显示一辆小火车

yum -y install cowsay




查询没有安装的文件来自那个包

#查询mime.types来自那个包
yum provides */mime.types
#查询已经安装好的文件来自那个包


只下载相关的依赖包,而不安装

yum -y install --downloadonly --downloaddir=/data/httpd httpd

查看未安装包的文件列表
dnf repoquery -l memcached


搭建私有yum源

dnf reposync --repoid=epel --download-metadata -p /var/www/html

http://10.0.0.210/epel/

编译安装

#1.安装相关包
dnf install gcc make autoconf ncurses-devel
https://github.com/abishekvashok/cmatrix/releases/download/v2.0/cmatrix-v2.0-Butterscotch.tar


黑客帝国来啦

[root@rocky8 cmatrix]# cmatrix -C red


Ubuntu的软件管理

#较少使用的命令dpkg
dpkg -L 包名  #查询包包含的文件
dpkg -l 包名  #列这个包是否装上了
#最常用的命令
apt install   #安装,安装之前先apt update
apt update
apt purge     #卸载,用remove卸载的不干净
apt listapt-cache madison 包  #查询包有哪些版本,可以做选择安装

源码编译安装

源码编译核心步骤
./config --prefix=    #指定安装路径
make && make install  # &&指make成功了才会执行make install

linux-12月第三周-软件管理相关推荐

  1. 12月第三周各国域名总量榜:中国729万居全球第二

    IDC评述网(idcps.com)12月26日报道:根据WebHosting.info最新数据,截至2013年12月23日,中国域名总量已增至7,293,614个,仅次美国,居全球第二名,12月第三周 ...

  2. 12月第三周安全要闻回顾:浏览器安全不容忽视,SSL弱点影响网站安全

    本周(081215至081221)安全方面的新闻众多,主要集中在***与威胁趋势方面.浏览器安全方向波澜起伏,微软推出了针对上周公开的IE7新漏洞的紧急安全补丁,但目前互联网上针对该漏洞的大规模*** ...

  3. 12月第3周网络安全报告:发现放马站点域名131个

    IDC评述网(idcps.com)12月29日报道:根据CNCERT抽样监测结果和国家信息安全漏洞共享平台(CNVD)发布的数据得悉,在12月第3周(2015-12-14至2015-12-20)期间, ...

  4. 瑞克斯外汇平台9月第三周时事(二)

    瑞克斯外汇平台9月第三周时事(二) 11.近日,国际咨询机构麦肯锡公司发布一份名为<表现优异者:高增长的新兴经济体和推动它们的企业>的报告称,从长远看,新兴经济体仍将是世界经济增长引擎. ...

  5. 12月第1周全球五大顶级域名总量呈负增长 减2.5万个

    IDC评述网(idcps.com)12月18日报道:根据WebHosting.info最新数据显示,在12月第1周,全球五大顶级域名总量有136,184,666个,净减25,797个,降幅明显.究其原 ...

  6. 5月第三周全球域名解析商Top15:万网DNSPod份额上涨

    IDC评述网(idcps.com)05月27日报道:据域名统计机构WebHosting.info数据得知,在5月第三周(5月13日-5月19日)期间,全球域名市场基本保持稳定.与上周相比,美国域名解析 ...

  7. 12月第1周.BIZ域名总量TOP10:仅中德澳3国持续上涨

    IDC评述网(idcps.com)12月15日报道:根据WebHosting.info最新数据显示,在12月第1周全球.BIZ域名总量十强排行榜中,仅中国.德国与澳大利亚成功上涨,与上周对比,可知它们 ...

  8. .INFO域名总量跌破700万,8月第三周净减51,477个

    中国IDC评述网08月23日报道:近日,据WebHosting.info公布的数据显示,截至2012年8月20日,全球.INFO域名注册总量已跌破700万个,为6,976,763个,8月第二周持续负增 ...

  9. 11月第三周.COM增13.8万 ×××域名.XXX减9个

    据Registrar Stats最新实时数据,截至2013年11月22日,全球.COM域名注册总量达到了111,429,666个,环比上周增137,840万个.而亚洲顶级域名.ASIA仍深陷低潮期,环 ...

最新文章

  1. SQL学习之组合查询(UNION)
  2. python打开360浏览器_python selenium使用360浏览器出现新皮肤设置怎么办?
  3. P4055-[JSOI2009]游戏【网络流,博弈】
  4. python matplotlib库安装出错_使用pip install Matplotlib时出现内存错误
  5. c# mysql executenonquery_C#中ExecuteNonQuery()返回值注意点分析
  6. 手机MODEM 开发(33)---SimCard 学习总结
  7. 如何通过自动增加索引,实现数据库查询耗时降低50%
  8. .net中多控件共享事件处理程序的方法
  9. SqlServer 跨库访问
  10. python测开课程_2020年第五期《python接口自动化+测试开发》课程,10月11号开学(火热报名中!)...
  11. paip.语义分析--单字动词表.txt
  12. 《大话数据结构》-1-数据结构绪论-基本概念-数据,数据结构,逻辑结构,物理结构等
  13. 制作一个简易的即时聊天工具
  14. MSP430使用wifi模块发送数据(上,测试连接)
  15. excel保存快捷键_Excel新手必备的5大技巧,看看你会几个?(附26个超实用快捷键)
  16. Worthington 分子生物学解读
  17. PHP创建Epub文件
  18. 以我卖电子书赚50万的经历告诉你,如何学习并用新技术赚钱?
  19. 博实乐公布季度业绩,前三季度收入增长46.6%
  20. HCIP-DATACOM H12-831(161-180)

热门文章

  1. 基于大数据的python爬虫的菜谱美食食物推荐系统
  2. Python递归过程详解
  3. element 时间组件的默认时间设置default-value属性
  4. js中计算当前日期是当年的第xx周(涉及跨年)
  5. U3D-亡命时速游戏制作(四)
  6. 03 Python基本图形绘制
  7. Go 接口,接口继承
  8. Cydia Substrate 初尝试:刷计步软件数据
  9. 决策树理论--Decision tree
  10. Python爬虫原理