linux软件包管理命令
离线下载包地址
找需要的包 选择对应系统和版本
ubuntu包:https://ubuntu.pkgs.org/
centos和redhat
yum语法:yum [options] COMMAND package
options:可选,-h帮助,-y确认,-q不显示安装过程
command:要进行的操作
package:操作对象
一、yum常用操作
》模糊查询相似包 yum list|grep openssl
》下载离线包
yum install --downloadonly openssh-server.x86_64 #仅下载,默认下载到/var/cache/yum/x86_64/7/base/packages/
yum install --downloadonly --downloaddir=/root openssh-server.x86_64 #仅下载到指定位置
》下载离线包到当前目录
yum download openssh-server.x86_64
或者使用命令yumdownloader
yumdownloader --resolve --destdir=/root openssh-server #仅下载到指定位置,连依赖一块下载
yumdownloader --url openssh-server #仅列出下载地址
》列出已安装的包、需要更新的包
yum list installed
yum list updates
>>查看与字符相关的服务,和安装情况
yum list openssh*
》linux软件安装提示缺少库时,使用yum provides参数查看在哪个里
yum provides libstdc++.so.6
》查找某个命令在那个包中
yum search ifconfig 如查找ifconfig命令属于哪个包,属于net-tools包
》软件组
yum grouplist #展示软件组
yum groupinstall "GNOME Desktop" #安装软件组
》查看包依赖
yum deplist openssh
》基本操作
yum remove/erase xxx 移除包
yum update 更新所有包
补:
1.列出所有可更新的软件清单命令:yum check-update
2.更新所有软件命令:yum update
3.仅安装指定的软件命令:yum install
4.仅更新指定的软件命令:yum update
5.列出所有可安裝的软件清单命令:yum list
6.删除软件包命令:yum remove
7.查找软件包 命令:yum search
8.清除缓存命令:
yum clean packages: 清除缓存目录下的软件包
yum clean headers: 清除缓存目录下的 headers
yum clean oldheaders: 清除缓存目录下旧的 headers
yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包 及旧的headers
二、rpm常用操作
》查询
rpm -qa | grep unzip
》安装
rpm -ivh unzip-6.0-19.el7.x86_64.rpm
》查找某个文件/某个命令属于哪个包
rpm -qf /etc/ssh/sshd_config
rpm -qf /bin/ls
》查该软件包会向系统里面写入哪些文件
rpm -ql rpm包名
》查询包信息,如版本,架构,签名等
rpm -qi coreutils-8.32-5.p03.ky10.aarch64
rpm -qi coreutils
》查询包写入的配置文件
rpm -qc coreutils
》查询具体包名
rpm -qa coreutils
》查询一个离线包的包信息
rpm -qpi xxx.rpm
ubuntu和debian
一、apt常用操作
》依赖关系自动处理
apt-get install -f 或者 apt --fix-broken install
》查询包
apt list|grep teamviewer
》查询源中包信息
apt policy openssh-server #图片补充 见末尾,可查看找的包位于何处
》》下载安装指定版本
apt install xxx=version
二、dpkg常用操作
》安装
dpkg -i deb文件名
》查看一个包安装情况
dpkg -l teamviewer
》卸载
dpkg -r deb文件名
下载离线包
》查看是否已安装包
dpkg -l|grep teamviewer
>>查看一个包安装后,文件释放位置
dpkg -L teamviewer
>>查看一个包安装后,包的详细信息,版本、依赖和冲突等
dpkg -s teamviewer
》下载离线包
apt-get download teamviewer #下载到当前路径
或者 apt install -d teamviewer #下载到/var/cache/apt/archives
》下载位置通过命令find / -name teamviewer*搜索
》查看软件包依赖
apt-cache depends teamviewer
麒麟桌面系统包下载到/var/cache/apt/archives
本地存储仓库信息:/var/lib/apt/lists
仓库源:/etc/apt/sources.list
本地包信息文件:/var/lib/dpkg/status
apt操作命令历史:/var/log/apt/history.log
apt操作命令过程:/var/log/apt/term.log
dpkg操作记录:/var/log/dpkg.log
》apt-file search xxxx.so 查找库文件属于哪个包
没有需要下载 apt install apt-file
>>--install-recommends与 --no--install-recommends
安装推荐与 不安装推荐的,与control中recommends键有关
>>apt-cache rdepends ls
》查看deb包下载地址
如获取lrzsz下载地址
https://archive1.kylinos.cn/kylin/KYLIN-ALL\pool/universe/l/lrzsz/lrzsz_0.12.21-10kylin0k2_arm64.deb
具体操作:
apt-cache show lrzsz
apt-cache policy lrzsz
图片补充
》关于apt-get命令purge、remove区别
purge:卸载软件包及配置文件
remove:卸载软件包及依赖
》重新安装软件包
apt-get install lrzsz --reinstall
》aptitude
安装aptitude,使用aptitude进行安装会自动给出解决方案
sudo apt-get install aptitude
sudo aptitude install XXX
aptitude search string 搜索某个包,或者查找某个命令属于哪个包
aptitude show pkgname 显示包的详细信息
aptitude clean 删除下载的包文件
》apt下载包及其依赖
如下载包golang-go及其依赖
下载包:apt-get download golang-go
下载包依赖(冲突、):apt-get download `apt-cache depends golang-go |cut -d: -f2|tr -d "<>"`
只下载依赖:apt-get download `apt-cache depends golang-go |cut -d: -f2|grep depends`