You need to pull one configuration file out of an .rpm package without installing the package. Which approach works?
LPIC-1 Exam 101-500, objective 102. Linux installation and package management medium
Draft — not checked yet. This question was written from the published exam objectives and cites the clause it comes from, but nobody has yet read it against that clause and signed for it.
It is kept out of search results and out of mock exams until they have. Read the source below before you take the answer as settled.
The options
Not correct rpm -i --nodeps package.rpm
Wrong. This still installs the package, merely skipping the dependency check — the opposite of leaving the system untouched.
Correct rpm2cpio package.rpm | cpio -idmv
Correct. rpm2cpio converts the RPM payload into a cpio archive on standard output; cpio -idmv then extracts it into the current directory, creating the directory structure as it goes.
Not correct rpm -qp package.rpm
Wrong. Querying a package file tells you about it — with -qlp you can list the files it contains — but query mode never extracts file contents.
Not correct rpm2cpio package.rpm > file.conf
Wrong. That just saves the whole cpio archive to a file named file.conf; the archive still has to be unpacked by cpio.
Why
An RPM is a header plus a compressed cpio archive of the payload. rpm2cpio writes that payload to standard output as cpio, which is why the idiom is a pipe into cpio (-i extract, -d create directories, -m preserve modification times, -v verbose). Paths come out relative to the current directory, so run it inside an empty scratch directory. 'rpm -qlp package.rpm' first tells you what is inside.
Where this comes from
- Cited
- LPI exam objective 102.5
- What it says
- Extract files from a package using rpm2cpio.
Practise this
Reading one question is not practice. The trainer will draw a set from objective 102 and space the ones you get wrong.