`
lection.yu
  • 浏览: 77567 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

【转】RPM基础使用

 
阅读更多
在RedHat Linux和Mandrake等兼容RedHat的发行版中,整个发行版都是利用RPM安装的。所以安装新软件的最好方

法是从网络上下载rpm包。
1)用RPM安装软件包,最简单的命令如下:

# rpm -ivh foo-1.0-l.i386.rpm (这里讲的软件包是foo-1.0-l.i386.rpm,以下都是)

foo####################

下面rpm就会输出该软件包的名称,并显示一个状态条。安装很简单。

2)拆除已安装的软件包
要反安装软件包foo,只需输入以下这行命令:

# rpm -e foo

注意:软件包名是foo,而不是rpm文件名"foo-1.0-l.i386.rpm"。

3)升级软件包
升级软件类似于安装软件:

# rpm -Uvh foo-2.0-l.i386.rpm

foo####################

用户要注意的是:rpm会自动反安装相应软件包的老版本。如果老版本软件的配置文件通新版本的不兼容,rpm会自动将其保存为另外一个文件,用户会看到下面的信息:

saving /etc/foo.conf as /etc/foo.conf.rpmsave

这样用户就可以自己手工去更改相应的配置文件。
另外如果用户要安装老版本的软件,用户就会看到下面的出错信息:

# rpm -Uvh foo-1.0-l.i386.rpm

foo packag foo-2.0-l(which is newer) is already installed

error:foo-1.0-l.i386.rpm cannot be installed

如果用户要抢行安装就使用-oldpackage参数。

4)查询软件包
用户可以用rpm -q在rpm的数据库中查询相应的软件,rpm会给出软件包的名称,版本,发布版本号,例如:

# rpm -q foo

foo-2.0-l

下面是查询时可以使用的特定参数:
-a 查询目前系统安装的所有软件包。
-f 文件名查询包括嘎文件的软件包。
-F 同-f参数,只是输入是标准输入(例如 find /usr/bin | rpm -qF)
-q 软件包名 : 查询该软件包
-Q 同-p参数,只是输入是标准输入(例如 find /mnt/cdrom/RedHat/RPMS | rpm -qQ)
下面是输出时的格式选择:
-i 显示软件包的名称,描述,发行,大小,编译日期,安装日期,开发人员等信息。
-l 显示软件包包含的文件
-s 显示软件包包含的文件目前的状态,只有两种状态:normal和missing
-d 显示软件包中的文档(如man,info,README等)
-c 显示软件包中的配置文件,这些文件一般是安装后需要用户手工修改的,例如:sendmail.cf,passwd,inittab等
如果用-v参数就可以得到类似于ls -l的输出

5)用rpm校验软件包
用户可以用rpm来校验已经安装的软件包,rpm可以校验文件大小、MD5校验码、文件权限、类型和属主等信息。
下面是校验时的参数说明:
-a 简单校验软件包中的文件是否存在
-b 校验软件包中的单个文件
-c 校验安装的所有软件包
-d 比较一个源软件包和已经安装的软件包

如果检验通过就没有任何出错信息,如果有出错信息,它的格式如下:出错信息是一个8位的字符串,如果是一个".",就代表没有问题,下面是相应的字符的意义:
5 MD5校验错
S 文件大小错
L 符号连接
T 文件修改时间错
D 设备文件错
U 用户名错
G 组名错
M 属性(包括改写权和文件类型)错
如果用户看到这些信息,最好重新安装或者手工修复。

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

rpm 实用技巧!
1)用户可以通过FTP来安装软件包。如果用户能够连上网络,想安装某个新的软件包时,可以直接用它的URL地址来安装:
比如:现在在ftp.linuxsir.com/pub/linux/redhat/RPMS/下有这个文件包:foo-1.0-1.i386.rpm,那就可以用这样的命令:

# rpm -i ftp.linuxsir.com/pub/linux/redhat/RPMS/foo-1.0-1.i386.rpm

来安装,也可以查询!

2)如果用户不小心巫山了几个文件,但不确定到底是那些文件,想对整个系统进行校验,以了解哪些部分可能已经损坏,可以用:

# rpm -Va

3)如果用户碰到一个人不出来的文件,想要知道它是属于那一个软件包的话,可以这样做:

# rpm -qf /usr/X11R6/bin/xjewel

结果会得到以下信息:
xjewel-1.6-1

4)如果用户得到一个新的RPM文件,却不清楚它的内容;或想了解某个文件包将会在系统里安装那些文件,可以这样做:

# rpm -qpi koules-1.2-2.i386.rpm
分享到:
评论

相关推荐

    zlib1.2.11RPM包,基于CentOS7制作

    RPM是一种在Linux系统中广泛使用的软件包管理器,可以方便地进行软件的安装、查询、升级和卸载。 【描述】中提到的“zlib1.2.11RPM升级包,基于ConetOS7.5制作的zlib安装包。”进一步解释了这是一个用于升级zlib的...

    jdk-8.rpm安装包

    Java Development Kit(JDK)是Java编程语言的软件开发工具包,它包含了编译、调试、性能优化等必备工具,是开发和运行Java应用程序的基础。RPM(Red Hat Package Manager)是Linux系统中的一种包管理格式,常用于...

    glibc-2.3.4的系列rpm

    glibc是Linux操作系统中最基础且最重要的库之一,它提供了C编程语言所需的接口,支持各种系统调用、标准C库函数以及国际化和本地化功能。RPM(Red Hat Package Manager)则是Linux下的软件包管理器,用于安装、升级...

    gcc g++完整依赖rpm包

    这个压缩包就是为了解决这个问题,确保用户能够在RPM系统上顺利安装和使用这两个编译器。 首先,GCC和G++的构建过程需要许多底层工具和库,例如: 1. Binutils:包含汇编器(as)、链接器(ld)和其他二进制工具,...

    7941943TPS-RPM.zip_TPS matlab_TPS RPM_plate_rpm_tps

    “tps_rpm”可能是指结合了TPS和RPM两种方法,即在RPM的基础上利用TPS进行更精细的形状匹配。“plate”可能是指薄板,这是TPS方法中的关键概念,而“rpm”和“tps”则是关键词,强调了这两种技术的应用。 至于...

    jdk8的rpm包与FastDFS.zip

    现在,你已经具备了使用JDK 8运行Java应用和利用FastDFS存储图片的基础。你可以开发一个简单的Java程序,利用FastDFS的Java客户端连接到FastDFS服务器,上传图片并获取URL。这将允许用户通过Web浏览器访问存储在...

    Linux google chrome rpm.zip文件

    然而,需要注意的是,由于RPM包是针对特定Linux发行版的,所以在某些非RPM为基础的系统(如Ubuntu、Debian)上可能需要转换包格式或使用其他包管理工具。同时,保持浏览器的更新以获取最新的安全修复和功能改进也是...

    gcc_rpm_4.8.5.rar

    3. **安装RPM包**:使用`rpm`命令安装GCC RPM包,例如`sudo rpm -ivh gcc-4.8.5.rpm`。这将会处理依赖关系并安装GCC。 4. **验证安装**:安装完成后,你可以通过运行`gcc --version`来确认GCC 4.8.5是否已经成功...

    openssh9.6 rpm包直接安装包含一键安装脚本,kylin V10

    在Kylin V10这样的Ubuntu基础上的系统,通常使用的是DEB包,但可以通过RPM2DEB工具将RPM包转换为DEB格式进行安装,或者使用 alien 命令直接进行安装。 4. **一键安装脚本**: 一键安装脚本简化了OpenSSH的安装流程...

    rpm打包手册(RPM Packaging Guide)

    虽然RPM是基础,但许多Linux发行版,如Fedora和openSUSE,使用Yum(Yellowdog Updater, Modified)或Dnf(Dandified Yum)作为前端工具,它们提供了更高级的依赖解析和更新功能。此外,基于RPM的系统也有像`mock`...

    nginx_rpm.zip

    - **安装Nginx**:使用RPM命令安装Nginx包,例如`sudo rpm -ivh nginx.rpm`。 - **配置与启动**:编辑Nginx配置文件,根据需求定制服务器设置,然后启动Nginx服务,如`sudo systemctl start nginx`。 6. **安全与...

    Centos7 gcc相关的rpm软件包

    在安装这些RPM软件包后,开发者能够在CentOS 7环境中使用最新的GCC工具集,同时还能享受到SELinux带来的安全增强。这使得开发者可以在不牺牲安全性的情况下,充分利用最新编译器的优势,提高代码质量和运行效率。在...

    linu系统c++编译器,此文件是安装gcc所需的rpm依赖包

    通常,应该确保所有依赖项都已解决,或者使用`yum`或`dnf`(在较新的RPM系统中)来自动处理依赖关系。 在安装GCC的过程中,会涉及许多基础库和工具,例如Glibc(GNU C库)、binutils(二进制工具集合,包括as、ld等...

    GCC编译环境+RPM离线包+CentOS7.9最小化环境安装

    总结,通过上述步骤,我们可以构建起一个完整的GCC编译环境,并在CentOS 7.9最小化环境中安装和使用RPM离线包。这个过程不仅有助于开发者在没有网络连接的环境下工作,还能更好地理解Linux系统的软件管理和构建流程...

    gcc-4.8.5-36.el7.x86_64_rpm.zip

    - `rpm -ivh gcc-4.8.5-36.el7.x86_64.rpm`:使用此命令可以在线安装GCC,但根据标签中的“离线”,这里可能是离线环境下进行安装,需要先将RPM包下载到本地。 - `rpm -Uvh gcc-4.8.5-36.el7.x86_64.rpm`:如果系统...

    TPS-RPM(副本).zip

    然而,RPM无法处理非刚体变形,因此通常与TPS结合使用,以实现更复杂的非刚体配准。 在实际应用中,如压缩包中的`rpm_demo.m`示例代码所示,TPS-RPM算法一般包含以下步骤: 1. **点对匹配**:根据一定的匹配策略,...

    gcc-4.1.2-48.e15.i386.rpm

    对于开发者而言,理解GCC的工作原理和使用方法至关重要,因为它是开发和调试Linux应用程序的基础工具。同时,了解如何管理RPM包,包括安装、升级和删除,也是Linux系统管理的重要技能。在某些情况下,手动安装特定...

    libstdc++-devel-4.4.7-3.el6.i686.rpm &&gcc-c++-4.4.7-3.el6.i686.rpm

    在本案例中,由于无法通过`yum install`命令成功安装`g++`,我们选择直接使用提供的`.rpm`包进行安装。`.rpm`是Red Hat Package Manager的文件格式,用于在Linux系统中分发软件。下面将详细介绍如何手动安装这两个`....

    mysql5.6.25,rpm包

    RPM(Red Hat Package Manager)包是Linux发行版中广泛使用的软件包管理器,它使得在Linux系统上安装和管理软件变得简单。 首先,让我们深入了解一下MySQL 5.6系列的主要特性: 1. **性能提升**:MySQL 5.6引入了...

    gcc 的三个rpm依赖包

    在Linux环境中,通常使用RPM (Red Hat Package Manager) 包管理器来安装这些依赖。`mpc0.9`, `mpfr3.0.0`, 和 `gmp4.3.2` 这些RPM包可以通过命令行工具如`yum`或`dnf`来获取并安装,确保GCC的完整功能。`depend ...

Global site tag (gtag.js) - Google Analytics