一,软件包管理

# 使用rpm安装及移除软件RPM

1:rpm:Red-Hat Package Manager

2:rpm文件形式

yum-metadata-parser-1.1.2-16.el6.x86_64.rpm
第1部分是name,表示这个rpm软件包的名称;            # yum-metadata-parser
第2部分是version,表示这个rpm软件包的版本编号;        # 1.1.2
第3部分是release,表示这个rpm软件包的版本发布次数(修正号码);    # 16
第4部分是architectures,表示这个rpm软件包适用于哪些平台;        # el6
第5部分是CPU的位数                                    # x86_64
最后一部分是rpm,表示这个rpm软件包的文件扩展名。    # rpm# 注:如果软件包版本编号的最后一位为奇数,说明该软件包为测试版本 偶数为稳定版本

# 安装软件包

# 基本操作方法
rpm -ivh + 软件包名称
i:安装   v:安装详细信息    h:显示进度

# 例如安装软件包 zsh-4.3.11-4.el6.centos.2.x86_64.rpm 

[root@localhost Packages]# rpm -ivh zsh-4.3.11-4.el6.centos.2.x86_64.rpm
warning: zsh-4.3.11-4.el6.centos.2.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing...                ########################################### [100%]1:zsh                    ########################################### [100%]
[root@localhost Packages]# # 查看计算机中已安装的软件包
[root@localhost Packages]# rpm -qa        # 显示所有已安装的软件包# 对安装的软件包进行过滤
[root@localhost Packages]# rpm -qa | grep 'zsh'
zsh-4.3.11-4.el6.centos.2.x86_64
[root@localhost Packages]# # 只查询一个
[root@localhost Packages]# rpm -q zsh
zsh-4.3.11-4.el6.centos.2.x86_64
[root@localhost Packages]# # 删除软件包
[root@localhost Packages]# rpm -e zsh

# 覆盖安装

## 当安装两遍时
# 第一遍成功
[root@localhost Packages]# rpm -ivh zsh-4.3.11-4.el6.centos.2.x86_64.rpm
warning: zsh-4.3.11-4.el6.centos.2.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing...                ########################################### [100%]1:zsh                    ########################################### [100%]# 第二遍失败
[root@localhost Packages]# rpm -ivh zsh-4.3.11-4.el6.centos.2.x86_64.rpm
warning: zsh-4.3.11-4.el6.centos.2.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing...                ########################################### [100%]package zsh-4.3.11-4.el6.centos.2.x86_64 is already installed
[root@localhost Packages]# --force  覆盖安装
[root@localhost Packages]# rpm -ivh zsh-4.3.11-4.el6.centos.2.x86_64.rpm --force
warning: zsh-4.3.11-4.el6.centos.2.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing...                ########################################### [100%]1:zsh                    ########################################### [100%]

# --nodeps 忽略删除软件包时存在的依赖性

# 当删除一个文件时,该文件被另一个文件所使用,存在依赖性,不能进行删除
[root@localhost Packages]# rpm -e dhcp-common
error: Failed dependencies:dhcp-common = 12:4.1.1-51.P1.el6.centos is needed by (installed) dhclient-12:4.1.1-51.P1.el6.centos.x86_64# --nodeps 忽略依赖性
[root@localhost Packages]# rpm -e dhcp-common --nodeps

# 当安装软件包时存在依赖性

# 安装时存在依赖性(不能进行安装)
[root@localhost Packages]# rpm -ivh dhclient-4.1.1-51.P1.el6.centos.x86_64.rpm
warning: dhclient-4.1.1-51.P1.el6.centos.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
error: Failed dependencies:dhcp-common = 12:4.1.1-51.P1.el6.centos is needed by dhclient-12:4.1.1-51.P1.el6.centos.x86_64# 安装依赖性前的文件[root@localhost Packages]# rpm -ivh dhcp-common-4.1.1-51.P1.el6.centos.x86_64.rpm
warning: dhcp-common-4.1.1-51.P1.el6.centos.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing...                ########################################### [100%]1:dhcp-common            ########################################### [100%]# 再安装要安装的文件
[root@localhost Packages]# rpm -ivh dhclient-4.1.1-51.P1.el6.centos.x86_64.rpm warning: dhclient-4.1.1-51.P1.el6.centos.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing...                ########################################### [100%]package dhclient-12:4.1.1-51.P1.el6.centos.x86_64 is already installed

# 安装网络上的安装包(得联网)

# 从网络上直接安装
[root@localhost Packages]# rpm -ivh http://vault.centos.org/6.8/extras/x86_64/Packages/python-boto-2.32.1-1.el6.centos.noarch.rpm
Retrieving http://vault.centos.org/6.8/extras/x86_64/Packages/python-boto-2.32.1-1.el6.centos.noarch.rpm
warning: /var/tmp/rpm-tmp.fTZN9K: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing...                ########################################### [100%]1:python-boto            ########################################### [100%]# 将网路中的安装包下载下来 wget
[root@localhost ~]# wget http://vault.centos.org/6.8/extras/x86_64/Packages/python-boto-2.32.1-1.el6.centos.noarch.rpm# 查询安装信息
[root@localhost ~]# 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: 2019年01月23日 星期三 22时44分30秒      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.

# 查询软件安装包安装的位置

# 查询软件包安装的位置 rpm -ql +文件名
[root@localhost ~]# rpm -ql python-boto

二,yum安装

1:yum:Yello dog Updater

2:目的:解决RPM的依赖关系问题

rpm ---->安装源(本地,网路)
yum ---->安装源(本地源:使用固定格式 file://)

# 在配置文件中添加以下内容

[root@localhost ~]# vim /etc/yum.repos.d/local.repo
[root@localhost ~]# cat /etc/yum.repos.d/local.repo
[local]
name=local yum
baseurl=file:///media/CentOS_6.8_Final
enable=1
gpgcheck=0
[root@localhost ~]# # 内容
[local]
name=local yum
baseurl=file:///media/CentOS_6.8_Final
enable=1
gpgcheck=0

# yum解决依赖性的原理:在一个文件中存放各种依赖性关系

1)找到配置文件中的 baseurl=file:///media/CentOS_6.8_Final
2)在该目录下有个文件repodata(里面存放依赖性关系)
3)再到baseurl=file:///media/CentOS_6.8_Final中找到所有需要的软件包

# 安装一个具有依赖性的文件

# 不能用rpm直接安装
[root@localhost Packages]# rpm -ivh dhclient-4.1.1-51.P1.el6.centos.x86_64.rpm
warning: dhclient-4.1.1-51.P1.el6.centos.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
error: Failed dependencies:dhcp-common = 12:4.1.1-51.P1.el6.centos is needed by dhclient-12:4.1.1-51.P1.el6.centos.x86_64# 可以用yum安装
root@localhost ~]# yum install dhclient
已加载插件:fastestmirror, refresh-packagekit, security
设置安装进程
(下面省略)

## 自定义yum语言

# 1 安装createrepo(createrepo用来创建repodata文件)
[root@localhost Packages]# vim /etc/yum.repos.d/local.repo
[root@localhost Packages]# yum install createrepo-0.9.9-24.el6.noarch.rpm # 2 在/test目录下安装repodata
#未安装repodata的
[root@localhost Packages]# ls /test
dhcp-4.1.1-51.P1.el6.centos.x86_64.rpm
dhcp-common-4.1.1-51.P1.el6.centos.x86_64.rpm# 安装repodata的(依赖关系文件)
[root@localhost Packages]# createrepo /test
Spawning worker 0 with 2 pkgs
Workers Finished
Gathering worker resultsSaving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete# 浏览test目录,多了一个repodata依赖性文件
[root@localhost Packages]# ls /test
dhcp-4.1.1-51.P1.el6.centos.x86_64.rpm         repodata
dhcp-common-4.1.1-51.P1.el6.centos.x86_64.rpm
[root@localhost Packages]#
# 此时的test文档下有文件repodata,该文件具有依赖性关系的包,可以将yum的配置文件的baseurl指向/test,当安装软件包时,就会到该目录/test下找repodata文件

代码

# yum软件包的更多知识

