linux基础-第十五单元 软件包的管理
使用RPM安装及移除软件
什么是RPM
rpm的文件名
rpm软件安装与移除工作中经常使用的选项
查看RPM软件包中的信息
查询已安装的软件包信息
RPM包的属性依赖性问题
什么是RPM包的属性依赖性问题
RPM包的属性依赖性问题解决方法
将nginx编译为rpm包
课后作业
【本节内容】
1. 使用RPM安装及移除软件(详见linux系统管理P374)
1) 掌握RPM的定义:RPM就是Red Hat Package Manger(红帽软件包管理工具)的缩写。
2) 了解rpm的文件名分为5部分,其中:
第1部分是name,表示这个rpm软件包的名称;
第2部分是version,表示这个rpm软件包的版本编号;
第3部分是release,表示这个rpm软件包的版本发布次数(修正号码);
第4部分是architectures,表示这个rpm软件包适用于哪些平台;
最后一部分是rpm,表示这个rpm软件包的文件扩展名。
3) 掌握rpm软件安装与移除工作中经常使用的选项:
a) –i:安装(Install)软件。
b) –U:升级(Upgrade)旧版本的软件。
c) –e:移除/删除(Erase)软件。
d) –v:显示详细的处理信息。
e) –h:显示安装进度。卸载不能用
2. 查看RPM软件包中的信息(详见linux系统管理P379)
1) 掌握常用的查询已安装的软件包信息的命令:
a) rpm –qa:显示目前操作系统上安装的全部软件包,其中q是query(查询)的第1个字母,a是all(全部)的第1个字母。
Rpm –qa | grep dhcp
b) rpm –qf 文件名:显示这个文件是由哪个软件包安装的,f是file(文件)的第1个字母。
例如:列出安装/bin/tar文件的软件包的命令为:rpm –qf /bin/tar
c) rpm –qi 软件包名:显示这个软件包的信息,i是information(信息)的第1个字母。
例如:列出tar-1.14-10.RHEL4这个软件包的详细信息的命令:rpm –qi tar-1.14-10.RHEL4
d) rpm –ql 软件包名:列出这个软件包中所包含的全部文件,其中l是list的第1个字母。
例如:列出tar-1.14-10.RHEL4这个软件包中所包含的全部文件的命令:rpm –ql tar
p数据包
3. RPM包的属性依赖性问题(详见linux系统管理P388)
1) 掌握RPM软件包的属性依赖性问题的定义:所谓的RPM软件包的属性依赖性问题,即这个软件包的安装依赖于其他软件包的安装。
4. 课后作业(用时40分钟)
1) 挂载光盘文件到/media目录
2) 进去/media目录下的Packages目录
3) 查看系统已安装的所有rpm包
4) 查看系统是否安装dhcp软件包
5) 安装dhcp软件包
6) 查看dhcp软件包的信息
7) 查看dhcp软件包中所包含的所有文件
8) 查看/bin/ls文件是由哪个软件包产生
9) 卸载dhcp软件包
rpm包管理课程笔记
[root@study ~]# qq.tar.qz #编译安装
[root@study ~]# 编译 (源码翻译成二进制)====》安装
root@study ~]# rpm ====>直接安装
rpm包的功能:
增加 、删除、查找
[root@study ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda3 10035836 3658812 5860572 39% /
tmpfs 1019504 76 1019428 1% /dev/shm
/dev/sda1 194241 41004 142997 23% /boot
/dev/sr0 3803432 3803432 0 100% /media/CentOS_6.7_Final
[root@study ~]# cd /media/CentOS_6.7_Final/
[root@study CentOS_6.7_Final]# ll
总用量 558
-r--r--r--. 2 root root 14 8月 5 2015 CentOS_BuildTag
dr-xr-xr-x. 3 root root 2048 8月 5 2015 EFI
-r--r--r--. 2 root root 212 11月 27 2013 EULA
-r--r--r--. 2 root root 18009 11月 27 2013 GPL
dr-xr-xr-x. 3 root root 2048 8月 5 2015 images
dr-xr-xr-x. 2 root root 2048 8月 5 2015 isolinux
dr-xr-xr-x. 2 root root 528384 8月 5 2015 Packages
-r--r--r--. 2 root root 1354 7月 25 2015 RELEASE-NOTES-en-US.html
dr-xr-xr-x. 2 root root 4096 8月 5 2015 repodata
-r--r--r--. 2 root root 1706 11月 27 2013 RPM-GPG-KEY-CentOS-6
-r--r--r--. 2 root root 1730 11月 27 2013 RPM-GPG-KEY-CentOS-Debug-6
-r--r--r--. 2 root root 1730 11月 27 2013 RPM-GPG-KEY-CentOS-Security-6
-r--r--r--. 2 root root 1734 11月 27 2013 RPM-GPG-KEY-CentOS-Testing-6
-r--r--r--. 1 root root 3380 8月 5 2015 TRANS.TBL
[root@study Packages]# ls | less
389-ds-base-1.2.11.15-60.el6.x86_64.rpm
389-ds-base-libs-1.2.11.15-60.el6.x86_64.rpm
abrt-2.0.8-34.el6.centos.x86_64.rpm
abrt-addon-ccpp-2.0.8-34.el6.centos.x86_64.rpm
abrt-addon-kerneloops-2.0.8-34.el6.centos.x86_64.rpm
abrt-addon-python-2.0.8-34.el6.centos.x86_64.rpm
abrt-cli-2.0.8-34.el6.centos.x86_64.rpm
abrt-desktop-2.0.8-34.el6.centos.x86_64.rpm
abrt-gui-2.0.8-34.el6.centos.x86_64.rpm
abrt-libs-2.0.8-34.el6.centos.x86_64.rpm
abrt-python-2.0.8-34.el6.centos.x86_64.rpm
abrt-tui-2.0.8-34.el6.centos.x86_64.rpm
abyssinica-fonts-1.0-5.1.el6.noarch.rpm
acl-2.2.49-6.el6.x86_64.rpm
acpid-1.0.10-2..1el6.x86_64.rpm
aic94xx-firmware-30-2.el6.noarch.rpm
注意事项:
软件包是奇数是不稳定版本,软件包是偶数是稳定版本
说明:
rpm的文件名分为5部分,其中:
第1部分是name,表示这个rpm软件包的名称;
第2部分是version,表示这个rpm软件包的版本编号;
第3部分是release,表示这个rpm软件包的版本发布次数(修正号码);
第4部分是architectures,表示这个rpm软件包适用于哪些平台;
最后一部分是rpm,表示这个rpm软件包的文件扩展名。
#安装rpm软件包
[root@study Packages]# rpm -ivh dhcp-4.1.1-49.P1.el6.centos.x86_64.rpm
warning: dhcp-4.1.1-49.P1.el6.centos.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing... ########################################### [100%]
1:dhcp ########################################### [100%]
#同时安装多个rpm软件包
[root@study Packages]# rpm -ivh lrzsz-0.12.20-27.1.el6.x86_64.rpm zip-3.0-1.el6.x86_64.rpm
warning: lrzsz-0.12.20-27.1.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID c105b9de: NOKEY
Preparing... ########################################### [100%]
package zip-3.0-1.el6.x86_64 is already installed
#查看已经安装的软件包
[root@study Packages]# rpm -qa |grep 'dhc'
dhclient-4.1.1-49.P1.el6.centos.x86_64
dhcp-4.1.1-49.P1.el6.centos.x86_64
dhcp-common-4.1.1-49.P1.el6.centos.x86_64
or
[root@study Packages]# rpm -q dhcp
dhcp-4.1.1-49.P1.el6.centos.x86_64
#卸载rpm包
[root@study Packages]# rpm -e dhcp
#再卸载一次就会显示,找不到这个包
[root@study Packages]# rpm -e dhcp
error: package dhcp is not installed
or
[root@study Packages]# rpm -e dhcp-4.1.1-49.P1.el6.centos.x86_64
#强制安装
[root@study Packages]# rpm -ivh dhcp-4.1.1-49.P1.el6.centos.x86_64.rpm --force
warning: dhcp-4.1.1-49.P1.el6.centos.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing... ########################################### [100%]
1:dhcp ########################################### [100%]
#忽略依赖性删除
[root@study Packages]# rpm -e dhcp-common --nodeps
#查看dhcp 与 dhclient
[root@study Packages]# rpm -qa|grep dhcp
dhcp-4.1.1-49.P1.el6.centos.x86_64
[root@study Packages]# rpm -qa|grep dhclient
dhclient-4.1.1-49.P1.el6.centos.x86_64
#安装dhclient
[root@study Packages]# rpm -ivh dhclient-4.1.1-49.P1.el6.centos.x86_64.rpm
warning: dhclient-4.1.1-49.P1.el6.centos.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
error: Failed dependencies:
dhcp-common = 12:4.1.1-49.P1.el6.centos is needed by dhclient-12:4.1.1-49.P1.el6.centos.x86_64
[root@study Packages]# rpm -ivh dhcp-common-4.1.1-49.P1.el6.centos.x86_64.rpm
warning: dhcp-common-4.1.1-49.P1.el6.centos.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing... ########################################### [100%]
1:dhcp-common ########################################### [100%]
[root@study Packages]# rpm -ivh dhclient-4.1.1-49.P1.el6.centos.x86_64.rpm
warning: dhclient-4.1.1-49.P1.el6.centos.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing... ########################################### [100%]
package dhclient-12:4.1.1-49.P1.el6.centos.x86_64 is already installed
#在线安装rpm包
地址:
http://mirror.centos.org/centos-6/6.8/extras/x86_64/Packages/
[root@study Packages]# rpm -ivh http://mirror.centos.org/centos-6/6.8/extras/x86_64/Packages/python-empy-3.3-5.el6.centos.noarch.rpm
Retrieving http://mirror.centos.org/centos-6/6.8/extras/x86_64/Packages/python-empy-3.3-5.el6.centos.noarch.rpm
warning: /var/tmp/rpm-tmp.aIvyBz: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing... ########################################### [100%]
1:python-empy ########################################### [100%]
[root@study Packages]# pwd
/media/CentOS_6.7_Final/Packages
[root@study Packages]# cd
[root@study ~]# cd /tmp
[root@study tmp]# mkdir -p /service/scripts
[root@study tmp]# cd /service/scripts/
[root@study scripts]# wget http://mirror.centos.org/centos-6/6.8/extras/x86_64/Packages/python-boto-2.32.1-1.el6.centos.noarch.rpm
--2016-11-18 11:04:31-- http://mirror.centos.org/centos-6/6.8/extras/x86_64/Packages/python-boto-2.32.1-1.el6.centos.noarch.rpm
正在解析主机 mirror.centos.org... 202.76.233.2, 2605:9000:401:102::2
正在连接 mirror.centos.org|202.76.233.2|:80... 已连接。
[root@study scripts]# ll
总用量 1684
-rw-r--r--. 1 root root 1722164 11月 4 2014 python-boto-2.32.1-1.el6.centos.noarch.rpm
#安装软件包
[root@study scripts]# rpm -ivh python-boto-2.32.1-1.el6.centos.noarch.rpm
warning: python-boto-2.32.1-1.el6.centos.noarch.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing... ########################################### [100%]
1:python-boto ########################################### [100%]
#查看安装在什么位置
[root@study tmp]# rpm -ql python-boto-2.32.1-1.el6.centos.noarch
/usr/bin/asadmin
/usr/bin/bundle_image
/usr/bin/cfadmin
/usr/bin/cq
/usr/bin/cwutil
/usr/bin/dynamodb_dump
/usr/bin/dynamodb_load
/usr/bin/elbadmin
/usr/bin/fetch_file
/usr/bin/glacier
/usr/bin/instance_events
/usr/bin/kill_instance
/usr/bin/launch_instance
/usr/bin/list_instances
/usr/bin/lss3
/usr/bin/mturk
/usr/bin/pyami_sendmail
/usr/bin/route53
/usr/bin/s3put
/usr/bin/sdbadmin
/usr/bin/taskadmin
/usr/lib/python2.6/site-packages/boto
/usr/lib/python2.6/site-packages/boto-2.32.1-py2.6.egg-info
/usr/lib/python2.6/site-packages/boto-2.32.1-py2.6.egg-info/PKG-INFO
/usr/lib/python2.6/site-packages/boto-2.32.1-py2.6.egg-info/SOURCES.txt
/usr/lib/python2.6/site-packages/boto-2.32.1-py2.6.egg-info/dependency_links.txt
/usr/lib/python2.6/site-packages/boto-2.32.1-py2.6.egg-info/top_level.txt
#查看软件包详细信息
[root@study scripts]# rpm -qi python-boto
Name : python-boto Relocations: (not relocatable)
Version : 2.32.1 Vendor: CentOS
Release : 1.el6.centos Build Date: 2014年11月01日 星期六 00时47分37秒
Install Date: 2016年11月18日 星期五 11时10分31秒 Build Host: c6b8.bsys.dev.centos.org
Group : Development/Languages Source RPM: python-boto-2.32.1-1.el6.centos.src.rpm
Size : 8846304 License: MIT
Signature : RSA/SHA1, 2014年11月04日 星期二 02时54分24秒, Key ID 0946fca2c105b9de
Packager : CentOS BuildSystem <http://bugs.centos.org>
URL : https://github.com/boto/boto
Summary : A simple, lightweight interface to Amazon Web Services
Description :
Boto is a Python package that provides interfaces to Amazon Web Services.
It supports over thirty services, such as S3 (Simple Storage Service),
SQS (Simple Queue Service), and EC2 (Elastic Compute Cloud) via their
REST and Query APIs. The goal of boto is to support the full breadth
and depth of Amazon Web Services. In addition, boto provides support
for other public services such as Google Storage in addition to private
cloud systems like Eucalyptus, OpenStack and Open Nebula.
linux基础-第十五单元 软件包的管理的更多相关文章
- linux基础-第十六单元 yum管理RPM包
第十六单元 yum管理RPM包 yum的功能 本地yum配置 光盘挂载和镜像挂载 本地yum配置 网络yum配置 网络yum配置 Yum命令的使用 使用yum安装软件 使用yum删除软件 安装组件 删 ...
- linux基础-第十四单元 Linux网络原理及基础设置
第十四单元 Linux网络原理及基础设置 三种网卡模式图 使用ifconfig命令来维护网络 ifconfig命令的功能 ifconfig命令的用法举例 使用ifup和ifdown命令启动和停止网卡 ...
- linux基础命令学习五(软件包管理、下载管理)
Linux 软件包管理 本文主要是记录下RedHat系列的软件包管理. 内容分为以下二个部分:二进制包的管理,源代码包的管理 一.二进制包的管理 1.1概念 主要有RPM和YUM这两种包管理. 两 ...
- linux基础-第十九单元_nfs服务
#服务端部署 介绍: NFS 是Network File System的缩写,即网络文件系统.一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布.功能是通过网络让不同的机器.不同的 ...
- linux基础-第十八单元_nginx部署
一.基本环境配置 1.1.安装常用软件 yum install wget -y 1.2.Install yum repo mv /etc/yum.repos.d/CentOS-Base.repo /e ...
- Bootstrap <基础二十五>警告(Alerts)
警告(Alerts)以及 Bootstrap 所提供的用于警告的 class.警告(Alerts)向用户提供了一种定义消息样式的方式.它们为典型的用户操作提供了上下文信息反馈. 您可以为警告框添加一个 ...
- Java15-java语法基础(十五)——内部类
java16-java语法基础(十五)内部类 一.内部类: 可以在一个类的内部定义另一个类,这种类称为内部类. 二.内部类分为两种类型: 1.静态内部类: 静态内部类是一个具有static修饰词的类, ...
- vue第十五单元(熟练使用vue-router插件)
第十五单元(熟练使用vue-router插件) #课程目标 1.掌握路由嵌套 2.掌握导航守卫 #知识点 #一.路由嵌套 很多时候,我们会在一个视口中实现局部页面的切换.这时候就需要到了嵌套路由. 也 ...
- react第十五单元(react路由的封装,以及路由数据的提取)
第十五单元(react路由的封装,以及路由数据的提取) #课程目标 熟悉react路由组件及路由传参,封装路由组件能够处理路由表 对多级路由能够实现封装通用路由传递逻辑,实现多级路由的递归传参 对复杂 ...
随机推荐
- 在ASP.NET MVC中使用Unity进行依赖注入的三种方式
在ASP.NET MVC4中,为了在解开Controller和Model的耦合,我们通常需要在Controller激活系统中引入IoC,用于处理用户请求的 Controller,让Controller ...
- js获得昨天前天明天时间以及setDate()
<script type="text/javascript"> function GetDateStr(AddDayCount) { var dd = new Date ...
- save()、saveOrUpdate()、merge()的区别
一.Save() save()方法能够保存实体到数据库.假如两个实体之间有关系(例如employee表和address表有一对一关系),如果在没有事务的情况下调用这个方法保存employee这个实体, ...
- AS开发者转LAYA一周心得
LAYA太神奇了,你可以完全不会H5,会AS3就能开发出H5游戏
- [No000021]跟维多利亚学英语
- 部署Linux下的man慢查询中文帮助手册环境
对于Linux运维工作者来说,man查询手册绝对是一个好东西.当我们对一些命令或参数有些许模糊时,可以通过man查询手册来寻求帮助.其实Linux之所以强大, 就在于其强大的命令行, 面对如此繁杂的命 ...
- 在ESXi 5.x之间冷迁移虚机
试过几种不同的方法都不成功, 直接用VMware vCenter Converter Standalone Client迁移, 会出现task中的source与job中的source不一致的情况, 使 ...
- IO操作总结
1,读取文件将文件转换为二进制流 InputStream in = new FileInputStream("C:/test.png"); byte[] photo = new b ...
- try catch finally的执行顺序(有return的情况下)
结论:1.不管有木有出现异常,finally块中代码都会执行:2.当try和catch中有return时,finally仍然会执行:3.finally是在return后面的表达式运算后执行的(此时并没 ...
- Java 集合系列16之 HashSet详细介绍(源码解析)和使用示例
概要 这一章,我们对HashSet进行学习.我们先对HashSet有个整体认识,然后再学习它的源码,最后再通过实例来学会使用HashSet.内容包括:第1部分 HashSet介绍第2部分 HashSe ...