首页 > 系统相关 >Linux软件安装与依赖问题

Linux软件安装与依赖问题

时间:2023-09-08 15:23:13浏览次数:47  
标签:依赖 安装 Linux apt 命令 yum 软件包 软件 sudo

apt 与 yum

大部分时间,在Linux发行版中安装软件使用的是apt(Ubuntu),yum(CentOS)。

这两个软件都是高级的软件包管理工具,在使用它们安装软件的时候,会自动解决软件包的依赖关系,可以从指定的软件库获取软件包和其依赖项,并自动进行下载、安装、更新。

rpm与dpkg

它们都用于直接操作软件包文件,提供了较为基本的功能和选项,比如安装、卸载和管理软件包。dpkg主要用于Debian和Ubuntu等基于Debian包管理系统的发行版,而rpm主要用于CentOS和Fedora等基于RPM包管理系统的发行版。

它们不会自动解决软件的依赖问题。如果使用rpm/dpkg遇到依赖问题,需要手动下载需要的依赖并安装。

本地软件包

为什么使用apt install的时候要先运行 apt update

apt update命令会更新本地软件包列表。软件仓库的包列表随时都有可能变化(删除旧的软件包,上传新的软件包)。

因此,如果您有一个非常旧的软件包列表缓存,并且尝试进行apt install安装,很有可能会找不到安装包信息(安装包可能已经在软件仓库被删除了,而你本地软件包列表缓存中还记录着可用)。

先执行update有助成功安装到最新的软件包、解决依赖关系等。

apt 和 apt-get的区别

  apt是新出的工具,用于取代apt-get和apt-cache,目的是更友好、易用的包管理工具; apt-get没有被废弃也没有过时,依然可以放心使用,但普通用户建议转向apt。

apt常用命令

  

#安装软件包
sudo apt remove package-name

#删除软件包
sudo apt remove package-name

#使用apt安装多个软件包
sudo apt install Package-name package-name2

#使用apt删除多个包
sudo apt remove package-name package-name2

#更新本地可用包索引
sudo apt update

#升级软件包
sudo apt upgrade

#使用 apt 命令升级软件包:
sudo apt upgrade package_name

#查看系统上可以升级的软件包列表
apt list --upgradable

#如果要删除软件包及其所有配置文件,请使用purgeapt 命令:
sudo apt purge package_name

#运行以下命令以删除未使用的包:
sudo apt autoremove

#运行以下 apt 命令以列出所有可用的软件包:
sudo apt list

#apt 命令列出唯一安装的软件包:
sudo apt list --installed

#运行以下 apt 命令来搜索包:
sudo apt search package-name

#apt 命令查找有关软件包的信息
sudo apt show package-name

#apt 命令列出包依赖项
sudo apt depends packagename

#apt 命令删除依赖项:
sudo apt autoremove
sudo apt --purge autoremove

 

YUM常用命令

# 使用YUM查找软件包
命令:yum search ~
#列出所有可安装的软件包
命令:yum list
#列出所有可更新的软件包
命令:yum list updates
#列出所有已安装的软件包
命令:yum list installed
#列出所有已安装但不在Yum Repository 內的软件包
命令:yum list extras
#列出所指定软件包
命令:yum list ~
#使用YUM获取软件包信息
命令:yum info ~
#列出所有软件包的信息
命令:yum info
#列出所有可更新的软件包信息
命令:yum info updates
#列出所有已安裝的软件包信息
命令:yum info installed
#列出所有已安裝但不在Yum Repository 內的软件包信息
命令:yum info extras
#列出软件包提供哪些文件
命令:yum provides~

#清除YUM缓存
#yum 会把下载的软件包和header存储在cache中,而不会自动删除。如果我们觉得它们占用了磁盘空间,可以使用yum clean指令进行清除,更精确的用法是yum clean headers清除header,yum clean packages清除下载的rpm包,yum clean all 清除所有。
#清除缓存目录(/var/cache/yum)下的软件包
命令:yum clean packages
#清除缓存目录(/var/cache/yum)下的 headers
命令:yum clean headers
#清除缓存目录(/var/cache/yum)下旧的 headers
命令:yum clean oldheaders
#清除缓存目录(/var/cache/yum)下的软件包及旧的headers
命令:yum clean, yum clean all (= yum clean packages; yum clean oldheaders)