yum -y install *http*    # 表示安装xxx + http + xxx# 删除某个软件包 erase
[root@localhost Packages]# yum erase dhcp-common# 加载依赖性关系(让安装软件包时减少时间)
[root@localhost Packages]# yum makecache

# 安装网络中的软件包

在baseurl中写到x86_64即可,因为该目录下有repodata(依赖性文件)# 具体方法
[root@localhost ~]# cd /etc/yum.repos.d
[root@localhost yum.repos.d]# touch centos.repo
[root@localhost yum.repos.d]# vim centos.repo
[root@localhost yum.repos.d]# cat centos.repo
[centos]
name=remote yum
baseurl=http://vault.centos.org/6.8/extras/x86_64/
enabled=1
gpgcheck=0
[root@localhost yum.repos.d]# yum install epel-release -y
已加载插件:fastestmirror, refresh-packagekit, security
设置安装进程(下方省略)

## 注:当从网络上直接安装的软件包,安装完成后yum会将软件包删除
# 若想安装后保存软件包,则得修改配置文件
[root@localhost yum.repos.d]# vim /etc/yum.conf
# 文件中的该行内容控制是否保存安装后的软件包
keepcache=0 # 不保存缓存
keepcache=1 # 保存缓存

 ## 源码安装

1)准备
yum install gcc-* glibc-* make -y
源码路径:https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tgz
# 将源码下载到本地
[root@localhost Python-3.7.2]# wget https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tgz2)解包
tar xvf Python-3.7.2.tgz3)执行脚本configure,添加编译参数,指定安装路劲
[root@localhost Python-3.7.2]# ./configure --prefix=/usr/local/python3.7

 ## grouplist

