软件包管理

1  RPM软件包管理

1.1  RPM软件包简介:

RPM(Red Hat Package Manager,Red Hat软件包管理器)是一种开放的软件包管理系统,按照GPL条款发行,可以运行于各种Linux系统上。RPM简化了Linux系统安装、卸装、更新和升级的过程,只需要使用简短的命令就可完成。RPM维护一个已经安装软件包和它们的文件的数据库,因此,可以在系统上使用查询和校验软件包功能。Linux系统上的所有软件都被分成可被安装、升级或卸载的RPM软件包。

1.2  管理RPM软件包

(1): RPM软件包管理主要有安装(添加)、删除(卸载)、刷新、升级、查询这五种基本操作模式, 使用rpm命令可以在Linux系统中安装、删除、刷新、升级、查询RPM软件包。

命令语法:rpm  [选项]  [RPM软件包文件名称]

(2)rpm命令选项含义

rpm命令选项含义

-i

安装软件包

-F

刷新软件包

-U

升级软件包

-e

删除软件包

-q

查询软件包

-v

输出详细信息

-h

安装软件包时打印哈希标志

--nodeps

不验证安装包的依赖关系

--oldpackage

升级旧版本的软件包

(3)rpm常用命令

用途

命令语法

安装RPM软件包

rpm  -ivh  [RPM软件包文件名称]

删除RPM软件包

rpm  -e   [RPM包名称]

升级RPM软件包

rpm  -Uvh  [RPM软件包文件名称]

刷新软件包

rpm  -Fvh  [RPM软件包文件名称]

查询指定RPM软件包是否已经安装

rpm  -q  [RPM包名称]

查询系统中所有已经安装的RPM软件包

rpm  -qa

查询已安装RPM软件包的描述信息

rpm  -qi  [RPM包名称]

查询指定已安装RPM软件包所包含的文件列表

rpm  -ql  [RPM包名称]

查询RPM软件包的依赖关系

rpm  -qR  [RPM包名称]

查询系统中指定文件属于哪个RPM软件包

rpm  -qf  [文件名]

2  使用yum管理RPM软件包

(1)yum简介:yum(Yellow dog Updater Modified)起初是由Terra Soft研发,其宗旨是自动化地升级、安装和删除RPM软件包,收集RPM软件包的相关信息,检查依赖性并且一次安装所有依赖的软件包,无须繁琐地一次次安装。yum的关键之处是要有可靠的软件仓库,软件仓库可以是HTTP站点、FTP站点或者是本地软件池。

(2)yum的特点:可以同时配置多个软件仓库;简洁的配置文件/etc/yum.conf;自动解决安装或者删除RPM软件包时遇到的依赖性问题;使用yum非常方便;保持与RPM数据库的一致性。

(3)yum软件仓库配置文件:repo文件是Linux系统中yum源(软件仓库)的配置文件,软件仓库配置文件默认存储在/etc/yum.repos.d目录中。

(4)创建本地软件仓库步骤:1.安装软件包2.复制软件包3.创建软件仓库配置文件4.创建软件仓库。

(5)yum命令使用:使用yum命令可以安装、更新、删除、显示软件包。yum可以自动进行系统更新,基于软件仓库的元数据分析,解决软件包依赖性关系。

命令语法:   yum  [选项]  [命令]   

2.1  yum命令选项含义

yum命令选项含义

选项

选项含义

-y

所有问题都回答yes

-q

安静模式操作

-v

显示纤细信息

-c <配置文件>

制定配置文件路径

-x <软件包>

排除指定软件包

--nogpgcheck

禁用GPG签名检查

--installroot=<路径>

设置安装根目录路径

2.2   yum命令的命令描述

yum命令的命令部分描述

命令

描述

install  <软件包名>

安装指定的软件包

reinstall <软件包名>

重新安装软件包

search <软件包名>

通过给定的字符串搜索软件包

list

