Rpm Introduction

75 %
25 %
Information about Rpm Introduction
Technology

Published on October 9, 2009

Author: tshrinivasan

Source: slideshare.net

Description

A slide to introduce RPM

RPM Redhat Package Manager T Shrinivasan [email_address]

Install Packages Source Compilation Installpkg Rpm dpkg

Source Compilation

Installpkg

Rpm

dpkg

What RPM can do? Install Remove Query Verify Upgrade

Install

Remove

Query

Verify

Upgrade

Who use it? Redhat Fedora CentOS Mandriva SuSE ...

Redhat

Fedora

CentOS

Mandriva

SuSE

...

RPM Terminology kernel-smp-2.4.18-3.athlon.rpm kernel-smp-2.4.18-3.i586.rpm kernel-smp-2.4.18-3.i686.rpm kernel-source-2.4.18-3.i386.rpm rootfiles-7.2-1.noarch.rpm name-version-release.architecture.rpm

RPM Database Dir : /var/lib/rpm # cd /var/lib/rpm # ls total 3534 -rw-r--r-- 1 root root 1351680 Oct 17 10:35 fileindex.rpm -rw-r--r-- 1 root root 16384 Oct 17 10:35 groupindex.rpm -rw-r--r-- 1 root root 16384 Oct 17 10:35 nameindex.rpm -rw-r--r-- 1 root root 2342536 Oct 17 10:35 packages.rpm -rw-r--r-- 1 root root 16384 Oct 17 10:35 providesindex.rpm -rw-r--r-- 1 root root 16384 Oct 17 10:35 requiredby.rpm #

Operations

Some Commands rpm -U filename.rpm rpm -i xcopilot-0.6.6-3.i386.rpm rpm -U xcopilot-0.6.6-3.i386.rpm rpm -Uhv xcopilot-0.6.6-3.i386.rpm rpm –e package_name rpm –qa | more

rpm -U filename.rpm

rpm -i xcopilot-0.6.6-3.i386.rpm

rpm -U xcopilot-0.6.6-3.i386.rpm

rpm -Uhv xcopilot-0.6.6-3.i386.rpm

rpm –e package_name

rpm –qa | more

Install Performing dependency checks. Checking for conflicts. Performing any tasks required before the install. Deciding what to do with config files. Unpacking files from the package and putting them in the proper place. Performing any tasks required after the install. Keeping track of what it did.

Performing dependency checks.

Checking for conflicts.

Performing any tasks required before the install.

Deciding what to do with config files.

Unpacking files from the package and putting them in the proper place.

Performing any tasks required after the install.

Keeping track of what it did.

Install Options

Examples # rpm -ivv eject-1.2-2.i386.rpm D: installing eject-1.2-2.i386.rpm Installing eject-1.2-2.i386.rpm D: package: eject-1.2-2 files test = 0 D: running preinstall script (if any) D: setting file owners and groups by name (not id) D: ///usr/bin/eject owned by root (0), group root (0) mode 755 D: ///usr/man/man1/eject.1 owned by root (0), group root (0) mode 644 D: running postinstall script (if any) #

Examples # rpm -i --test rpm-2.0.11-1.i386.rpm /bin/rpm conflicts with file from rpm-2.3-1 /usr/bin/gendiff conflicts with file from rpm-2.3-1 /usr/bin/rpm2cpio conflicts with file from rpm-2.3-1 /usr/bin/rpmconvert conflicts with file from rpm-2.3-1 /usr/man/man8/rpm.8 conflicts with file from rpm-2.3-1 error: rpm-2.0.11-1.i386.rpm cannot be installed #

UnInstall rpm -e It checks the RPM database to make sure that no other packages depend on the package being erased. It executes a pre-uninstall script (if one exists). It checks to see if any of the package's config files have been modified. If so, it saves copies of them. It reviews the RPM database to find every file listed as being part of the package, and if they do not belong to another package, deletes them. It executes a post-uninstall script (if one exists). It removes all traces of the package (and the files belonging to it) from the RPM database.

It checks the RPM database to make sure that no other packages depend on the package being erased.

It executes a pre-uninstall script (if one exists).

It checks to see if any of the package's config files have been modified. If so, it saves copies of them.