[root@localhost Python-3.7.2]# yum grouplist
已加载插件:fastestmirror, refresh-packagekit, security
设置组进程
Loading mirror speeds from cached hostfile* base: ftp.sjtu.edu.cn* epel: mirrors.aliyun.com* extras: mirrors.163.com* updates: mirror.jdcloud.com
epel/group_gz                                            |  71 kB     00:00
已安装的组:Java 平台MilkymistNFS 文件服务器Perl 支持X 窗口系统万维网服务器互联网应用程序互联网浏览器兼容程序库办公套件和生产率图形管理工具基本字体安全性工具性能工具打印客户端打印服务器拨号网络支持服务器平台桌面桌面平台桌面调试和运行工具电子实验室电子邮件服务器目录客户端硬件监控工具继承 UNIX 兼容性继承 X Windows 系统的兼容性网络基础设施服务器网络文件系统客户端联网工具调试工具输入法通用桌面附加开发
Installed Language Groups:不丹语支持 [dz]中文支持 [zh]乌尔都语支持 [ur]亚美尼亚语支持 [hy]伊努伊特语支持 [iu]印地语支持 [hi]叙利亚语支持 [or]古吉拉特语支持 [gu]古吉拉特语支持 [mr]坎纳达语支持 [kn]埃塞俄比亚语支持 [am]塔吉克语支持 [tg]孟加拉语支持 [bn]希伯来语支持 [he]库德语支持 [ku]康干语支持 [kok]文达语支持 [ve]新哈拉语支持 [si]旁遮普语支持 [pa]日语支持 [ja]格鲁吉亚语支持 [ka]比哈尔语支持 [mai]泰卢固语支持 [te]泰米尔语支持 [ta]泰语支持 [th]缅甸语支持 [my]老挝语支持 [lo]阿拉伯语支持 [ar]阿萨姆语支持 [as]韩文支持 [ko]马来语支持 [ml]高棉语支持 [km]
有效的组:CIFS 文件服务器EclipseEmacsFCoE 存储客户端FTP 服务器Fedora PackagerHaskellInfiniband 支持KDE 桌面MySQL 数据库客户端MySQL 数据库服务器PHP 支持PostgreSQL 数据库客户端PostgreSQL 数据库服务器Ruby 支持SNMP 支持TeX 支持TurboGear 应用程序框架Web 服务器程序引擎XfceiSCSI 存储客户端主框架访问可扩展文件系统图形生成工具基于网页的企业级管理备份客户端备份服务器大系统性能存储可用性工具客户端管理工具开发工具弹性存储控制台互联网工具教育软件智能卡支持服务器平台开发桌面平台开发目录服务器短信客户端支持科学记数法支持科技写作系统管理系统管理工具网络存储服务器虚拟化虚拟化客户端虚拟化工具虚拟化平台虚拟机代理负载平衡器身份管理服务器远程桌面客户端高可用性高可用性管理
Available Language Groups:上索布语支持 [hsb]世界语支持 [eo]丹麦语支持 [da]乌克兰语支持 [uk]乌兹别克语支持 [uz]低地撒克逊语支持 [nds]佛里乌里语支持 [fur]俄语支持 [ru]保加利亚语支持 [bg]信德语支持 [sd]克什米尔语支持 [ks]克罗地亚语支持 [hr]冰岛语支持 [is]加利西亚语支持 [gl]加泰隆语支持 [ca]匈牙利语支持 [hu]华隆语支持 [wa]南 Ndebele 语支持 [nr]南索托语支持 [st]南非荷兰语支持 [af]卡舒比语支持 [csb]卢旺达语支持 [rw]卢森堡语支持 [lb]印度尼西亚语支持 [id]史瓦希里语支持 [sw]哈萨克语支持 [kk]国际语支持 [ia]土库曼语支持 [tk]土耳其语支持 [tr]埃及古语支持 [cop]塔加洛语支持 [tl]塞尔维亚语支持 [sr]夫里斯兰语支持 [fy]奇卡瓦语支持 [ny]奥克西唐语支持 [oc]威尔士语支持 [cy]宗加语支持 [ts]尼泊尔语支持 [ne]巴斯克语支持 [eu]巴西葡萄牙语支持 [pt_BR]布尔吞语支持 [br]布尔吞语支持 [nso]希利盖农语支持 [hil]希腊语支持 [el]德语支持 [de]德顿语支持 [tet]恰蒂斯加尔语支持 [hne]意大利语支持 [it]拉丁语支持 [la]拉脱维亚语支持 [lv]挪威语支持 [nb]捷克语支持 [cs]斐济语支持 [fj]斯洛伐克语支持 [sk]斯洛文尼亚语支持 [sl]斯瓦蒂语支持 [ss]曼岛语支持 [gv]梵语支持 [sa]毛利语支持 [mi]法罗语支持 [fo]法语支持 [fr]波兰语支持 [pl]波斯语支持 [fa]泰斯文那语支持 [tn]爱尔兰语支持 [ga]爱沙尼亚语支持 [et]瑞典语支持 [sv]白俄罗斯语支持 [be]盖尔语支持 [gd]祖鲁语支持 [zu]科萨语支持 [xh]立陶宛语支持 [lt]索马里语支持 [so]罗马尼亚语支持 [ro]芬兰语支持 [fi]英国英语支持 [en_GB]荷兰语支持 [nl]菲律宾语支持 [fil]萨丁尼亚语支持 [sc]葡萄牙语支持 [pt]蒙古语支持 [mn]藏语支持 [bo]西班牙语支持 [es]越南语支持 [vi]阿塞拜疆语支持 [az]阿尔巴尼亚语支持 [sq]阿马兹格语支持 [ber]马其顿语支持 [mk]马尔他语支持 [mt]马来语支持 [ms]马达加斯加语支持 [mg]
完成

代码

 # grouplist用法

[root@localhost Python-3.7.2]# yum groupinstall '开发工具'

 ## 补充 环境变量问题

# 将python加入PATH环境变量
[root@localhost bin]# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/root/bin/usr/local/Python3.7.2/bin/
# 将Python路径加到环境变量中(临时修改)
[root@localhost ~]# PATH=/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/root/bin:/usr/local/Python3.7.2/bin/
[root@localhost ~]# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/root/bin:/usr/local/Python3.7.2/bin/
[root@localhost ~]# 

# 将Python路径加到环境变量中(永久修改)
root@localhost ~]# vim /etc/profile        # 打开配置文件
将
PATH=/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/root/bin:/usr/local/Python3.7.2/bin/
加到最后将一行并保存

转载于:https://www.cnblogs.com/Doaoao/p/10346298.html

