Opened 9 years ago
Closed 9 years ago
#172 closed defect (fixed)
hard links detected (was: yum install perl fails)
Reported by: | haraldkamm | Owned by: | Yuri Dario |
---|---|---|---|
Priority: | blocker | Milestone: | |
Component: | rpm | Version: | |
Severity: | highest | Keywords: | |
Cc: |
Description
"yum install perl" fails. Any hint would be very appreciated.
netlabs-rel/primary_ | 701 kB 00:03 =-] 118 kB/s | 681 kB 00:00 ETA
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package perl.i686 0:5.16.1-1.oc00 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
perl i686 5.16.1-1.oc00 netlabs-rel 8.9 M
Transaction Summary
================================================================================
Install 1 Package
Total download size: 8.9 M
Installed size: 8.9 M
Is this ok [y/N]:
Downloading Packages:
perl-5.16.1-1.oc00.i | 8.9 MB 00:58 =-] 192 kB/s | 8.8 MB 00:00 ETA
Running Transaction Check
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : perl-5.16.1-1.oc00.i686 1/1
Error unpacking rpm package perl-5.16.1-1.oc00.i686
error: unpacking of archive failed: cpio: Bad magic
Failed:
perl.i686 0:5.16.1-1.oc00
Complete!
Change History (9)
comment:1 by , 9 years ago
Priority: | trivial → minor |
---|
comment:2 by , 9 years ago
Resolution: | → duplicate |
---|---|
Status: | new → closed |
comment:3 by , 9 years ago
Component: | yum → rpm |
---|---|
Priority: | minor → blocker |
Resolution: | duplicate |
Severity: | medium → highest |
Status: | closed → reopened |
comment:5 by , 9 years ago
Owner: | set to |
---|---|
Status: | reopened → assigned |
Summary: | yum install perl fails → hard links detected (was: yum install perl fails) |
The reason is related to existence of hard links in the rpm package; it can be checked with
rpm -q --qf "[%{FILENAMES} %{FILENLINKS}\n]" -p perl-5.16.1-1.oc00.pentium4.rpm
which shows
/@unixroot/usr/bin/a2p.dbg 1 /@unixroot/usr/bin/a2p.exe 1 /@unixroot/usr/bin/c2ph 2 /@unixroot/usr/bin/find2perl 1 ... ...
c2ph is not hard linked, even because OS/2 does not know about hard links. So here rpm 4.8 logic detected a hard link; this happened because inode and device number are used to detect hard links in rpm build logic and inode are not real numbers in klibc.
rpm should not write hardlinks in the package.
comment:6 by , 9 years ago
comment:7 by , 9 years ago
above rpm -q --qf macro must be run across all packages in repository to find broken packages.
comment:8 by , 9 years ago
comment:9 by , 9 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
The rpm package is not corrupted, verified using rpm2cpio/cpio on os2 and linux. Even linux rpm can install this package.
Debugging shows that cpio magic header is bad because of wrong read position in the file. The rpm OS/2 port should be ignoring some field length somewhere.