linux工具apt、yum和dnf运用
首先,说明一下我的环境:ubuntu16.04。[*]什么是APT:
高级包装工具(英语:Advanced Packaging Tools,简称:APT)是Debian及其衍生发行版(如:ubuntu)的软件包管理器。APT可以自动下载,配置,安装二进制或者源代码格式的软 件包,因此简化了 Unix系统 上管理软件的过程.这次我主要尝试的是apt-get、apt-file、apt-cache和aptitude
[*]
[*]apt-get:
apt-get 是一个下载安装软件包的简单命令行接口。 最常用的命令是update(更新) 和install(安装)。这个命令的家都比较熟悉就不做截图了。
命令:
update - 重新获取软件包列表
upgrade - 进行更新
install - 安装新的软件包
remove - 移除软件包
autoremove - 自动移除全部不使用的软件包
purge - 移除软件包和配置文件
source - 下载源码档案
build-dep - 为源码包配置编译依赖
dist-upgrade - 发行版升级
dselect-upgrade - 依照 dselect 的选择更新
clean - 清除下载的归档文件
autoclean - 清除旧的的已下载的归档文件
check - 检验是否有损坏的依赖
选项:
-h 本帮助文件。
-q 输出到日志 - 无进展指示
-qq 不输出信息,错误除外
-d 仅下载 - 不安装或解压归档文件
-s 不实际安装。模拟执行命令
-y 假定对所有的询问选是,不提示
-f 尝试修正系统依赖损坏处
-m 如果归档无法定位,尝试继续
-u 同时显示更新软件包的列表
-b 获取源码包后编译 -V 显示详细的版本号
-c=? 阅读此配置文件
-o=? 设置自定的配置选项,如 -o dir::cache=/tmp
[*]
[*]apt-file:
apt-file是一个软件包查找工具,可以查到软件包所含的文件和安装的位置。(ps:据说是解决依赖的利器,不过我现在还不大懂)
[*]
[*]
[*]安装apt-file
apt-get install apt-file
[*]接着更新apt-file的缓存
apt-file update
[*]查看语法,如图:
apt-file -h
[*]
[*]apt-cache:
通过apt-cache命令结合一些参数使用能查寻到软件包信息和软件包依赖关系
[*]
[*]apt-cache的常用命令: showsrc - 显示源文件的各项记录
search - 根据正则表达式搜索软件包列表
depends - 显示该软件包的依赖关系信息
rdepends - 显示所有依赖于该软件包的软件包名字
show - 以便于阅读的格式介绍该软件包
pkgnames - 列出所有软件包的名字
policy - 显示软件包的安装设置状态
[*] 尝试查看火狐
apt-cache show firefox
[*]查看火狐依赖
apt-cache rdepends firefox
[*]查看火狐信息
apt-cache policy firefox
[*]
[*]aptitude:
aptitude与 apt-get 一样,是 Debian 及其衍生系统中功能极其强大的包管理工具。与 apt-get 不同的是,aptitude在处理依赖问题上更佳一些。举例来说,aptitude在删除一个包时,会同时删除本身所依赖的 包。这样,系统中不会残留无用的包,整个系统更为干净。
[*]
[*]安装aptitude
apt install aptitude
[*]查看语法:
aptitude -h
[*]删除旧的已下载软件包文件
aptitude autoclean
[*]扫雷小游戏,在尝试各种语法时无意中发现的,大家有兴趣可以找一找。^V^
_______________________________________________________________________________________________________________________________
分割线_______________________________________________________________________________________________________________________________
接着,换入vmware 12 中的CentOS 7.学习yum命令
什么是yum:
YUM(Yellowdog Updater Modified)是一款开源命令行及图形化软件包管理工具,面向基于RPM(红帽软件包管理器)的Linux系统。它让广大用户和系统管理员可以在系统上轻松地安 装、更新、移除或搜 索软件包。它由Seth Vidal开发和发布,采用了GPL(通用公共许可证),是一款开源工具。这意味着,谁都可以下载和访问代码,以修复软件错误,开发定制的软件 包。YUM通过解决软件包的依赖项问题, 使用众多的第三方软件库来自动安装软件包。
(先获得管理员权限)
[*]
[*]查看yum语法:
# yum -h
已加载插件:fastestmirror, langpacks
Usage: yum COMMAND
List of Commands:
check 检查 RPM 数据库问题
check-update 检查是否有可用的软件包更新
clean 删除缓存数据
deplist 列出软件包的依赖关系
distribution-synchronization 已同步软件包到最新可用版本
downgrade 降级软件包
erase 从系统中移除一个或多个软件包
fs Creates filesystem snapshots, or lists/deletes current snapshots.
fssnapshot Creates filesystem snapshots, or lists/deletes current snapshots.
groups 显示或使用、组信息
help 显示用法提示
history 显示或使用事务历史
info 显示关于软件包或组的详细信息
install 向系统中安装一个或多个软件包
langavailableCheck available languages
langinfo List languages information
langinstall Install appropriate language packs for a language
langlist List installed languages
langremove Remove installed language packs for a language
list 列出一个或一组软件包
load-transaction 从文件名中加载一个已存事务
makecache 创建元数据缓存
provides 查找提供指定内容的软件包
reinstall 覆盖安装软件包
repo-pkgs 将一个源当作一个软件包组,这样我们就可以一次性安装/移除全部软件包。
repolist 显示已配置的源
search 在软件包详细信息中搜索指定字符串
shell 运行交互式的 yum shell
swap Simple way to swap packages, instead of using shell
update 更新系统中的一个或多个软件包
update-minimal Works like upgrade, but goes to the 'newest' package match which fixes a problem that affects your system
updateinfo Acts on repository update information
upgrade 更新软件包同时考虑软件包取代关系
version 显示机器和/或可用的源版本。
Options:
-h, --help 显示此帮助消息并退出
-t, --tolerant 忽略错误
-C, --cacheonly 完全从系统缓存运行,不升级缓存
-c , --config= 配置文件路径
-R , --randomwait= 命令最长等待时间
-d , --debuglevel= 调试输出级别
--showduplicates 在 list/search 命令下,显示源里重复的条目
-e , --errorlevel= 错误输出级别
--rpmverbosity= RPM 调试输出级别
-q, --quiet 静默执行
-v, --verbose 详尽的操作过程
-y, --assumeyes 回答全部问题为是
--assumeno 回答全部问题为否
--version 显示 Yum 版本然后退出
--installroot= 设置安装根目录
--enablerepo= 启用一个或多个软件源(支持通配符)
--disablerepo= 禁用一个或多个软件源(支持通配符)
-x , --exclude= 采用全名或通配符排除软件包
--disableexcludes= 禁止从主配置,从源或者从任何位置排除
--disableincludes= disable includepkgs for a repo or for everything
--obsoletes 更新时处理软件包取代关系
--noplugins 禁用 Yum 插件
--nogpgcheck 禁用 GPG 签名检查
--disableplugin= 禁用指定名称的插件
--enableplugin= 启用指定名称的插件
--skip-broken 忽略存在依赖关系问题的软件包
--color=COLOR 配置是否使用颜色
--releasever=RELEASEVER 在 yum 配置和 repo 文件里设置 $releasever 的值
--downloadonly 仅下载而不更新
--downloaddir=DLDIR 指定一个其他文件夹用于保存软件包
--setopt=SETOPTS 设置任意配置和源选项
--bugfix Include bugfix relevant packages, in updates
--security Include security relevant packages, in updates
--advisory=ADVS, --advisories=ADVS Include packages needed to fix the given advisory, in updates
--bzs=BZS Include packages needed to fix the given BZ, in updates
--cves=CVES Include packages needed to fix the given CVE, in updates
--sec-severity=SEVS, --secseverity=SEVS Include security relevant packages matching the severity, in updates
[*] 使用Yum移除软件包
想完全移除软件包连同所有依赖项,只要运行下面这个命令,如下所示。
yum remove firefox
[*]查看火狐依赖
yum deplist firefox
[*] 列出所有的可用群组软件包
yum grouplist
[*] 列出启用的Yum软件库
列出系统里面所有启用的Yum软件库,使用下面这个选项
yum repolist
[*] 查看Yum的历史记录
想查看Yum命令的所有过去的事务,只要使用下面这个命令
yum history
[*] 使用Yum搜索软件包
yum search firefox
虽然这是我第一次用CentOS也是第一次用yum但是感觉比apt好用,至少是在汉化上。:)
_______________________________________________________________________________________________________________________________
分割线
_______________________________________________________________________________________________________________________________
什么是dnf:
DNF新一代的RPM软件包管理器。他首先出现在 Fedora 18 这个发行版中。而最近,他取代了YUM,正式成为 Fedora 22 的包管理器。
DNF包管理器克服了YUM包管理器的一些瓶颈,提升了包括用户体验,内存占用,依赖分析,运行速度等多方面的内容。
DNF使用 RPM, libsolv 和 hawkey 库进行包管理操作。尽管它没有预装在 CentOS 和 RHEL 7 中,但你可以在使用 YUM 的同时使用 DNF 。
DNF 的最新稳定发行版版本号是 1.0,发行日期是2015年5月11日。 这一版本的额 DNF 包管理器(包括在他之前的所有版本)都大部分采用 Pathon 编写,发行许可为GPL v2.
[*]
[*]为了安装 DNF ,您必须先安装并启用 epel-release 依赖。
# yum install epel-release
[*] 使用 epel-release 依赖中的 YUM 命令来安装 DNF 包
# yum install dnf
[*]查看dnf语法:
dnf -h
[*] 查看 DNF 包管理器版本
用处:该命令用于查看安装在您系统中的 DNF 包管理器的版本
dnf --version(注意是--)
[*] 查看系统中可用的 DNF 软件库
用处:该命令用于显示系统中可用的 DNF 软件库
dnf repolist
之前这里我遇到了一个问题,出现了以下状况:
Failed to open: /var/cache/dnf/x86_64/7/x86_64/7/epel/repodata/908717b2d1a9a0d1642da53884fdce66a4db1b0130e3a0ffb923d596423192c6-updateinfo.xml.bz2.
解决方法是:
yum remove epel-release
参考文章:
[*]http://unix.stackexchange.com/questions/250249/error-after-installing-dnf-on-centos-7
[*]http://m.blog.csdn.net/article/details?id=16960149
[*]http://www.iyunv.com/Linux/2015-06/118751.htm
页:
[1]