APT for RPM Simplified package management for rpm based distributions PowerPoint PPT Presentation

presentation player overlay
1 / 27
About This Presentation
Transcript and Presenter's Notes

Title: APT for RPM Simplified package management for rpm based distributions


1
APT for RPMSimplified package management for rpm
based distributions
  • INFN - Napoli 1INFM - UDR Napoli 2
  • HEPiX/HEPNT 2003 Vancouver

2
Linux
  • Linux strengths allowed this operating system to
    gain a central place in the IT market
  • Package management played an important role in
    this process
  • The Linux systems coherency is assured
    maintaining databases of installed files. In this
    way installing or removing programs gets an easy
    task
  • Nowadays only few programs are installed using
    source files

3
Packages
  • In more widespread linux distributions, programs
    are distributed in binary RPM, DEB or modified
    TGZ formats
  • RPM (RedHat Package Management) packages are used
    on RedHat, Mandrake, Suse, Conectiva
  • DEB are used on the open source distribution
    Debian and its forks
  • Modified TGZ are used on SlackWare

4
Dependencies
  • Dependencies management is a very useful feature
    of package management software
  • They keep systems in a consistent state and
    guarantee the applications to run in the expected
    way
  • rpm or dpkg commands have limited dependencies
    management features
  • They can report which library a package relies
    on, but the library can itself relies on other
    packages

5
Scenarios
  • System Administrator
  • After installation, usually an os needs some
    updated packages
  • Experiment
  • Experiment software has to be installed on
    machines
  • Grid
  • Add grid programs to installed machines

6
Dependencies - Example
  • Installing a package mod_test1
  • rpm -Uvh mod_test1-xxx.rpmerror failed
    dependencies package-a1 is needed by mod_test1
  • rpm -Uvh package-a1-xxxx.rpmerror failed
    dependencies package-b2 is needed by
    package-a1
  • rpm -Uvh package-b2-xxxx.rpm
  • And so on

7
Some solutions
  • Up2date RedHat
  • RedCarpet Ximian
  • YOU (YaST Online Update) Suse
  • YUP (YellowDog Updater) YellowDog PPC
  • Urpmi Mandrake
  • YUM (YellowDog Updater Modified)
  • APT (Advanced Packaging Tool) Debian (and
    rpm...)

8
Up2date et al...
  • Up2date, RedCarpet, YOU and YUP solve the
    dependencies and upgrade problems for rpm.
    RedCarpet is also available for Debian
  • They are bounded to RedHat, Ximian, Suse and
    YellowDog distribution servers, or their mirrors
  • They require expensive software in order to
    create ad-hoc software repository, so if a
    package is not available on their repositories
    its not installable with these tools
  • Typically they have an X or ncurses interface
  • Usually they cannot be used in non-interactive
    way

9
(No Transcript)
10
Urpmi (1/2)
  • Urpmi is a wrapper for the rpm commands
  • Available only for Mandrake distributions
  • Its possible to use package repositories
    different from the Mandrake official ones
  • It has a good graphical front-end, but all
    functions are also available in command line and
    in non-interactive mode
  • There are several commands for various functions

11
Urpmi (2/2)
  • urpmi.addmedia, urpmi.removemedia add and remove
    a media used by urpmi
  • urpmq query the package database
  • urpmf search the packages which contain the
    given file name
  • urpmi package installation
  • Automatic upgrade on a Mandrake machine
  • urpmi.update update_source urpmi --auto
    --auto-select--media update_source

12
YUM
  • YUM is a fresh project, based on YUP
  • Its written in python and exploits some portions
    of code of Anaconda, the RedHat installer
  • With YUM you can create ad-hoc packages
    repositories
  • Currently available only for RedHat
  • Its logic is slightly different from APT
  • YOUNG, BUT VERY POWERFUL
  • http//linux.duke.edu/projects/yum

13
APT
  • APT is a system created in the Debian community
    to automatically manage the packages dependencies
  • APT can install, remove and upgrade packages,
    managing dependencies and downloading the
    packages
  • Its a frontend to other tools, and it uses the
    underlying package management system, like the
    rpm or dpkg commands
  • Its able to fetch packages from several media
    (cdrom, ftp, http, nfs), and it can be used to
    create ad-hoc software repositories

14
APT Using (1/3)
root_at_/ apt-get install nautilus Reading
Package Lists... Done Building Dependency Tree...
Done The following extra packages will be
installed bonobo libmedusa0 libnautilus0 The
following NEW packages will be installed
bonobo libmedusa0 libnautilus0 nautilus 0
packages upgraded, 4 newly installed, 0 to remove
and 1 not upgraded. Need to get 8329kB of
archives. After unpacking 17.2MB will be used. Do
you want to continue? Y/n