It reviews the RPM database to find every file listed as being part of the package, and if they do not belong to another package, deletes them.

It executes a post-uninstall script (if one exists).

It removes all traces of the package (and the files belonging to it) from the RPM database.

Erase Example # rpm -evv eject D: uninstalling record number 286040 D: running preuninstall script (if any) D: removing files test = 0 D: /usr/man/man1/eject.1 - removing D: /usr/bin/eject - removing D: running postuninstall script (if any) D: removing database entry D: removing name index D: removing group index D: removing file index for /usr/bin/eject D: removing file index for /usr/man/man1/eject.1 #

Upgrade

rpm -U Installs the desired package. Erases all older versions of the package, if any exist. # rpm -U eject-1.2-2.i386.rpm

Query

Query Examples # rpm -q libc libc-5.2.18-1 # rpm -qa | grep -i sysv SysVinit-2.64-2 # rpm -qf /bin/ls Fileutils-3.12-3 # rpm -qp foo.bar rpm-2.3-1

Query Examples # rpm -qi rpm Name : rpm Distribution: Red Hat Linux Vanderbilt Version : 2.3 Vendor: Red Hat Software Release : 1 Build Date: Tue Dec 24 09:07:59 1996 Install date: Thu Dec 26 23:01:51 1996 Build Host: porky.redhat.com Group : Utilities/System Source RPM: rpm-2.3-1.src.rpm Size : 631157 Summary : Red Hat Package Manager Description : RPM is a powerful package manager, which can be used to build, install, query, verify, update, and uninstall individual software packages. A package consists of an archive of files, and package information, including name, version, and description.

-c — Display the Package's List of Configuration Files # rpm -qc XFree86 /etc/X11/fs/config /etc/X11/twm/system.twmrc /etc/X11/xdm/GiveConsole /etc/X11/xdm/TakeConsole /etc/X11/xdm/Xaccess /etc/X11/xdm/Xresources /etc/X11/xdm/Xservers /etc/X11/xdm/Xsession /etc/X11/xdm/Xsetup_0 /etc/X11/xdm/chooser Query

-d — Display a List of the Package's Documentation # rpm -qdcf /sbin/dump /etc/dumpdates /usr/doc/dump-0.3-5 /usr/doc/dump-0.3-5/CHANGES /usr/doc/dump-0.3-5/COPYRIGHT /usr/doc/dump-0.3-5/INSTALL /usr/doc/dump-0.3-5/KNOWNBUGS /usr/doc/dump-0.3-5/THANKS /usr/doc/dump-0.3-5/dump-0.3.announce /usr/doc/dump-0.3-5/dump.lsm /usr/doc/dump-0.3-5/linux-1.2.x.patch Query

--scripts — Show Scripts Associated With a Package # rpm -q --scripts XFree86 preinstall script:(none) postinstall script: /sbin/ldconfig /sbin/pamconfig --add --service=xdm --password=none --sesslist=none preuninstall script: (none) postuninstall script: /sbin/ldconfig if [ "$1" = 0 ] ; then /sbin/pamconfig --remove --service=xdm --password=none --sesslist=none fi verify script: (none) Query

# rpm -qid bash Name :bash Distribution: Red Hat Linux (Picasso) Version :1.14.6 Vendor: Red Hat Software Release :2 Build Date: Sun Feb 25 13:59:26 1996 Install date:Mon May 13 12:47:22 1996 Build Host: porky.redhat.com Group :Shells Source RPM: bash-1.14.6-2.src.rpm Size :486557 Description :GNU Bourne Again Shell (bash) /usr/doc/bash-1.14.6-2 /usr/doc/bash-1.14.6-2/NEWS /usr/doc/bash-1.14.6-2/README /usr/doc/bash-1.14.6-2/RELEASE /usr/info/bash.info.gz /usr/man/man1/bash.1 # Finding Documentation for a Specific Package

# rpm -qa --queryformat '%10{NAME} %20{GROUP} ' | grep -i shells ash Shells bash Shells csh Shells mc Shells tcsh Shells # Finding Similar Packages

# rpm -qa --queryformat '%{installtime} %{name}-%{version}-%{release} %{installtime:date} ' | sort -nr | sed -e 's/^[^ ]* //' rpm-devel-2.3-1 Thu Dec 26 23:02:05 1996 rpm-2.3-1 Thu Dec 26 23:01:51 1996 pgp-2.6.3usa-2 Tue Oct 22 19:39:09 1996 … pamconfig-0.50-5 Tue Oct 15 17:23:22 1996 setup-1.5-1 Tue Oct 15 17:23:21 1996 # Finding Recently Installed Packages

# rpm -qa --queryformat '%{installtime} %{name}-%{version}-%{release} %{installtime:date} ' | sort -nr| less kernel-source-2.0.18-5 20608472 tetex-0.3.4-3 19757371 emacs-el-19.34-1 12259914 … rootfiles-1.3-1 3494 mkinitrd-1.0-1 1898 redhat-release-4.0-1 22 # Finding the Largest Installed Packages

Making Free space Find the documentation files rpm -qda|wc -l for i in `rpm -qda`; do if [ -f $i ]; then echo `ls -l $i|awk -F ' ' '{print $5}'`; fi; done >size

Verify Owner Group Mode MD5 Checksum Size Major Number Minor Number Symbolic Link String Modification Time

Owner

Group

Mode

MD5 Checksum

Size

Major Number

Minor Number

Symbolic Link String

Modification Time

Misc Options # rpm –rebuilddb # rpm –initdb # rpm –help|less # rpm --version

# rpm –rebuilddb

# rpm –initdb

# rpm –help|less

# rpm --version

SRPM – RPM with Source For automatic compilation and Installation spec file

For automatic compilation and Installation

spec file

Where to get? rpm.pbone.net rpmfind.net dag.wieers.com/rpm/packages freshrpms.net

rpm.pbone.net

rpmfind.net

dag.wieers.com/rpm/packages

freshrpms.net

Thanks http://www.rpm.org/max-rpm/ http://docs.fedoraproject.org/drafts/rpm-guide-en/index.html

http://www.rpm.org/max-rpm/

http://docs.fedoraproject.org/drafts/rpm-guide-en/index.html

Questions ?

Add a comment

Related presentations

Presentación que realice en el Evento Nacional de Gobierno Abierto, realizado los ...

In this presentation we will describe our experience developing with a highly dyna...

Presentation to the LITA Forum 7th November 2014 Albuquerque, NM

Un recorrido por los cambios que nos generará el wearabletech en el futuro

Um paralelo entre as novidades & mercado em Wearable Computing e Tecnologias Assis...

Microsoft finally joins the smartwatch and fitness tracker game by introducing the...

Related pages

Chapter 1. Introduction to RPM - Fedora Documentation

Although RPM was initially developed for Red Hat Linux, a combination of technical features and good timing has resulted in RPM’s becoming the de facto ...
Read more

RPM Introduction - U S Food and Drug Administration Home Page

The Regulatory Procedures Manual is a reference manual for FDA personnel. It provides FDA personnel with information on internal procedures to ...
Read more

RPM - Introduction - ADempiere ERP Wiki

The rational for having all host-specific configuration files under a single directory is that users can easily predict their location. Hardcore Linux ...
Read more

RPM Introduction - YouTube

RPM Freight Management in Royal Oak Michigan ... This feature is not available right now. Please try again later.
Read more

An Introduction to Package Management - rpm - Trac

Enter the Package. When you consider that computers are very good at keeping track of large amounts of data, the idea of giving your computer the job ...
Read more

Yum (Yellowdog Updater, Modified) HOWTO: Introduction

Introduction. Yum is a tool for automating package maintenance for a network of workstations running any operating system that use the ... 1.3 Yum, RPM ...
Read more

Introduction to RedHat Package Manager (RPM)

This lesson gives an introduction to RedHat Package Manager (RPM)
Read more

RPM letter of introduction - Revised - 110606

RPM letter of introduction - Revised - 110606 Author: Sandra Collin-Maynard Created Date: 6/7/2011 2:48:53 PM ...
Read more

PHP: Introduction - Manual - PHP: Hypertext Preprocessor

There are no user contributed notes for this page. RPM Reader. Introduction; Installing/Configuring; Predefined Constants; Examples
Read more

Introduction - The Linux Documentation Project

1. Introduction. RPM is the RPM Package Manager. It is an open packaging system available for anyone to use. It allows users to take source code ...
Read more