Trasig dpkg?
Hej!
Kör Woody och har åkt på ett fel på dpkg som jag inte blir klok på.
Vid varje install/remove så får jag följande fel:
login:/tmp# dpkg --install doc-debian_3.0_all.deb
Selecting previously deselected package doc-debian.
(Reading database ... 10798 files and directories currently installed.)
Unpacking doc-debian (from doc-debian_3.0_all.deb) ...
dpkg: error processing doc-debian_3.0_all.deb (--install):
unable to install updated status of `doc-debian': No such file or
directory
Errors were encountered while processing:
doc-debian_3.0_all.deb
Processing was halted because there were too many errors.
Har gjort följande:
* Kontrollerat att rättigehterna /var/lib/dpkg är rätt, testade även med
chmod 666 på status/available, utan resultat.
* Filerna i /var/lib/dpkg är korrekta, körde en diff från /var/backups och
det var ingen skillnad sen senaste backupen.
* Kan läsa/skriva i /var/lib/dpkg/status med en editor, och manipulera dem
med cp och mv utan problem.
* Har ominstallerat dpkg för hand genom att extrahera data.tar.gz från
dpkg packetet och packat upp det i /
Har helt slut på ideér vad som kan vara fel och vad man kan göra åt
det.
Körde dpkg genom strace, och här är en litet urklipp från den loggen.
Har tagit bort sådannt som jag tror inte är intressant i sammanhanget,
men skickar gärna med hela loggen på begärna,
open("/var/lib/dpkg/status-new", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 4
write(4, "Package: telnet\nStatus: install "..., 8192) = 8192
write(4, "d hourly profiling. Tons of othe"..., 8192) = 8192
unlink("/var/lib/dpkg/status-old") = -1 ENOENT (No such file or
directory)
link("/var/lib/dpkg/status", "/var/lib/dpkg/status-old") = -1 ENOENT (No
such file or directory)
rename("/var/lib/dpkg/status-new", "/var/lib/dpkg/status") = 0
umask(022) = 022
open("/var/lib/dpkg/available-new", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 4
umask(022) = 022
write(4, "Package: telnet\nPriority: standa"..., 8192) = 8192
write(4, "actually useful (1024-bit RSA an"..., 8192) = 8192
unlink("/var/lib/dpkg/available-old") = -1 ENOENT (No such file or
directory)
link("/var/lib/dpkg/available", "/var/lib/dpkg/available-old") = -1
ENOENT (No such file or directory)
rename("/var/lib/dpkg/available-new", "/var/lib/dpkg/available") = 0
unlink("/var/lib/dpkg/updates/tmp.i") = 0
fcntl64(3, F_SETLK, {type=F_UNLCK, whence=SEEK_SET, start=0, len=0}) = 0
write(2, "Errors were encountered while pr"..., 42Errors were
encountered while processing:
) = 42
write(2, " doc-debian_3.0_all.deb\n", 24 doc-debian_3.0_all.deb
) = 24
write(2, "Processing was halted because th"..., 58Processing was halted
because there were too many errors.
) = 58
Innehållet i /var/lib/dpkg
login:/var/lib/dpkg# ls -l
total 2420
drwxrwxrwx 2 root root 4096 Mar 18 19:04 alternatives
-rw-rw-rw- 1 root root 1043740 Mar 30 15:30 available
-rw-rw-rw- 1 root root 8 Feb 29 17:57 cmethopt
-rw-rw-rw- 1 root root 8 Apr 2 18:38 cmethopt-new
-rw-rw-rw- 1 root root 0 Feb 29 17:56 diversions
drwxrwxrwx 2 root root 24576 Mar 30 15:30 info
-rw-rw--w- 1 root root 0 Apr 2 18:49 methlock
drwxrwxrwx 5 root root 4096 Apr 2 20:06 methods
-rw-rw-rw- 1 root root 0 Feb 29 17:56 statoverride
-rw-rw-rw- 1 root root 163387 Apr 2 20:43 status
drwxrwxrwx 2 root root 4096 Apr 2 20:45 updates
Är det någon som vet hur man kan fixa det, eller fler ideér på vad som
kan vara fel?
/Michael
Reply to: