rpm.txt 2004-03-07 Bikle ---------------- A few notes about the Linux rpm command. Demo of getting some information about an rpm: rpm -qip --------- root# rpm -qip IPython-0.5.0-1.noarch.rpm Name : IPython Relocations: /usr Version : 0.5.0 Vendor: Fernando Perez Release : 1 Build Date: Mon 25 Aug 2003 06:28:30 PM PDT Install Date: (not installed) Build Host: planck.colorado.edu Group : Development/Libraries Source RPM: IPython-0.5.0-1.src.rpm Size : 1728937 License: LGPL Signature : (none) URL : http://ipython.scipy.org Summary : An enhanced interactive Python shell. Description : IPython provides a replacement for the interactive Python interpreter with extra functionality. Main features: * Comprehensive object introspection. * Input history, persistent across sessions. .........snip............ Check if specific rpm already installed: rpm -q ------- root# rpm -q IPython-0.5.0-1.noarch.rpm package IPython-0.5.0-1.noarch.rpm is not installed root# root# rpm -q python-2.2.2-26 python-2.2.2-26 root# Look at all rpm's installed: rpm -qa ------- root# rpm -qa |grep python gnome-python2-canvas-1.99.14-5 python-optik-1.4-2 rpm-python-4.2-0.69 libxml2-python-2.5.4-1 gnome-python2-bonobo-1.99.14-5 python-devel-2.2.2-26 python-2.2.2-26 mod_python-3.0.1-3 gnome-python2-gtkhtml2-1.99.14-5 gnome-python2-1.99.14-5 root# Get a closer look at the contents of an rpm: rpm -qpl --------- root# rpm -qpl IPython-0.5.0-1.noarch.rpm /usr/bin/ipython /usr/bin/pycolor /usr/lib/python2.2/site-packages/IPython/ColorANSI.py /usr/lib/python2.2/site-packages/IPython/ColorANSI.pyc /usr/lib/python2.2/site-packages/IPython/ConfigLoader.py /usr/lib/python2.2/site-packages/IPython/ConfigLoader.pyc /usr/lib/python2.2/site-packages/IPython/CrashHandler.py /usr/lib/python2.2/site-packages/IPython/CrashHandler.pyc /usr/lib/python2.2/site-packages/IPython/DPyGetOpt.py /usr/lib/python2.2/site-packages/IPython/DPyGetOpt.pyc /usr/lib/python2.2/site-packages/IPython/Debugger.py /usr/lib/python2.2/site-packages/IPython/Debugger.pyc /usr/lib/python2.2/site-packages/IPython/Extensions/InterpreterPasteInput.py /usr/lib/python2.2/site-packages/IPython/Extensions/InterpreterPasteInput.pyc /usr/lib/python2.2/site-packages/IPython/Extensions/PhysicalQInput.py /usr/lib/python2.2/site-packages/IPython/Extensions/PhysicalQInput.pyc /usr/lib/python2.2/site-packages/IPython/Extensions/PhysicalQInteractive.py /usr/lib/python2.2/site-packages/IPython/Extensions/PhysicalQInteractive.pyc /usr/lib/python2.2/site-packages/IPython/Extensions/__init__.py /usr/lib/python2.2/site-packages/IPython/Extensions/__init__.pyc /usr/lib/python2.2/site-packages/IPython/Extensions/numeric_formats.py /usr/lib/python2.2/site-packages/IPython/Extensions/numeric_formats.pyc /usr/lib/python2.2/site-packages/IPython/FakeModule.py /usr/lib/python2.2/site-packages/IPython/FakeModule.pyc /usr/lib/python2.2/site-packages/IPython/FlexCompleter.py /usr/lib/python2.2/site-packages/IPython/FlexCompleter.pyc /usr/lib/python2.2/site-packages/IPython/Gnuplot2.py /usr/lib/python2.2/site-packages/IPython/Gnuplot2.pyc /usr/lib/python2.2/site-packages/IPython/GnuplotInteractive.py /usr/lib/python2.2/site-packages/IPython/GnuplotInteractive.pyc /usr/lib/python2.2/site-packages/IPython/GnuplotRuntime.py /usr/lib/python2.2/site-packages/IPython/GnuplotRuntime.pyc /usr/lib/python2.2/site-packages/IPython/Itpl.py /usr/lib/python2.2/site-packages/IPython/Itpl.pyc /usr/lib/python2.2/site-packages/IPython/Logger.py /usr/lib/python2.2/site-packages/IPython/Logger.pyc /usr/lib/python2.2/site-packages/IPython/Magic.py /usr/lib/python2.2/site-packages/IPython/Magic.pyc /usr/lib/python2.2/site-packages/IPython/OInspect.py /usr/lib/python2.2/site-packages/IPython/OInspect.pyc /usr/lib/python2.2/site-packages/IPython/OutputTrap.py /usr/lib/python2.2/site-packages/IPython/OutputTrap.pyc /usr/lib/python2.2/site-packages/IPython/Prompts.py /usr/lib/python2.2/site-packages/IPython/Prompts.pyc /usr/lib/python2.2/site-packages/IPython/PyColorize.py /usr/lib/python2.2/site-packages/IPython/PyColorize.pyc /usr/lib/python2.2/site-packages/IPython/Release.py /usr/lib/python2.2/site-packages/IPython/Release.pyc /usr/lib/python2.2/site-packages/IPython/Shell.py /usr/lib/python2.2/site-packages/IPython/Shell.pyc /usr/lib/python2.2/site-packages/IPython/Struct.py /usr/lib/python2.2/site-packages/IPython/Struct.pyc /usr/lib/python2.2/site-packages/IPython/UserConfig/ipythonrc /usr/lib/python2.2/site-packages/IPython/UserConfig/ipythonrc-math /usr/lib/python2.2/site-packages/IPython/UserConfig/ipythonrc-numeric /usr/lib/python2.2/site-packages/IPython/UserConfig/ipythonrc-physics /usr/lib/python2.2/site-packages/IPython/UserConfig/ipythonrc-scipy /usr/lib/python2.2/site-packages/IPython/UserConfig/ipythonrc-tutorial /usr/lib/python2.2/site-packages/IPython/__init__.py /usr/lib/python2.2/site-packages/IPython/__init__.pyc /usr/lib/python2.2/site-packages/IPython/deep_reload.py /usr/lib/python2.2/site-packages/IPython/deep_reload.pyc /usr/lib/python2.2/site-packages/IPython/genutils.py /usr/lib/python2.2/site-packages/IPython/genutils.pyc /usr/lib/python2.2/site-packages/IPython/iplib.py /usr/lib/python2.2/site-packages/IPython/iplib.pyc /usr/lib/python2.2/site-packages/IPython/iplib_ori.py /usr/lib/python2.2/site-packages/IPython/iplib_ori.pyc /usr/lib/python2.2/site-packages/IPython/ipmaker.py /usr/lib/python2.2/site-packages/IPython/ipmaker.pyc /usr/lib/python2.2/site-packages/IPython/numutils.py /usr/lib/python2.2/site-packages/IPython/numutils.pyc /usr/lib/python2.2/site-packages/IPython/ultraTB.py /usr/lib/python2.2/site-packages/IPython/ultraTB.pyc /usr/lib/python2.2/site-packages/IPython/usage.py /usr/lib/python2.2/site-packages/IPython/usage.pyc /usr/share/doc/IPython/COPYING /usr/share/doc/IPython/GNU-LGPL /usr/share/doc/IPython/NEWS /usr/share/doc/IPython/README.txt /usr/share/doc/IPython/README_Windows.txt /usr/share/doc/IPython/examples/example-embed-short.py /usr/share/doc/IPython/examples/example-embed.py /usr/share/doc/IPython/examples/example-gnuplot.py /usr/share/doc/IPython/examples/example-magic.py /usr/share/doc/IPython/manual.pdf /usr/share/doc/IPython/manual/footnode.html /usr/share/doc/IPython/manual/index.html /usr/share/doc/IPython/manual/manual.css /usr/share/doc/IPython/manual/manual.html /usr/share/doc/IPython/manual/node1.html /usr/share/doc/IPython/manual/node10.html /usr/share/doc/IPython/manual/node11.html /usr/share/doc/IPython/manual/node12.html /usr/share/doc/IPython/manual/node13.html /usr/share/doc/IPython/manual/node14.html /usr/share/doc/IPython/manual/node15.html /usr/share/doc/IPython/manual/node16.html /usr/share/doc/IPython/manual/node2.html /usr/share/doc/IPython/manual/node3.html /usr/share/doc/IPython/manual/node4.html /usr/share/doc/IPython/manual/node5.html /usr/share/doc/IPython/manual/node6.html /usr/share/doc/IPython/manual/node7.html /usr/share/doc/IPython/manual/node8.html /usr/share/doc/IPython/manual/node9.html /usr/share/doc/IPython/new_design.pdf /usr/share/doc/IPython/pycon.ico /usr/share/man/man1/ipython.1.gz /usr/share/man/man1/pycolor.1.gz root# Install an rpm: rpm -i ------ root# rpm -i IPython-0.5.0-1.noarch.rpm root# root# rpm -q IPython-0.5.0-1.noarch.rpm package IPython-0.5.0-1.noarch.rpm is not installed That is strange; it must be in there; I'll use a different method. root# rpm -qa|grep -i python gnome-python2-canvas-1.99.14-5 python-optik-1.4-2 rpm-python-4.2-0.69 libxml2-python-2.5.4-1 gnome-python2-bonobo-1.99.14-5 python-devel-2.2.2-26 python-2.2.2-26 mod_python-3.0.1-3 gnome-python2-gtkhtml2-1.99.14-5 gnome-python2-1.99.14-5 IPython-0.5.0-1 root# A syntax variation for situation when I'm blocked by a dependency: root# rpm -i IPython-0.5.0-1.noarch.rpm --nodeps package IPython-0.5.0-1 is already installed root# Install or update an rpm: rpm -U ------ root# rpm -U IPython-0.5.0-1.noarch.rpm --nodeps package IPython-0.5.0-1 is already installed root# Check that files installed by rpm are still installed: rpm -V ------- root# rm -f /usr/share/man/man1/pycolor.1.gz root# rpm -V IPython-0.5.0-1 missing d /usr/share/man/man1/pycolor.1.gz root# Check that ALL files installed by rpm are still installed (takes awhile): rpm -Va ------- root# rpm -Va S.5....T c /etc/hotplug/usb.usermap S.5....T c /etc/pcmcia/config.opts S.5....T /etc/rc.d/init.d/pcmcia S.5....T c /etc/sysconfig/pcmcia .......T c /etc/mail/sendmail.cf S.5....T c /etc/mail/statistics S.5....T c /etc/rc.d/init.d/sendmail .........snip............ Remove files installed previously by an rpm: rpm -e ------ root# rpm -qa|grep Python IPython-0.5.0-1 root# rpm -e IPython-0.5.0-1 root# Extract files from rpm into temp directory: rpm2cpio --------- root# rpm2cpio IPython-0.5.0-1.noarch.rpm | cpio -idvc ./usr/bin/ipython ./usr/bin/pycolor ./usr/lib/python2.2/site-packages/IPython/ColorANSI.py ./usr/lib/python2.2/site-packages/IPython/ColorANSI.pyc ./usr/lib/python2.2/site-packages/IPython/ConfigLoader.py ./usr/lib/python2.2/site-packages/IPython/ConfigLoader.pyc ./usr/lib/python2.2/site-packages/IPython/CrashHandler.py ./usr/lib/python2.2/site-packages/IPython/CrashHandler.pyc ./usr/lib/python2.2/site-packages/IPython/DPyGetOpt.py ./usr/lib/python2.2/site-packages/IPython/DPyGetOpt.pyc ./usr/lib/python2.2/site-packages/IPython/Debugger.py ./usr/lib/python2.2/site-packages/IPython/Debugger.pyc ./usr/lib/python2.2/site-packages/IPython/Extensions/InterpreterPasteInput.py ./usr/lib/python2.2/site-packages/IPython/Extensions/InterpreterPasteInput.pyc ./usr/lib/python2.2/site-packages/IPython/Extensions/PhysicalQInput.py ./usr/lib/python2.2/site-packages/IPython/Extensions/PhysicalQInput.pyc ./usr/lib/python2.2/site-packages/IPython/Extensions/PhysicalQInteractive.py ./usr/lib/python2.2/site-packages/IPython/Extensions/PhysicalQInteractive.pyc ./usr/lib/python2.2/site-packages/IPython/Extensions/__init__.py ./usr/lib/python2.2/site-packages/IPython/Extensions/__init__.pyc ./usr/lib/python2.2/site-packages/IPython/Extensions/numeric_formats.py ./usr/lib/python2.2/site-packages/IPython/Extensions/numeric_formats.pyc ./usr/lib/python2.2/site-packages/IPython/FakeModule.py ./usr/lib/python2.2/site-packages/IPython/FakeModule.pyc ./usr/lib/python2.2/site-packages/IPython/FlexCompleter.py ./usr/lib/python2.2/site-packages/IPython/FlexCompleter.pyc ./usr/lib/python2.2/site-packages/IPython/Gnuplot2.py ./usr/lib/python2.2/site-packages/IPython/Gnuplot2.pyc ./usr/lib/python2.2/site-packages/IPython/GnuplotInteractive.py ./usr/lib/python2.2/site-packages/IPython/GnuplotInteractive.pyc ./usr/lib/python2.2/site-packages/IPython/GnuplotRuntime.py ./usr/lib/python2.2/site-packages/IPython/GnuplotRuntime.pyc ./usr/lib/python2.2/site-packages/IPython/Itpl.py ./usr/lib/python2.2/site-packages/IPython/Itpl.pyc ./usr/lib/python2.2/site-packages/IPython/Logger.py ./usr/lib/python2.2/site-packages/IPython/Logger.pyc ./usr/lib/python2.2/site-packages/IPython/Magic.py ./usr/lib/python2.2/site-packages/IPython/Magic.pyc ./usr/lib/python2.2/site-packages/IPython/OInspect.py ./usr/lib/python2.2/site-packages/IPython/OInspect.pyc ./usr/lib/python2.2/site-packages/IPython/OutputTrap.py ./usr/lib/python2.2/site-packages/IPython/OutputTrap.pyc ./usr/lib/python2.2/site-packages/IPython/Prompts.py ./usr/lib/python2.2/site-packages/IPython/Prompts.pyc ./usr/lib/python2.2/site-packages/IPython/PyColorize.py ./usr/lib/python2.2/site-packages/IPython/PyColorize.pyc ./usr/lib/python2.2/site-packages/IPython/Release.py ./usr/lib/python2.2/site-packages/IPython/Release.pyc ./usr/lib/python2.2/site-packages/IPython/Shell.py ./usr/lib/python2.2/site-packages/IPython/Shell.pyc ./usr/lib/python2.2/site-packages/IPython/Struct.py ./usr/lib/python2.2/site-packages/IPython/Struct.pyc ./usr/lib/python2.2/site-packages/IPython/UserConfig/ipythonrc ./usr/lib/python2.2/site-packages/IPython/UserConfig/ipythonrc-math ./usr/lib/python2.2/site-packages/IPython/UserConfig/ipythonrc-numeric ./usr/lib/python2.2/site-packages/IPython/UserConfig/ipythonrc-physics ./usr/lib/python2.2/site-packages/IPython/UserConfig/ipythonrc-scipy ./usr/lib/python2.2/site-packages/IPython/UserConfig/ipythonrc-tutorial ./usr/lib/python2.2/site-packages/IPython/__init__.py ./usr/lib/python2.2/site-packages/IPython/__init__.pyc ./usr/lib/python2.2/site-packages/IPython/deep_reload.py ./usr/lib/python2.2/site-packages/IPython/deep_reload.pyc ./usr/lib/python2.2/site-packages/IPython/genutils.py ./usr/lib/python2.2/site-packages/IPython/genutils.pyc ./usr/lib/python2.2/site-packages/IPython/iplib.py ./usr/lib/python2.2/site-packages/IPython/iplib.pyc ./usr/lib/python2.2/site-packages/IPython/iplib_ori.py ./usr/lib/python2.2/site-packages/IPython/iplib_ori.pyc ./usr/lib/python2.2/site-packages/IPython/ipmaker.py ./usr/lib/python2.2/site-packages/IPython/ipmaker.pyc ./usr/lib/python2.2/site-packages/IPython/numutils.py ./usr/lib/python2.2/site-packages/IPython/numutils.pyc ./usr/lib/python2.2/site-packages/IPython/ultraTB.py ./usr/lib/python2.2/site-packages/IPython/ultraTB.pyc ./usr/lib/python2.2/site-packages/IPython/usage.py ./usr/lib/python2.2/site-packages/IPython/usage.pyc ./usr/share/doc/IPython/COPYING ./usr/share/doc/IPython/GNU-LGPL ./usr/share/doc/IPython/NEWS ./usr/share/doc/IPython/README.txt ./usr/share/doc/IPython/README_Windows.txt ./usr/share/doc/IPython/examples/example-embed-short.py ./usr/share/doc/IPython/examples/example-embed.py ./usr/share/doc/IPython/examples/example-gnuplot.py ./usr/share/doc/IPython/examples/example-magic.py ./usr/share/doc/IPython/manual.pdf ./usr/share/doc/IPython/manual/footnode.html ./usr/share/doc/IPython/manual/index.html ./usr/share/doc/IPython/manual/manual.css ./usr/share/doc/IPython/manual/manual.html ./usr/share/doc/IPython/manual/node1.html ./usr/share/doc/IPython/manual/node10.html ./usr/share/doc/IPython/manual/node11.html ./usr/share/doc/IPython/manual/node12.html ./usr/share/doc/IPython/manual/node13.html ./usr/share/doc/IPython/manual/node14.html ./usr/share/doc/IPython/manual/node15.html ./usr/share/doc/IPython/manual/node16.html ./usr/share/doc/IPython/manual/node2.html ./usr/share/doc/IPython/manual/node3.html ./usr/share/doc/IPython/manual/node4.html ./usr/share/doc/IPython/manual/node5.html ./usr/share/doc/IPython/manual/node6.html ./usr/share/doc/IPython/manual/node7.html ./usr/share/doc/IPython/manual/node8.html ./usr/share/doc/IPython/manual/node9.html ./usr/share/doc/IPython/new_design.pdf ./usr/share/doc/IPython/pycon.ico ./usr/share/man/man1/ipython.1.gz ./usr/share/man/man1/pycolor.1.gz 3413 blocks root# Rebuild rpm database: rpm --rebuilddb ---------------- root# rpm --rebuilddb