linux安装包管理

来源:互联网 发布:淘宝推手 编辑:程序博客网 时间:2024/05/24 22:42

linux安装包管理

标签(空格分隔): linux


Linux 下的软件包管理工具

linux下的软件安装可以通过两种方式,一种是直接使用自带的软件包管理工具安装,另外一种通过编译源码安装。

1.软件包的种类

Red Hat和Fedora:redhat最早发行的个人版本的Linux,自从Red Hat 9.0版本发布后,RedHat 公司就不再开发桌面版的 Linux发行套件,Red Hat Linux停止了开发,而将全部力量集中在服务器版的开发上,也就是 Red Hat Enterprise Linux 版。2004年4月30日,Red Hat公司正式停止对Red Hat 9.0版本的支援,标志著Red Hat Linux的正式完结。原本的桌面版Red Hat Linux发行套件则与来自开源社区的 Fedora 计划合并,成为 Fedora Core 发行版本。

目前Red Hat分为两个系列:
由Red Hat公司提供收费技术支持和更新的Red Hat Enterprise Linux(RHEL),以及由社区开发的免费的Fedora Core。
特点:面向个人桌面应用系统,采用基于rpm/yum管理软件包。

RHEL(Red Hat Enterprise Linux)和CentOS:RHEL是Red Hat企业版,提供商业支持。CentOS是对RHEL重新编译而成,免费而稳定。
特点:面向企业服务器使用,安全稳定,采用基于rpm/yum管理软件包。

Debian和Ubuntu:Debian是社区类Linux的典范,是迄今为止最遵循GNU规范。Ubuntu基于Debian发行版和GNOME桌面环境.它使用Bash作为基础Shell,所以在很多基础命令上,ubuntu与CentOS的差别不是很明显,而ubuntu在桌面界面上要做的更为出色,还有类似的Kunbuntu/Xubuntu等。
特点:面向桌面应用,采用apt-get/dpkg包管理方式。

以上只需要了解一下就可以。


主要有两个:.deb和.rpm
“.deb”包是由Debian社区开发的一种包,”rpm”是来自于Redhat
包类型 使用这种包的linux发行版
Debian Style(.deb) Debian, Ubuntu, Xandros, Linspire等
Red Hat Style(.rpm) Fedora, CentOS, Red Hat Enterprise Linux等

而两种包的管理工具主要分为:

linux发行版 底层工具 上层工具 Debian.Ubuntu dpkg apt-get Fedora, Red Hat Enterprise Linux, CentOS rpm yum

从表中可以很容易看出,linux的软件包管理工具分为两个层次的,所以下面介绍下软件包管理工具的一些基本使用。各有好处,根据自己所在的平台来判断使用哪一个。

2.软件包管理工具的使用:安装、升级、查询、卸载

2.1 DEB包

2.1.1 DPKG

一个 DEB 包包含了已压缩的软件文件集以及该软件的内容信息(在头文件中保存),通常表现为以 .deb 扩展名结尾的文件,例如 package.deb 。对其操作,需要使用 dpkg 命令。

DPKG 命令常用参数

DPKG 的常规使用方法为 dpkg -? Package(.rpm), 其中 -? 为安装参数 ( 更多信息,请查阅帮助 $man rpm):

-l   在系统中查询软件内容信息--info  在系统中查询软件或查询指定 rpm 包的内容信息-i   在系统中安装 / 升级软件-r   在系统中卸载软件 , 不删除配置文件-P   在系统中卸载软件以及其配置文件DPKG 命令参数使用方法
  • 安装 DEB 包命令
    $ sudo dpkg -i package.deb

  • 升级 DEB 包命令
    $ sudo dpkg -i package.deb ( 和安装命令相同)

  • 卸载 DEB 包命令
    $ sudo dpkg -r package.deb #不卸载配置文件
    $ sudo dpkg -P package.deb # 卸载配置文件

  • 查询 DEB 包中包含的文件列表命令
    $ sudo dpkg-deb -c package.deb

  • 查询 DEB 包中包含的内容信息命令
    $ dpkg –info package.deb

  • 查询系统中所有已安装 DEB 包
    $ dpkg -l package

2.1.2 更友好的包管理软件 - APT

APT 的全称为 Advanced Packaging Tools 。与 YUM 对应,它最早被设计成 DPKG 的前端软件,现在通过 apt-rpm 也支持 rpm 管理。而本节本节将介绍 APT 作为 DPKG 前端的使用。 APT 的主要包管理工具为 APT-GET,通过此工具可满足和上述 YUM 相似的功能要求。

APT 的软件源定义来自 /etc/apt/sources.list 文件:

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.

deb http://cn.archive.ubuntu.com/ubuntu/ hardy main restricted
deb-src http://cn.archive.ubuntu.com/ubuntu/ hardy main restricted
注意每次手动修改上述文件后,需要使用 sudo apt-get update 来更新系统的源使新的源数据被当前系统识别。