15
APT Using (2/3)
root_at_/ apt-get remove gnome-panel Reading
Package Lists... Done Building Dependency Tree...
Done The following packages will be REMOVED
gnome-applets gnome-panel gnome-panel-data
gnome-session 0 packages upgraded, 0 newly
installed, 4 to remove and 1 not upgraded. Need
to get 0B of archives. After unpacking 14.6MB
will be freed. Do you want to continue? Y/n

16
APT Using (3/3)
  • root_at_/ apt-cache search pdf
  • kghostview - PostScript viewer for KDE
  • tetex - The TeX text formatting system.
  • xpdf - A PDF file viewer for the X Window System
  • root_at_/ apt-cache show xpdf
  • Filename xpdf-1.00-3.i386.rpm
  • Description A PDF file viewer for the X Window
    System.
  • Xpdf is an X Window System based viewer for
    Portable Document Format (PDF) files. Xpdf is a
    small and efficient program which uses standard X
    fonts.


17
APT for RPM
  • Brazilian distribution Conectiva ported the apt
    system on its linux distribution, which uses rpm
    packages
  • Apt is now available for all distributions using
    rpm, also thanks to the SourceForge project
    apt4rpm (http//apt4rpm.sourceforge.net)
  • Some features of Debian apt are not yet
    available, like package priority or requests to
    change configuration files, because of some
    differences in deb and rpm format

18
APT repository creation
  • Create the directory tree
  • ltarchgt/RPMS.os, ltarchgt/RPMS.updates, ltarchgt/base
    (for apt specific files)Ex /linux/apt/redhat/7.3
    /i386/RPMS.os
  • In RPMS.os copy the distribution rpms
  • In RPMS.updates copy the updates rpms
  • Give the command
  • genbasedir --topdir/linux/apt --bloat --bz2only
    redhat/7.3/i386 os (for os section)
  • genbasedir --topdir/linux/apt --bloat --bz2only
    redhat/7.3/i386 updates (for updates section)

19
APT repository source.list
  • Create an apache virtual host
  • ltVirtualHost gt
  • ServerName apt.na.infn.it
  • DocumentRoot /linux/apt
  • ltDirectory /linux/aptgt
  • Options Indexes
  • lt/Directorygt
  • lt/VirtualHostgt
  • The source.list file to access this repository
    is rpm http//apt.na.infn.it redhat/7.3/i386 os
    updates

20
APT Naples repository
  • We have an apt repository in our campus in
    Naples, accessible at
  • http//apt.na.infn.it
  • apt packages for RedHat 7.2, 7.3, 8 e 9 and
    corresponding sources.list files for os and
    updates are available on this site
  • Updates rpms and apt lists are updated every
    night

21
Distros and repositories
  • YellowDog Linux PPC includes apt
  • New RedHat beta distro includes apt
  • Suse is plannig to include apt
  • Some public repositories for RedHat
  • www.freshrpms.net
  • apt-rpm.tuxfamily.org
  • apt.42h.de

22
APT - Benefits
  • Apt simplifies package management on rpm based
    distributions, even on RedHat, most used
    distribution in HEP environments
  • Systems update is possible with only two
    commands apt-get update apt-get -y upgrade
  • Using a local repository is possible to upgrade
    machines using no external links
  • It is possible to include non standard packages
    in local repositories...

23
InGRID - Installing GRID (1/4)
  • We are developing a procedure to install the
    Grid-IT distribution on RedHat 7.3 with
    kickstart, APT and LCFGng
  • Kickstart
  • Unattended installations
  • Known and well documented behaviour
  • Perhaps more flexible than other tools
  • APT
  • Simplified package management
  • Automatic package download to satisfy dependencies

24
InGRID (2/4)
  • LCFGng
  • University of Edinburgh project to setup and
    maintain Unix systems
  • It can configure many system files, execute
    scripts, create users, etc
  • Client-server architecture to manage many systems
    from a single machine

25
InGRID (3/4)
RH Kickstart
APT
LCFGng
26
InGRID (4/4)
  • We install a RH73 machine via kickstart
  • Then we run a script ingrid CE to install
    all computing element
  • packages via APT
  • After the first reboot LCFG customizes all
    configuration files
  • This system is actually used to install grid
    resources in the INFN, INFM and Physics
    Department laboratories in Naples

27
References
  • Apt - http//packages.debian.org/apt
  • Apt4rpm - http//apt4rpm.sourceforge.net
  • FreshRPMS - http//www.freshrpms.net
  • RedCarpet http//www.ximian.com
  • YUM - http//linux.duke.edu/projects/yum
  • LCFG http//www.lcfg.org
  • InGRID http//people.na.infn.it/taurino/pres/in
    grid/ingrid.ppt
  • (Italian only)
Write a Comment
User Comments (0)
About PowerShow.com