{"id":118,"date":"2003-01-14T12:01:46","date_gmt":"2003-01-14T09:01:46","guid":{"rendered":"https:\/\/mamchenkov.net\/wordpress\/?p=118"},"modified":"2005-04-06T02:09:31","modified_gmt":"2005-04-05T23:09:31","slug":"practical-rpm","status":"publish","type":"post","link":"https:\/\/mamchenkov.net\/wordpress\/2003\/01\/14\/practical-rpm\/","title":{"rendered":"Practical RPM"},"content":{"rendered":"<!-- google_ad_section_start -->\n<p>This document presents few practical tips for users of Redhat Pacakage Manager (RPM).<\/p>\n<p><!--more--><br \/>\n<strong>Introduction<\/strong><br \/>\nThis document will not cover or explain any theory behind RPM, since it has been nicely done in few other documents. Please consider reading <code>man rpm<\/code> for a general list of options and <a href=\"http:\/\/www.ibiblio.org\/pub\/Linux\/docs\/HOWTO\/other-formats\/html_single\/RPM-HOWTO.html\">RPM-Howto<\/a> for the theory part. RPM-Howto is mostly oriented towards building RPMs from source, but it is still a good read.<br \/>\n<!--nextpage--><br \/>\n<strong>Simple usage<\/strong><br \/>\nThis section provides some simple examples of RPM usage. Most of these actions happen on a daily basis and should be familiar to most of RPM users.<\/p>\n<p><em>Installation of new packages<\/em><\/p>\n<pre># rpm -ivh vim-enhanced-6.1-14.i386.rpm<\/pre>\n<p><em>Upgrading of packages<\/em><br \/>\nThere are two distinct scenarios when upgrading packages:<\/p>\n<ol>\n<li>We want RPM to check if the package is installed and if it is, then upgrade it. If the package is not intalled, then install it.\n<pre># rpm -Uvh vim-enhanced-6.1-14.i386.rpm<\/pre>\n<\/li>\n<li>We want RPM to do upgrade only if the package is installed.\n<pre># rpm -Fvh vim-enhanced-6.1-14.i386.rpm<\/pre>\n<\/li>\n<\/ol>\n<p><em>Installation and\/or upgrade of multiple packages<\/em><br \/>\nIt is of course possible to install and\/or upgrade multiple packages using shell wildcards.<\/p>\n<pre># rpm -ivh vim*rpm <\/pre>\n<p><em>Erasing (removing) packages<\/em><\/p>\n<pre># rpm -e emacs<\/pre>\n<p><!--nextpage--><br \/>\n<strong>Intermidiate usage<\/strong><\/p>\n<p><em>Listing all installed packages<\/em><\/p>\n<pre>$ rpm -qa | sort<\/pre>\n<p><em>Selective listing of installed packages<\/em><br \/>\nSometimes one may need to find all installed packages that match some pattern, like &#8220;kernel&#8221; or &#8220;vim&#8221;. This task can be completed using the following command.<\/p>\n<pre>$ rpm -qa | grep -i vim<\/pre>\n<p><em>Asking questions about files<\/em><br \/>\nIf you do not recognize a file on your system, then RPM can be queried to inform you of any package that installed that file.<\/p>\n<pre>$ rpm -qf \/usr\/bin\/vim<\/pre>\n<p>Sometimes you would want to see a list of all files installed by certain package.<\/p>\n<pre>$ rpm -ql vim-enhanced<\/pre>\n<p>With a little more grep magic you can find out about all programs that the package in question installed.<\/p>\n<pre>$ rpm -ql vim-enhanced | grep bin<\/pre>\n<p><!--nextpage--><br \/>\n<strong>Advanced usage<\/strong><\/p>\n<p><em>Package requirements<\/em><br \/>\nRPM is well-known for its dependecies headaches. It is, therefor, often important to see what the package requires:<\/p>\n<pre>$ rpm -q --requires vim-enhanced<\/pre>\n<p>and\/or what it provides:<\/p>\n<pre>$ rpm -q --provides vim-enhanced<\/pre>\n<p><em>Quering not installed packages<\/em><br \/>\nSometimes it is desirable to query RPM files before installing them. This can be done by adding -p to the query and specifying the filename of the package in question.For example, what will the vim-enhanced.rpm file install?<\/p>\n<pre>$ rpm -qlp vim-enhanced.rpm<\/pre>\n<p><em>More shell magic<\/em><br \/>\nLet&#8217;s erase all packages which have &#8220;emacs&#8221; in their names.<\/p>\n<pre>$ rpm -e ` rpm -qa | grep -i emacs ` <\/pre>\n<p><em>Quering for package groups<\/em><br \/>\nEach and every RPM package belongs to a predefined group of packages. The complete list of all groups is can be found in RPM-Howto. Below is an example of a query for the packages which are in &#8220;Applications\/Editors&#8221; group.<\/p>\n<pre>$ rpm -q --group 'Applications\/Editors'<\/pre>\n<p><em>Listing installed packages sorted by size<\/em><br \/>\nRPM has an extremely useful &#8211;qf (query format) option, which allows you to specify exactly how do you want the results of the query to appear. It is very similar in syntax to the traditional <code>printf<\/code> command. Additionally, it allows you to use any of the RPM information fields in your query, like &#8220;SIZE&#8221;, &#8220;NAME&#8221;, &#8220;VERSION&#8221;, etc.<\/p>\n<pre>$ rpm -qa --qf \"%-10{SIZE} %-30{NAME}\\n\" | sort -n <\/pre>\n<p><em>Crash\/malfunction recovery helpers<\/em><br \/>\nRPM is a very useful tool in case you had your system crashed and\/or compromised. For example, in case your apache stopped working for some reason, you can easily check which files are missing or were changed.<\/p>\n<pre>$ rpm --verify ` rpm -qa | grep -i apache `<\/pre>\n<p>In case you accidentally changed mode (permissions) of a file and you want to bring it to the original state without doing a timely restore from tape, &#8211;dump gets handy. Below is an example of retreiving original mode for \/bin\/bash file from the RPM database.<\/p>\n<pre>$ rpm -q --dump bash | grep '\/bin\/bash' <\/pre>\n<p><em>Building packages from source RPMs<\/em><br \/>\nMost of the times, RPM packages are provided in both binary and source form. Rebuild RPM from source package can save you a lot of dependancy\/compatibility troubles.<\/p>\n<pre># rpmbuild --rebuild vim-6.1-14.src.rpm<\/pre>\n<p>If everything went fine, then you will find the resulting RPM in <code>\/usr\/src\/redhat\/RPMS\/i386\/<\/code> directory (or the one appropriate for your distribution and architecture). You can now proceed with installation of the freshly built package.<\/p>\n<!-- google_ad_section_end -->\n","protected":false},"excerpt":{"rendered":"<!-- google_ad_section_start -->\n<p>This document presents few practical tips for users of Redhat Pacakage Manager (RPM).<\/p>\n<!-- google_ad_section_end -->\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false,"_links_to":"","_links_to_target":""},"categories":[1,62],"tags":[],"keyring_services":[],"class_list":["post-118","post","type-post","status-publish","format-standard","hentry","category-general","category-technology"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.8 - aioseo.com -->\n\t<meta name=\"description\" content=\"This document presents few practical tips for users of Redhat Pacakage Manager (RPM). Introduction This document will not cover or explain any theory behind RPM, since it has been nicely done in few other documents. Please consider reading man rpm for a general list of options and RPM-Howto for the theory part. RPM-Howto is mostly\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Leonid Mamchenkov\"\/>\n\t<meta name=\"google-site-verification\" content=\"VHvdD0_usx1_4DzKy_QCVcICVgX2EgA2ybELT-wl7kQ\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/mamchenkov.net\/wordpress\/2003\/01\/14\/practical-rpm\/\" \/>\n\t<link rel=\"next\" href=\"https:\/\/mamchenkov.net\/wordpress\/2003\/01\/14\/practical-rpm\/2\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.8\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Leonid Mamchenkov - Life, universe, and everything else\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Practical RPM - Leonid Mamchenkov\" \/>\n\t\t<meta property=\"og:description\" content=\"This document presents few practical tips for users of Redhat Pacakage Manager (RPM). Introduction This document will not cover or explain any theory behind RPM, since it has been nicely done in few other documents. Please consider reading man rpm for a general list of options and RPM-Howto for the theory part. RPM-Howto is mostly\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/mamchenkov.net\/wordpress\/2003\/01\/14\/practical-rpm\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t\t<meta property=\"og:image:height\" content=\"1024\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2003-01-14T09:01:46+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2005-04-05T23:09:31+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/MamchenkovBlog\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@mamchenkov\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Practical RPM - Leonid Mamchenkov\" \/>\n\t\t<meta name=\"twitter:description\" content=\"This document presents few practical tips for users of Redhat Pacakage Manager (RPM). Introduction This document will not cover or explain any theory behind RPM, since it has been nicely done in few other documents. Please consider reading man rpm for a general list of options and RPM-Howto for the theory part. RPM-Howto is mostly\" \/>\n\t\t<meta name=\"twitter:creator\" content=\"@mamchenkov\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2003\\\/01\\\/14\\\/practical-rpm\\\/#blogposting\",\"name\":\"Practical RPM - Leonid Mamchenkov\",\"headline\":\"Practical RPM\",\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2003\\\/01\\\/14\\\/practical-rpm\\\/#articleImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"},\"datePublished\":\"2003-01-14T12:01:46+02:00\",\"dateModified\":\"2005-04-06T02:09:31+02:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2003\\\/01\\\/14\\\/practical-rpm\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2003\\\/01\\\/14\\\/practical-rpm\\\/#webpage\"},\"articleSection\":\"All, Technology\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2003\\\/01\\\/14\\\/practical-rpm\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/general\\\/#listItem\",\"name\":\"All\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/general\\\/#listItem\",\"position\":2,\"name\":\"All\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/general\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2003\\\/01\\\/14\\\/practical-rpm\\\/#listItem\",\"name\":\"Practical RPM\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2003\\\/01\\\/14\\\/practical-rpm\\\/#listItem\",\"position\":3,\"name\":\"Practical RPM\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/general\\\/#listItem\",\"name\":\"All\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\",\"name\":\"Leonid Mamchenkov\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2003\\\/01\\\/14\\\/practical-rpm\\\/#personImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/\",\"name\":\"Leonid Mamchenkov\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2003\\\/01\\\/14\\\/practical-rpm\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2003\\\/01\\\/14\\\/practical-rpm\\\/#webpage\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2003\\\/01\\\/14\\\/practical-rpm\\\/\",\"name\":\"Practical RPM - Leonid Mamchenkov\",\"description\":\"This document presents few practical tips for users of Redhat Pacakage Manager (RPM). Introduction This document will not cover or explain any theory behind RPM, since it has been nicely done in few other documents. Please consider reading man rpm for a general list of options and RPM-Howto for the theory part. RPM-Howto is mostly\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2003\\\/01\\\/14\\\/practical-rpm\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"datePublished\":\"2003-01-14T12:01:46+02:00\",\"dateModified\":\"2005-04-06T02:09:31+02:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#website\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/\",\"name\":\"Blog of Leonid Mamchenkov\",\"description\":\"Life, universe, and everything else\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Practical RPM - Leonid Mamchenkov","description":"This document presents few practical tips for users of Redhat Pacakage Manager (RPM). Introduction This document will not cover or explain any theory behind RPM, since it has been nicely done in few other documents. Please consider reading man rpm for a general list of options and RPM-Howto for the theory part. RPM-Howto is mostly","canonical_url":"https:\/\/mamchenkov.net\/wordpress\/2003\/01\/14\/practical-rpm\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"google-site-verification":"VHvdD0_usx1_4DzKy_QCVcICVgX2EgA2ybELT-wl7kQ","miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/mamchenkov.net\/wordpress\/2003\/01\/14\/practical-rpm\/#blogposting","name":"Practical RPM - Leonid Mamchenkov","headline":"Practical RPM","author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"publisher":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#person"},"image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2003\/01\/14\/practical-rpm\/#articleImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"},"datePublished":"2003-01-14T12:01:46+02:00","dateModified":"2005-04-06T02:09:31+02:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2003\/01\/14\/practical-rpm\/#webpage"},"isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2003\/01\/14\/practical-rpm\/#webpage"},"articleSection":"All, Technology"},{"@type":"BreadcrumbList","@id":"https:\/\/mamchenkov.net\/wordpress\/2003\/01\/14\/practical-rpm\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress#listItem","position":1,"name":"Home","item":"https:\/\/mamchenkov.net\/wordpress","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/#listItem","name":"All"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/#listItem","position":2,"name":"All","item":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/2003\/01\/14\/practical-rpm\/#listItem","name":"Practical RPM"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/2003\/01\/14\/practical-rpm\/#listItem","position":3,"name":"Practical RPM","previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/#listItem","name":"All"}}]},{"@type":"Person","@id":"https:\/\/mamchenkov.net\/wordpress\/#person","name":"Leonid Mamchenkov","image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2003\/01\/14\/practical-rpm\/#personImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"}},{"@type":"Person","@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author","url":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/","name":"Leonid Mamchenkov","image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2003\/01\/14\/practical-rpm\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"}},{"@type":"WebPage","@id":"https:\/\/mamchenkov.net\/wordpress\/2003\/01\/14\/practical-rpm\/#webpage","url":"https:\/\/mamchenkov.net\/wordpress\/2003\/01\/14\/practical-rpm\/","name":"Practical RPM - Leonid Mamchenkov","description":"This document presents few practical tips for users of Redhat Pacakage Manager (RPM). Introduction This document will not cover or explain any theory behind RPM, since it has been nicely done in few other documents. Please consider reading man rpm for a general list of options and RPM-Howto for the theory part. RPM-Howto is mostly","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#website"},"breadcrumb":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2003\/01\/14\/practical-rpm\/#breadcrumblist"},"author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"creator":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"datePublished":"2003-01-14T12:01:46+02:00","dateModified":"2005-04-06T02:09:31+02:00"},{"@type":"WebSite","@id":"https:\/\/mamchenkov.net\/wordpress\/#website","url":"https:\/\/mamchenkov.net\/wordpress\/","name":"Blog of Leonid Mamchenkov","description":"Life, universe, and everything else","inLanguage":"en-US","publisher":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#person"}}]},"og:locale":"en_US","og:site_name":"Leonid Mamchenkov - Life, universe, and everything else","og:type":"article","og:title":"Practical RPM - Leonid Mamchenkov","og:description":"This document presents few practical tips for users of Redhat Pacakage Manager (RPM). Introduction This document will not cover or explain any theory behind RPM, since it has been nicely done in few other documents. Please consider reading man rpm for a general list of options and RPM-Howto for the theory part. RPM-Howto is mostly","og:url":"https:\/\/mamchenkov.net\/wordpress\/2003\/01\/14\/practical-rpm\/","og:image":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg","og:image:secure_url":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg","og:image:width":1024,"og:image:height":1024,"article:published_time":"2003-01-14T09:01:46+00:00","article:modified_time":"2005-04-05T23:09:31+00:00","article:publisher":"https:\/\/www.facebook.com\/MamchenkovBlog","twitter:card":"summary_large_image","twitter:site":"@mamchenkov","twitter:title":"Practical RPM - Leonid Mamchenkov","twitter:description":"This document presents few practical tips for users of Redhat Pacakage Manager (RPM). Introduction This document will not cover or explain any theory behind RPM, since it has been nicely done in few other documents. Please consider reading man rpm for a general list of options and RPM-Howto for the theory part. RPM-Howto is mostly","twitter:creator":"@mamchenkov","twitter:image":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg"},"aioseo_meta_data":{"post_id":"118","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2023-07-19 14:26:37","updated":"2026-01-14 18:25:44","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\/category\/general\/\" title=\"All\">All<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tPractical RPM\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/mamchenkov.net\/wordpress"},{"label":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},{"label":"Practical RPM","link":"https:\/\/mamchenkov.net\/wordpress\/2003\/01\/14\/practical-rpm\/"}],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":7782,"url":"https:\/\/mamchenkov.net\/wordpress\/2004\/08\/09\/disagreement-with-sean-russells-rpm-hell\/","url_meta":{"origin":118,"position":0},"title":"Disagreement with Sean Russell&#8217;s RPM Hell","author":"Leonid Mamchenkov","date":"August 9, 2004","format":false,"excerpt":"Today I read an essey by Sean Russell called \"RPM Hell. A Perfect Example of Good Software Crippled by Bad Design\". In this essey Sean is explaining why he does not like RPM to the level when he is prepared to change the Linux distribution he is using. I, on\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":7380,"url":"https:\/\/mamchenkov.net\/wordpress\/2004\/03\/23\/how-can-i-display-a-list-of-all-rpm-packages-on-the-system-with-their-sizes\/","url_meta":{"origin":118,"position":1},"title":"How can I display a list of all rpm packages on the system with their sizes?","author":"Leonid Mamchenkov","date":"March 23, 2004","format":false,"excerpt":"\"rpm query size\" RPM (Red Hat Package Manager) has an excellent --qf (query format) option, which behaves much like printf function. Command rpm -q mozilla --qf '%{SIZE} \\n' will display the size of mozilla package. To list all packages with their sizes, you may use something like: rpm -qa --qf\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":22791,"url":"https:\/\/mamchenkov.net\/wordpress\/2014\/11\/03\/fpm-build-packages-for-multiple-platforms-deb-rpm-etc-with-great-ease-and-sanity\/","url_meta":{"origin":118,"position":2},"title":"fpm &#8211; build packages for multiple platforms (deb, rpm, etc) with great ease and sanity","author":"Leonid Mamchenkov","date":"November 3, 2014","format":"link","excerpt":"fpm -\u00a0Effing package management! Build packages for multiple platforms (deb, rpm, etc) with great ease and sanity.","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":7388,"url":"https:\/\/mamchenkov.net\/wordpress\/2004\/03\/23\/how-can-i-see-a-list-of-all-installed-rpms-on-my-system\/","url_meta":{"origin":118,"position":3},"title":"How can I see a list of all installed RPMs on my system?","author":"Leonid Mamchenkov","date":"March 23, 2004","format":false,"excerpt":"\"rpm listing installed rpms\" \"list all installed rpms\" \"list installed packages rpm\" Viewing a list of all installed RPMs on a system is as simple as typing in rpm -qa . Most probably, you'll want to see the resulting list alphabetically sorted. You can do that by typing rpm -qa\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":9488,"url":"https:\/\/mamchenkov.net\/wordpress\/2005\/09\/23\/finding-files-in-linux\/","url_meta":{"origin":118,"position":4},"title":"Finding files in Linux","author":"Leonid Mamchenkov","date":"September 23, 2005","format":false,"excerpt":"Many beginning Linux users experience difficulties getting used to the filesystem structure. Indeed, there are many files and directories, the structure of which are not as obvious as it could be. Choosing an appropriate location for a new file or directory is difficult and many choose to follow their own\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":7381,"url":"https:\/\/mamchenkov.net\/wordpress\/2004\/03\/23\/how-do-i-find-all-dependancies-for-a-particular-rpm-package\/","url_meta":{"origin":118,"position":5},"title":"How do I find all dependancies for a particular rpm package?","author":"Leonid Mamchenkov","date":"March 23, 2004","format":false,"excerpt":"\"find dependecies for rpm\" Run rpm -q --requires mutt to find all dependancies for installed packaged of mutt. If the package you are interested in is not yet installed, but resides on your hard disk, execute rpm -qp --requires mutt.version.rpm to find out all dependacies for the file\/package.","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/118","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/comments?post=118"}],"version-history":[{"count":0,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/118\/revisions"}],"wp:attachment":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/media?parent=118"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/categories?post=118"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/tags?post=118"},{"taxonomy":"keyring_services","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/keyring_services?post=118"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}