Skip to content

RPM File Format (.rpm)

An RPM file is an RPM Package Manager package: a lead and signature block, a header of package metadata, and a compressed cpio archive holding the files to install.

.rpmArchives

RPM at a glance#

Full nameRPM package
File extension.rpm
CategoryArchives
DeveloperErik Troan and Marc Ewing (Red Hat)
First released1995
MIME typesapplication/x-rpmapplication/x-redhat-package-manager
CompressionLossless
SpecificationLinux Standard Base — RPM package format
FileFlip supportFileFlip reads this format but does not write it

What a .rpm file can hold#

These are the things a RPM file either supports or does not, and they are what decides whether a conversion keeps everything or quietly drops something.

Lossless compressionYes
Embedded metadataYes

Strengths and limitations of RPM#

What RPM does well

  • The header stores an exact file manifest with checksums, so rpm -V can verify every installed file against what the package originally shipped
  • GPG signing is built into the format, so a package's authenticity can be checked before installation
  • One binary layout serves both source and binary packages, since a source RPM's payload is just a spec file and sources instead of built files

Where RPM falls short

  • Installing with rpm alone does not resolve dependencies, which is why dnf, yum or zypper front it on real systems
  • Built for RPM-based distributions, so it is not readable by Debian-family systems without a conversion tool like alien
  • The header format has grown several revisions over the years, and very old RPMs can trip up newer tooling that has trimmed legacy support

An RPM is the format to build or inspect when packaging software for Fedora, RHEL, openSUSE or another RPM-based distribution.

Convert or extract an RPM's payload when only the files inside are needed, or when the target system uses a Debian-family distribution instead.

How to open a .rpm file#

A .rpm file opens in the programs below, grouped by the platform you are on. If you would rather not install anything, FileFlip converts RPM into a format your machine already opens, and it does it in the browser tab rather than on a server.

PlatformPrograms that open it
Windows7-Zip
macOSp7zip (command line)
Linuxrpm2cpio + cpio (command line), dnf/yum/zypper (to install), GNOME Archive Manager
WebFileFlip

RPM questions people ask#

How do I open an RPM file without installing it?

Piping rpm2cpio package.rpm into cpio -idmv extracts an RPM's files to the current directory without installing anything or touching the RPM database. 7-Zip does the same thing through its GUI on Windows.

What's inside an RPM file?

An RPM file has four parts: a lead identifying it as an RPM, a signature block for verifying authenticity, a header of metadata like the package name, version and full file list, and a payload that is a compressed cpio archive of the actual files.

How do I install an RPM file?

sudo rpm -i package.rpm installs it directly but will not fetch missing dependencies, so sudo dnf install package.rpm (or zypper or yum, depending on the distribution) is the safer route since it resolves dependencies from the configured repositories first.

Can I open an RPM file on Windows or macOS?

7-Zip on Windows extracts an RPM's cpio payload directly, and p7zip provides the same support on macOS and Linux. Neither actually installs the package, since installation depends on the RPM database that only exists on an RPM-based Linux system.

What's the difference between an RPM and a .deb package?

An RPM is a custom binary header followed by a compressed cpio archive of files, used by Fedora, RHEL, openSUSE and similar distributions, while a .deb is an ar archive of two tarballs, used by Debian, Ubuntu and their derivatives. The tool alien can convert between the two, though the conversion is not always reliable since dependency naming differs between the ecosystems.

Converting RPM files#

FileFlip does not write .rpm files, so nothing on the site converts into this format. It works as a source only.

Every conversion runs inside your browser. The file is read from your disk, the work happens on your own machine, and nothing is uploaded. How FileFlip works names the engine behind each family and how to verify that for yourself.