列车目前yum所管理的所有的软件包名称与版本

list <软件包名>

列出指定软件包安装情况

list  installed

列出所有已安装的软件包

info

列出目前yum所管理的都有的软件包名称、版本和详细信息

info <软件包名>

列出指定的软件包安装情况和详细信息

info installed

列出所有以安装的软件包与详细信息

deplist  <软件包名>

查看指定软件包的依赖情况

remove <软件包名>

删除指定软件包

history

显示yum使用历史

clean

清除缓存数据

3  tar包管理

 

3.1  tar包简介

Linux系统中最常使用的归档程序是tar,使用tar程序归档的包称为tar包,tar包文件的名称通常都是以“.tar”结尾的。生成tar包以后,还可以使用其它程序来对tar包进行压缩。tar可以为文件和目录创建备份。利用tar命令,用户可以为某一特定文件创建备份,也可以在备份中改变文件,或者向备份中加入新的文件。

利用tar命令可以把一大堆的文件和目录打包成一个文件,这对于备份文件或是将几个文件组合成为一个文件进行网络传输是非常有用的。

3.2  tar包使用和管理

使用tar命令可以将许多文件一起保存到一个单独的磁带或磁盘归档,并能从归档中单独还原所需文件。

命令语法:  tar   [选项]  [文件|目录]

3.3  tar包的特殊使用

1.tar调用gzip

使用tar命令可以在归档或者是解包的同时调用gzip压缩程序。以“.gz”结尾的文件就是gzip压缩的结果。与gzip相对应的解压缩程序是gunzip,tar命令中使用-z选项来调用gzip。

2.tar调用bzip2

使用tar命令可以在归档或者是解包的同时调用bzip2压缩程序。以“.bz2”结尾的文件就是bzip2压缩的结果。与bzip2相对应的解压缩程序是bunzip2。tar命令中使用-j选项来调用bzip2。

3.tar调用xz

使用tar命令可以在归档或者是解包的同时调用xz压缩程序。以“.xz”结尾的文件就是xz压缩的结果。tar命令中使用-J选项来调用。

3.4  tar命令选项含义

tar命令选项含义

选项

选项含义

-c

创建新的归档文件

-A

追加tar文件至归档

-r

追加文件至归档结尾

-t

列出归档文件的内容,查看已经备份了那些软件

-u

仅追加此归档中副本更新的文件

-x

从归档文件中释放文件

-f

使用归档文件或设备

-v

详细报告tar处理的信息

-z

通过gzip过滤文档

-j

通过bzip2过滤文档

-J

通过xz过滤文档

-a

使用归档后缀名来决定压缩程序

