Something strange is happening here: "dpkg --verify" complains about the file /usr/share/man/man1/cpp.1.gz (a symlink shipped in the cpp-doc package), but only if the package containing it is _not_ given on the commandline. ,---- | $ dpkg -S /usr/share/man/man1/cpp.1.gz | cpp-doc: /usr/share/man/man1/cpp.1.gz | $ dpkg --verify cpp-doc | $ dpkg --verify 2>/dev/null | grep cpp | ??5?????? /usr/share/man/man1/cpp.1.gz `----
It turned out that this happened because I had an obsolete and
long-forgotten package installed which also shipped
/usr/share/man/man1/cpp.1.gz[1], and I had reinstalled cpp-doc with
"--force-overwrite" back then. Still, the md5sum of the replaced file
was still in place.
,----
| $ grep cpp.1.gz /var/lib/dpkg/info/*md5sums
| /var/lib/dpkg/info/pcc-for-i386-linux-gnu.md5sums:64430acd117b32ae7b6afceec7371927 usr/share/man/man1/cpp.1.gz
`----
The problem can be reproduced with the attached dummy packages where a
regular file is replaced with a symlink (thus, there is no md5sum entry
for it in the replacing package).
,----
| $ dpkg --verify bar foo
| $ dpkg --verify foo bar
| ??5?????? /usr/bin/foo
`----
Cheers,
Sven
1. https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=623952
Hi! Bug #872146 in package dpkg reported by you has been fixed in the dpkg/dpkg.git Git repository. You can see the changelog below, and you can check the diff of the fix at: https://git.dpkg.org/cgit/dpkg/dpkg.git/diff/?id=2549307d7 --- dpkg: Fix --verify to handle missing or inaccessible pathnames When a pathname does not exist or we do not have permissions to access it, on the rpm format print "missing" and append an error message between parenthesis in case the file is present on the filesystem but some other error disallowed getting information from it. Closes: #872146
Hi! Hrmm, sorry that commit does not really fix this issue, that was something else, will check whether I mixed up bugs, or I just misrecalled the details or similar. Thanks, Guillem
Hi! Hrmm, sorry that commit does not really fix this issue, that was something else, will check whether I mixed up bugs, or I just misrecalled the details or similar. Thanks, Guillem