包管理

98 阅读4分钟

[TOC]

包管理 (RPM)

rpm用于互联网下载包的打包及安装工具,它包含再某些Linux发行版中。它生成具有,rpm扩展名的文件。RPM是RedHatPackageManager(RedHat软件包管理工具)的缩写,类似windows的setup.exe,这一支文件格式名称虽然打上了RedHat的标志,但是理念是通的。 Linux发行版本都有采用(suse,redhat,centos等等),可以算是公认的行业标准了。

rpm [参数]
rpm -qa | grep 软件包名
-qa          # 查询所安装的所有rpm软件包
-q  软件包名  # 查询软件包是否安装
-qi 软件包名  # 查询软件包安装信息
-qf 软件包名  # 查询文件所属的软件包
-e  软件包名  # 删除软件包

# -e 删除如果有其他软件包依赖要删除的软件包,系统会阻止删除
-e --nodeps  软件包名  # 强制删除软件包



# 是否安装了firefox
rpm -qa | grep firefox


# 安装了会显示
firefox-64.2.2-1.el7.centos.x86_64

# 未安装了会显示

# 未安装


# 名称:firefox

# 版本:60.2.2-1

# 适用于操作系统:el7.centos.x86_64 (表示centos7.x的64位系统)

# 如果i686、i386表示32位系统,noarch表示通用

安装

rpm [参数]
-i  软件包名  # 安装  
-v  软件包名  # 提示
-h  软件包名  # 进度条

# i=install 安装

# v=verbose 提示

# h=hash    进度条


# 软件包名要全名称


# 安装软件包
rpm -ivh  软件包名  

# 演示
rpm -ivh  firefox

卸载

rpm [参数]
-e  软件包名 
-e --nodeps  软件包名 


# 删除软件包
rpm -e  软件包名 

# -e 删除如果有其他软件包依赖要删除的软件包,系统会阻止删除


# 强制删除软件包
rpm -e --nodeps  软件包名 

查询

rpm [参数]
rpm -qa | grep 软件包名
-qa          # 查询所安装的所有rpm软件包
-q  软件包名  # 查询软件包是否安装
-qi 软件包名  # 查询软件包安装信息
-qf 软件包名  # 查询文件所属的软件包
-e  软件包名  # 删除软件包

# -e 删除如果有其他软件包依赖要删除的软件包,系统会阻止删除
-e --nodeps  软件包名  # 强制删除软件包



# 是否安装了firefox
rpm -qa | grep firefox


# 安装了会显示
firefox-64.2.2-1.el7.centos.x86_64

# 未安装了会显示

# 未安装软件包 firefox


# 名称:firefox

# 版本:60.2.2-1

# 适用于操作系统:el7.centos.x86_64 (表示centos7.x的64位系统)

# 如果i686、i386表示32位系统,noarch表示通用

包管理 (yum)

yum 是一个shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载rpm包并且安装,可以自行处理以来关系,并且以此安装所有依赖包

安装

yum install xxx

卸载

yum remove xxx

查询

yum list | grep xxx软件包列表
# 列出所有可更新的软件清单
yum check-update


# 更新所有软件
yum update


# 仅安装指定的软件
yum install <package_name>


# 仅更新指定的软件
yum update <package_name>


# 列出所有可安裝的软件清单
yum list


# 删除指定的软件
yum remove  <package_name>


# 查找软件包命令
yum search <keyword>


# 清除缓存命令

yum clean packages    # 清除缓存目录下的软件包
yum clean headers     # 清除缓存目录下的 headers
yum clean oldheaders  # 清除缓存目录下旧的 headers
yum clean, yum clean all (= yum clean packages; yum clean oldheaders)     # 清除缓存目录下的软件包及旧的 headers

包管理 (apt-get)

Ubuntu : apt-get 命令 - sparkdev - 博客园 (cnblogs.com)

sudo apt-get [options] command
sudo apt-get [选项] 操作
-h, --help              # 查看帮助文档
-v, --version           # 查看 apt-get 的版本
-y                      # 在需要确认的场景中回应 yes
-s, --dry-run           # 模拟执行并输出结果
-d, --download-only     # 把包下载到缓存中而不安装
--only-upgrade          # 更新当前版本的包而不是安装新的版本
--no-upgrade            # 在执行 install 命令时,不安装已安装包的更新
-q, --quiet             # 减少输出
--purge                 # 配合 remove 命令删除包的配置文件
--reinstall             # 重新安装已安装的包或其新版本

update     # 更新
install    # 安装或升级
remove     # 删除卸载
purge      # 删除的同时也删除了包的配置文件
autoremove # 删除自动安装的软件包,删除被依赖的软件包
download   # 下载二进制的软件包到当前目录中
clean      # 清除在本地库中检索到的包
autoclean  # 它只删除不能再下载的软件包文件
source     # 下载包的源代码到当前目录中
changelog  # 尝试下载并显示包的更新日志
dist-upgrade # 升级并处理依赖关系

# 建议按顺序执行下面的命令

$ apt-get update

$ apt-get upgrade -y

$ apt-get dis-upgrade -y

sudo apt-get install nginx       # 安装nginx
sudo apt-get install -y nginx    # 安装nginx,需要确认的都按y/yes确认
命令说明
sudo apt-get update更新源
sudo apt-get install 包名安装包
sudo apt-get remove 包名删除包
sudo apt-cache search 包名搜索软件包