RedHat系列软件管理(第二版) --二进制软件包管理
RedHat系列软件管理
--二进制软件包管理
Linux学习思想-Linux相对与Windows来非常透明,因此,无论是系统,还是软件,都会有本身自带,或者是Man给提供的非常详细的说明/帮助文档,只要我们利用好这些文档,只要英文足够好,不需要任何教科书,任何教学视频,你都可以学好Linux!
RPM包管理
Linux软件包命名形式
sudo-1.7.2p1-5.el5.i386.rpm
#其中包括软件名(sudo),版本号(1.7.2pl),发行号(5.el5),和硬件平台(i386)
卸载软件包
rpm -e [soft-name] #如果其它软件包有依赖关系,卸载时会产生提示信息
rpm -e --nodeps [soft-name] #添加--nodeps,可强行卸载;但是不建议这样卸载
安装软件包
rpm -ivh [软件包名]【如:sudo-1.7.2p1-5.el5.i386.rpm】
v: 表示显示详细信息,可选
h: 表示显示安装进度,可选
1、 挂载光盘:【最佳实践:将光盘,U盘等挂载到/mnt目录下】
mkdir /mnt/cdrom
mount /dev/cdrom /mnt/cdrom #现在打开/mnt/cdrom就相当与访问光盘内容
2、 查询是否存在:ls | grep sudo
3、 安装: rpm -ivh sudo-1.7.2p1-5.el5.i386.rpm
4、 查看是否已安装:rpm -q sudo
5、 rpm -qa | grep samba #查询所有与samba有关的软件包
【-qa表示查询安装了的所有的软件包】
rpm其他安装选项
--excludedocs 不安装软件的文档
--prefix=PATH 将软件包安装到由PATH指定的路径下
如:rpm -ivh –prefix=/usr/local sudo-1.7.2p1-5.el5.i386.rpm
【但是:大部分的rpm包都不允许改变安装路径】
--test 只是进行测试,而不进行真正安装,比如获取依赖关系,该软件包是否已经安装
附-光盘中所有的二进制软件全部保存在CentOS|Packages[新版centOS]目录下
特殊情况
A.覆盖安装
--replacepkgs 覆盖软件安装包
B.安装冲突
如果要安装的软件包中有一个文件已在安装其它软件包时安装,会出现以下错误信息:
rpm -ivh sudo-1.8.6p3-7.el6.i686.rpm
warning: sudo-1.8.6p3-7.el6.i686.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing... ########################################### [100%]
package sudo-1.8.6p3-7.el6.i686 is already installed
使--replacefiles忽略改出错信息,覆盖安装
C.未解决依赖关系
该软件包可能依赖于其它软件包,在安装了特定的软件包之后才能安装该软件包。
rpm -ivh sudo-1.7.2p1-5.el5.i386.rpm failed dependencies: sudo is needed by bark-3.2-1l
使用--nodeps 选项,可以强制安装此软件包,十有八九运行不了。
升级软件包
sudo -Uvh sudo-1.8.6p3-7.el6.i686.rpm
查询【重要】
-a 查询所有已安装的软件包.
-f 查询文件所属软件包
-p 查询软件包,还没安装的软件包
-q 查询软件包是否安装
-i 显示软件包信息
-l 显示软件包中的文件列表及所在位置
-d 显示被标注为文档的文件列表及所在位置
-c 显示被标注为配置文件的文件列表及所在位置
实例:
1、查询文件/命令隶属的软件包
rpm -qf /etc/services #配置文件
rpm -qf /bin/ls #命令
2、查询软件包信息
rpm -qi samba //查询一个已经安装的软件包
rpm -qip samba-3.6.9-151.el6.i686.rpm #可以查询还没有安装的rpm包,全称!
3、查询安装包的安装文件,及安装文件所在位置
rpm -ql sudo
rpm -qip vsftpd-2.2.2-11.el6_3.1.i686.rpm #没有安装,全称!
4、查询软件包帮助文档及所在位置
rpm -qd sudo
rpm -qdp vsftpd-2.2.2-11.el6_3.1.i686.rpm #没有安装,全称!
5、查询软件包配置文件及所在位置
rpm -qc
rpm -qcp //同上
RPM综合运用实例
一、vncserver是干什么用的???
rpm -qf vncserver
然后 rpm -qi vnc-server #得知仔细信息
二、查询vim的标准注释
1.查询系统中是否已经安装某个安装包用:rpm -qa | grep vim
而不是直接用: rpm -a vim
查询示例文档:rpm -qa vim | grep example
2.然后打开并查看
vi /usr/share/vim/vim72/vimrc_example.vim
校验
#可用于帮助我们判断软件包是否出现问题,以及出现的问题在哪里
rpm -V name 正常情况下不会有任何提示,他的任何文件都没与更改
【rpm在安装一个软件到系统中时,会自动生成一个rpm库,校验时,会和这个库比对】
5 文件的md5校验值
S 文件大小
L 链接文件
T 文件的创建或最后修改时间
D 设备文件
U 文件的用户
G 文件的用户组
M 文件的权限
附-md5sum:通过md5算法对文件生成唯一的校验值,只要文件的内容不变,则校验值就不会变,对该文件内容做任何一个微小的改变,他的校验值都会改变
重要文件修复
比如/etc/inittab文件被删除,可以将该文件从原始的安装光盘中提取出来
1.定位该文件隶属于哪个软件包
rpm -qf /etc/inittab
2.解压所有文件到当前目录【不推荐】
rpm2cpio initscripts-8.45.30-2.el5.centos.i386.rpm | cpio -idv
解压指定文件到当前目录【推荐】
rpm2cpio /mnt/cdrom/initscripts-8.45.30-2.el5.centos.i386.rpm | cpio -idv ./etc/inittab 【注意:./etc/inittab 只允许提取到当前目录下】
【在Linux Server系统的管理上,我们更倾向与稳定,而不是最新版】
YUM软件包管理
应用YUM的好处
(1)自动解决软件安装包依赖关系
(2)方便软件包的升级
(3)可信任,官方软件包
1、安装
yum install sudo
2、检测升级
yum check-update sudo
yum check-update #检测所有的软件包的升级
3、升级【比较重要,常用的软件包要经常升级一下】
yum update sudo
4、查询软件包信息
yum list //会列出软件源上的所有软件包
最佳实践: yum list | less
yum list | grep samba
5、查询软件包信息
yum info [软件名]
yum info sudo
6、卸载软件包
yum remove sudo
7、查看帮助信息
yum --help 或者 man yum
【最佳实践:yum --help | less】
RedHat系列软件管理(第二版) --二进制软件包管理相关推荐
- RedHat系列软件管理(第二版) --源码包安装
RedHat系列软件管理 --源码包安装 源码包特点: 拥有广泛的平台支持性,可以装在所有的类UNIX操作系统上,不用考虑CPU架构. 灵活性,可以在安装过程中指定特有的选项. 定制度非常高,可以自己 ...
- RedHat系列软件管理(第二版) --脚本安装
RedHat系列软件管理 --脚本安装 一.解压缩 tar -zxvf webmin-1.700.tar.gz 二.进入相关目录 cd webmin-1.700 三.如果此时执行./configure ...
- yum(Fedora和RedHat以及SUSE中的Shell前端软件包管理器)命令详解
yum官方网站:http://yum.baseurl.org/ Fedora对于yum的介绍:http://fedoraproject.org/wiki/Yum yum(全称为 Yellow dog ...
- Debian系列软件管理(第二版)
Debian系列软件管理 1.搜索软件包信息 apt-cache search apt-cache search yum 2.查看软件包信息 apt-cache show rpm 3.安装软件 apt ...
- 【Git】版本控制管理(第二版) 前言 第一章 第二章
版本控制管理 前言 第一章 第二章 资源 前言 本书结构 第一章 介绍 总结在开头 1.1 背景 1.2 Git的诞生 1.3 先例 1.4 时间线 第二章 安装Git 2.1 使用Linux上的二进 ...
- Linux中deb软件包管理怎么看,Deb软件包管理
一.流行的两种软件包管理机制 1.Debian Linux首先提出"软件包"的管理机制--Deb软件包 将应用程序的二进制文件.配置文档.man/info帮助页面等文件合并打包在一 ...
- centos linux 包管理,Linux和CentOS软件包管理
Linux和CentOS软件包管理 (此处以httpd-2.2.15-56.el6.centos.3.x86_64.rpm为例)安装:# rpm-ivhhttpd-2.2.15-56.el6.cent ...
- 软件调试第二版卷一硬件基础 pdf_2020全球C++及系统软件技术大会,C++之父领衔...
2020年是全球IT科技版图震荡和转折之年,系统级软件作为数字世界的核心基础设施,被视为"卡脖子"技术的关键,成为IT产学研"兵家必争之地".C++语言一直被誉 ...
- Linux进程管理(第二版) --进程管理命令
进程管理命令 一.查看用户信息w 1. w显示信息的含义 TTY:说明用户登录的方式,ttyN:表示以本地终端登录;pts/N表示以远程终端登录 JCPU:以终端代号来区分,该终端所有相关的进程执行时 ...
最新文章
- A Grain of Sand 一粒沙子
- GOF23种设计模式(Design Pattern)总结
- Apache Kafka-Spring Kafka生产消费@KafkaListener源码解析
- 《你必须掌握的Entity Framework 6.x与Core 2.0》书籍出版
- idea集成python_IDEA集成Python插件,SDK配置
- linux内核全局变量同名,Linux系统下DSO同名全局变量浅析
- Ubuntu 出现apt-get: Package has no installation cand
- hdu,2050,折线分割平面
- 联想关闭计算机,联想电脑关机后自动重启怎么回事
- 大数据:互联网大数据和物联网大数据有何不同?
- iphone/ipad保存图片问题
- P5405 [CTS2019]氪金手游 【数学概率+树形dp】
- 数据挖掘:实用案例分析 下载_真经阁丨萌低龄,超实用“萌系”呈现技巧及设计案例分析...
- 微信支付的时候提示:当前交易异常,暂无法完成支付,请注意合法使用账户,否则将升级限制措施!
- OpenCascade学习笔记-创建一个简单的OpenCascade单文档
- python篇 深拷贝与浅拷贝
- 学术期刊的概念、分类,计算机类主要期刊索引和机构
- html js 修改img 图片不拉伸,Javascript防止图片拉伸的自适应处理方法
- 射影几何 -- 平面射影几何 1
- private static final long serialVersionUID = 1L 干什么的?