linux系统软件安装及软件包管理的更多相关文章

  1. Linux 下安装python软件包(pip、nose、virtualenv、distribute )

    新手刚开始学习Python,目前学习<笨方法学python>ing- 在学习习题46时需要安装几个软件包:pip.nose.virtualenv.distribute !在此记录Linux ...

  2. LINUX系统软件安装和卸载的常见方法

    linux系统分很多种简单介绍几种常用的: 1.centos/redhat: 安装: rpm安装,如果有依赖,很闹心,如果使用--nodeps不检查依赖,会有问题. #rpm -ivh <XXX ...

  3. Mac Pro 安装 Homebrew 软件包管理工具

    Linux系统有个让人蛋疼的通病,软件包依赖,好在当前主流的两大发行版本都自带了解决方案,Red hat有 yum,Ubuntu有 apt-get. Mac os 中没有类似的东东,不过有第三方库支持 ...

  4. Linux系统软件安装的几种方式

    Linux系统,一个文件能不能执行看的是有没有可执行权限x,不过真正的可执行文件是二进制文件(binary file),举例来说Linux上的c语言源码编写完后,通过gcc程序编译后就可以创建一个可执 ...

  5. Linux基础四:软件包管理

    四.软件包管理器: 1.概念 红帽有两款软件包管理器,分别是rpm和yum. 1.rpm软件包管理器  ->  用来安装单个包  ->  .rpm文件 红帽的安装包文件,都放在Packag ...

  6. mac os x 10.9.1 安装 Homebrew软件包管理工具及brew安装maven3.1.1

    Mac OSX上的软件包管理工具,安装软件或者卸载软件. 打开终端输入(如不行,可参考homebrew官网): ruby -e "$(curl -fsSL https://raw.githu ...

  7. mac安装brew 软件包管理工具Homebrew

    brew 全称Homebrew  是Mac OSX上的软件包管理工具 Homebrew 安装和卸载工具 只用一行命令就能完成 官方地址:    http://brew.sh/index.html   ...

  8. linux程序安装及包管理

    程序包的封装类型: RPM软件包:扩展名为“.rpm”,使用rpm命令安装. DEB软件包:扩展名为“.deb”,使用DPKG包管理器. 源代码软件安装:程序员开发完成的原始代码,一般制作成“.tar ...

  9. mac pro下安装brew软件包管理工具

    Homebrew简称brew,OSX上的软件包管理工具,在Mac终端可以通过brew安装.更新.卸载软件. 1.打开终端直接输入下面指令回车: ruby -e "$(curl -fsSL h ...

随机推荐

  1. 使用implicitly demo

    泛型:  Context Bounds // //定义一个隐式值, 这个值不能少, 要不找不到比较的对象 implicit val personCompartor = new Ordering[Per ...

  2. netty第一讲 创建

    1.新建一个maven项目  https://blog.csdn.net/yanghaibobo110/article/details/73835469 2.netty是什么玩意 官方那个给出的介绍是 ...

  3. Python-列表推导式、生成器、字典推导式

    列表推导式 [] + for + if 算子.循环.条件, 对相同的数据进行处理, 算子也可以是函数 number = [i for i in range(1, 101) if i % 2 == 0] ...

  4. Python练习题 041:Project Euler 013:求和、取前10位数值

    本题来自 Project Euler 第13题:https://projecteuler.net/problem=13 # Project Euler: Problem 13: Large sum # ...

  5. NodeJS二进制合并

    Node.js 批量文件合并code cnblogs @ Orcim  本 文主要介绍使用 Node 进行 ACB 序列文件(Atom CueSheet Binary,编译 AtomCueSheet ...

  6. P2832 行路难

    题面 Link 题目背景 小X来到了山区,领略山林之乐.在他乐以忘忧之时,他突然发现,开学迫在眉睫 题目描述 山区有 \(n\) 座山.山之间有 \(m\) 条羊肠小道,每条连接两座山,只能单向通过, ...

  7. 【题解】[USACO13FEB]Tractor S

    题目戳我 \(\text{Solution:}\) 好久没写啥\(dfs\)了,借这个题整理下细节. 观察到答案具有二分性,所以先求出其差的最大最小值,\(\log val\)的复杂度不成问题. 考虑 ...

  8. Linux 下 svn 场景实例及常用命令详解

    一.SVN使用场景实例 问题: 在使用svn做为版本控制系统的软件开发中,经常会有这样的需求:在工作复本目录树的不同目录中增加了很多文件,但未纳入版本控制系统,这时如果使用svn add命令一个一个的 ...

  9. AMBuild

    什么是AMBuild? AMBuild是构建软件项目和创建发布包的工具.它是针对C++项目的,当然也可以用于其它任何语言的项目,它主要针对解决大多数构建工具所解决不了的三个大问题: 1.准确性:不需要 ...

  10. 超好用的UnixLinux 命令技巧 大神为你详细解读

    1.删除一个大文件 我在生产服务器上有一个很大的200GB的日志文件需要删除.我的rm和ls命令已经崩溃,我担心这是由于巨大的磁盘IO造成的,要删除这个大文件,输入: > /path/to/fi ...