Linux基础_软件包管理相关推荐

  1. Linux基础命令-软件包管理

    Linux基础命令-软件包管理 软件包管理 一.软件包基础 1. 软件运行与编译 2. 静态链接和动态链接 3. 包和包管理器 4. 包命名和工具 5. 程序包的来源 二.rpm安装 1.rpm包管理 ...

  2. Linux_基础_软件包管理

    rpm包管理 语法:rpm <选项> <参数>选项:-a # 查询所有套件-b<完成阶段><套件档>+或-t <完成阶段><套件档&g ...

  3. Linux基础-yum软件包管理

    任务目标:自定义yum仓库:createrepo,自定义repo文件,使用yum命令安装httpd软件包,卸载httpd软件包:yum –y remove 软件名 ,使用yum安装组件'KDE 桌面' ...

  4. Linux基础:软件包管理

  5. Alpine Linux的apk软件包管理器

    Alpine Linux的apk软件包管理器 Alpine Linux简介 apk包管理器常用 刷新源apk update 搜索包apk search 安装软件包apk add 安装指定版本软件包 查 ...

  6. 大数据与云计算学习计划 (一) 云计算系统管理 6 Linux中RPM软件包管理操作 、 Yum软件包仓库操作(概念与实操)

    大数据与云计算学习计划 (一) 云计算系统管理 6 Linux中RPM软件包管理操作 . Yum软件包仓库操作(概念与实操) 一.RPM软件包管理 1.常见软件包类型 2.RPM包文件名特征 3.RP ...

  7. Linux Command dnf 软件包管理

    Linux Command dnf 软件包管理 tags: 软件包管理 文章目录 Linux Command dnf 软件包管理 1. 简介 2. 语法 3. 安装 4. 示例 4.1 查看DNF版本 ...

  8. 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 ...

  9. linux常用指令介绍_软件包管理_VIM编辑器的使用_用户和组账户管理_文件权限管理

    1.1. 文件目录操作命令 ls 显示文件和目录列表 -l 列出文件的详细信息 -a 列出当前目录所有文件,包含隐藏文件 mkdir 创建目录 删除?rmdir  非空 -p 父目录不存在情况下先生成 ...

最新文章

  1. vc项目中加载多个lib遇到的问题
  2. 超图数据集管理基本操作 - 隐藏系统字段和添加字段索引
  3. 哈佛大学教授:排名前5%学生的秘诀就3个字,这比勤奋更重要!
  4. How Many Pieces of Land ? (UVA-10213)
  5. [Groovy] How to check if element in groovy array/hash/collection/list?
  6. 无限极业绩_2019中国保健品行业典型企业分析——无限极、康宝莱、汤臣倍健...
  7. TP5开源微信小程序商城源码+附安装文档
  8. Verilog4选1数据选择器与2选1数据选择器仿真波形对比
  9. FileZilla Server与FileZilla Client
  10. 分析-MQ消息队列中间件-在IM即时通讯系统的用途
  11. 你眼中的程序员是什么样子的?
  12. 赫耳墨斯与忒瑞西阿斯
  13. 8种减肥法,让你的APP瘦身30%
  14. 想要学习Java,没有英语基础可以学吗?
  15. android UiAutomator在清除文本时遇到中文的解决办法
  16. 无线通信原理学习博客
  17. 十年生死两茫茫,写程序,到天亮
  18. SAP ABAP 根据采购订单(PO)创建交货单(DN) BAPI_DELIVERYPROCESSING_EXEC - 创建内向交货单
  19. 利用地址转经纬度获取坐标
  20. 捐赠10亿美元后,前首富陈天桥的人脑研究出成果了!这一技术成未来AI最大风口…

热门文章

  1. 电脑的开机密码忘记了怎么打开
  2. 图文详解如何将书签bookmarks导回到chrome?
  3. 【ubuntu20.04上openvino安装及环境配置】
  4. 现在小屁孩黑客太牛B了
  5. QNX Neutrino IPL
  6. 我讽刺中医把每个养生的都化成了神仙
  7. python 广告联盟_聚力商城的Python编程书怎么样?
  8. 【集训日志】 金华集训
  9. 嵌入式系统设计与应用
  10. 求最长公共子序列长度