#yum命令工具使用举例
yum update 升级系统
yum install ~ 安装指定软件包
yum update ~ 升级指定软件包
yum remove ~ 卸载指定软件
yum grouplist 查看系统中已经安装的和可用的软件组,可用的可以安装
yum grooupinstall ~安装上一个命令显示的可用的软件组中的一个
yum grooupupdate ~更新指定软件组的软件包
yum grooupremove ~ 卸载指定软件组中的软件包
yum deplist ~ 查询指定软件包的依赖关系
yum list yum* 列出所有以yum开头的软件包
yum localinstall ~ 从硬盘安装rpm包并使用yum解决依赖

 

标签:依赖,安装,Linux,apt,命令,yum,软件包,软件,sudo
From: https://www.cnblogs.com/zhaoleiFree/p/17687556.html

相关文章

  • mac & linux 安装oh my zsh
    1、先执行安装命令mac安装zsh命令brewinstallzshlinux安装  zsh命令sudoapt-getinstallzsh2、安装、切换ohmyzshsh-c"$(curl-fsSLhttps://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"chsh-s/bin/zsh3、安......
  • linux c++ tcp
    1.TCP/IP协议栈链路层:负责下图所示物理链接标准IP层(网络层):选择合适的路径传输数据,无法解决数据传输错误问题,所以需要TCP/UDP协议作为保障TCP/UDP(传输层):IP层(网络层)解决传输路径问题,确定了路径,就进行传输数据,IP层只关注一个数据包如何进行传输,至于传输过程数据包是否损坏,传输......
  • 迅为RK3588在 Linux 系统中使用 NPU
    下载rknpu2并拷贝到虚拟机Ubuntu,RKNPU2提供了访问rk3588芯片NPU的高级接口。下载地址为“iTOP-3588开发板\02_【iTOP-RK3588开发板】开发资料\12_NPU使用配套资料\01_rknpu2工具”对于RK3588来说,Linux平台RKNNSDK库文件为librknnrt.so,RK3588平台RKNNSDK包......
  • JS Blob 下载时导出csv,通过excel软件打开中文乱码的问题:
    proxy.$http.post(url,commitObject.value,{headers:{responseType:'blob'}}).then((p)=>{if(p.data.code==200||p.status==200){ElMessage.success('预测成功,等待结果展示!')if(commitObject.value.returnTyp......
  • 直播软件源码,html文本框选中后显示其它颜色
    直播软件源码,html文本框选中后显示其它颜色1.texthtml <inputtype="text"name="title"id="title">​CSS #title:focus{   outline:none;   border:1pxsolid#fafafa;   -webkit-box-shadow:0px0px6px#ffbfbf;   -moz-box-shadow......
  • 安装算量软件在消防工程中的应用亮点
    在消防工程领域,选择一款好用的算量软件对于提高工作效率和准确性至关重要。而鹏业安装算量软件,作为一款多专业设计的安装算量软件,受到了广泛的好评和认可。本文将介绍鹏业安装算量软件的特点和优势,以及其在消防工程中的应用。鹏业安装算量软件,它能够全面覆盖消防工程领域的各个方面......
  • 迅为RK3588在 Linux 系统中使用 NPU
     下载rknpu2并拷贝到虚拟机Ubuntu,RKNPU2提供了访问rk3588芯片NPU的高级接口。下载地址为“iTOP-3588开发板\02_【iTOP-RK3588开发板】开发资料\12_NPU使用配套资料\01_rknpu2工具”对于RK3588来说,Linux平台RKNNSDK库文件为librknnrt.so,RK3588平台RKNNSD......
  • linux 中 awk命令实现文件按列精确匹配合并
     001、[root@pc1test01]#cata.txtA:10B:5C:12[root@pc1test01]#catb.txt100A50B88K99Y42C[root@pc1test01]#awk'{if(NR==FNR){ay[$1]=$2}else{print$2,$1,ay[$2]}}'FS=":"a.txtFS=""b.txtA10010......
  • linux 中awk命令同时多多个文件指定分隔符
     001、正确做法[root@pc1test01]#lsa.txtb.txt[root@pc1test01]#cata.txtA:10B:5C:12[root@pc1test01]#catb.txt100A50B42C[root@pc1test01]#awk'{if(NR==FNR){print$2}else{print$1}}'FS=":"a.txtFS=""b......
  • linux 中 awk命令实现文件按列匹配
     001、方法1[root@pc1test01]#lsa.txtb.txt[root@pc1test01]#cata.txtA:10B:5C:12[root@pc1test01]#catb.txt100A50B42C[root@pc1test01]#awk-F"[:]"'{if(NR==FNR){ay[$1]=$2}else{print$2,$1,ay[$2]}}'a.txtb......