UBUNTU 中 APT 的配置文件位于 /etc/apt/apt.conf.d,其中的多个配置文件依功能分类。

一般在刚装上ubuntu系统之后需要添加源,添加所在地区的源会比较快的,关于这个直接百度就可以了。

APT 常用命令

  • 更新源索引
    $ sudo apt-get update #一般在安装软件和更新源之后需要执行这条命令。

  • 安装指定软件
    $ sudo apt-get install package-name

  • 下载指定软件的源文件
    $ sudo apt-get source package-name

  • 将系统中所有软件升级到最新版本
    $ sudo apt-get upgrade

  • 将操作系统连同所有软件升级到最新版本
    $ sudo apt-get dist-upgrade

  • 卸载指定软件
    $ sudo apt-get remove package-name

更多有关 APT 的信息,请查阅 http://www.debian.org/doc/manuals/apt-howto/index.en.html 。

2.2 RPM包

RPM 包的安装 / 升级 / 查询 / 卸载

一个 RPM 包包含了已压缩的软件文件集以及该软件的内容信息(在头文件中保存),通常表现为以 .rpm 扩展名结尾的文件,例如 package.rpm 。对其操作,需要使用 rpm 命令。下面介绍 rpm 工具的参数和使用方法,并以 IBM Lotus Notes 在 RHEL 5.2 安装为例做具体说明。

2.2.1 RPM

RPM 命令常用参数

RPM 的常规使用方法为 rpm -? package.rpm,其中 -? 为操作参数 ( 更多信息,请查阅帮助 $man rpm):

-q 在系统中查询软件或查询指定 rpm 包的内容信息-i 在系统中安装软件-U 在系统中升级软件-e 在系统中卸载软件-h 用 #(hash) 符显示 rpm 安装过程-v 详述安装过程-p 表明对 RPM 包进行查询,通常和其它参数同时使用,如:-qlp 查询某个 RPM 包中的所有文件列表-qip 查询某个 RPM 包的内容信息RPM 命令参数使用方法

以上参数有些需要组合使用,比如说 rpm -h package.rpm 是没有意义的,但 rpm -ih package.rpm 即表示安装 package 并用 # 符显示安装进度。

  • 安装 RPM 包
    # rpm -ivh package.rpm

  • 升级 RPM 包命令
    # rpm -Uvh package.rpm

  • 卸载 RPM 包命令
    # rpm -ev package

  • 查询 RPM 包中包含的文件列表命令
    # rpm -qlp package

  • 查询 RPM 包中包含的文件列表命令
    # rpm -qlp package

  • 查询 RPM 包中包含的内容信息命令
    # rpm -qip package

  • 查询系统中所有已安装 RPM 包
    # rpm -qa

2.2.2 更友好的包管理软件 - YUM

YUM

YUM 基于 RPM 包管理工具,能够从指定的源空间(服务器,本地目录等)自动下载目标 RPM 包并且安装,可以自动处理依赖性关系并进行下载、安装,无须繁琐地手动下载、安装每一个需要的依赖包。此外,YUM 的另一个功能是进行系统中所有软件的升级。如上所述,YUM 的 RPM 包来源于源空间,在 RHEL 中由 /etc/yum.repos.d/ 目录中的 .repo 文件配置指定,如 rhel-debuginfo.repo 的内容:

rhel-debuginfo.repo

[rhel-debuginfo]
name=Red Hat Enterprise Linux 5Client - i386 - Debug
baseurl=ftp://ftp.redhat.com/pub/redhat/linux/enterprise/5Client/en/os/i386/Debuginfo/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
YUM 的系统配置文件位于 /etc/yum.conf,内容如:

[main]
cachedir=/var/cache/yum
keepcache=1
debuglevel=2
pkgpolicy=newest
logfile=/var/log/yum.log
distroverpkg=redhat-release
tolerant=1
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
exclude= firefox gftp

配置文件用来定义用户期望的 yum 行为,比如,gpgcheck 表明安装时不进行 gpg 验证,exclued=firefox gftp 表明进行系统全软件升级时不升级 firefox 和 gftp 。

YUM 常用命令

  • 安装指定软件 :
    # yum -y install package-name

-列出系统中已安装软件
# yum list

  • 列出系统中可升级的所有软件
    # yum check-update

  • 升级系统中可升级的所有软件
    # yum update

  • 升级指定软件
    # yum update package-name

  • 在升级过程中接受所有互动问答
    # yum -y update

  • 卸载指定软件
    # yum remove package-name

更多有关 YUM 的信息,请查阅 http://fedoraproject.org/wiki/Tools/yum 。

参考博客:
软件包管理
Linux 平台上的软件包管理

0 0
原创粉丝点击