[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: