You are not logged in.

#1 2005-02-02 11:48:15

alanmies
Member
From: Manchester, Finland
Registered: 2004-12-04
Posts: 23

Pacman segfaults

Grr, just as I was about to copy&paste what initially happened, gnome-terminal crashed on me. :x Oh well, here's a verbal description.

I ran pacman -Syu, and it downloaded the packages just fine. But when it got to installing gnome-vfs, the result was a segmentation fault. I tried running pacman -Syu again (had to remove /tmp/pacman.lck first), but first I get this error message: "error: /var/lib/pacman/local/gnome-vfs-2.8.3-3/desc: No such file or directory" and got a few errors along the way as well (here's the relevant portion of my /var/log/pacman.log):

[02/02/05 13:03] synchronizing package lists
[02/02/05 13:03] starting full system upgrade
[02/02/05 13:09] could not extract lib/ld-2.3.3.so: Text file busy
[02/02/05 13:09] errors occurred while installing glibc
[02/02/05 13:09] installed glibc (2.3.4-2)
[02/02/05 13:09] installed expat (1.95.8-1)
[02/02/05 13:09] could not extract usr/bin/dbus-daemon-1: Text file busy
[02/02/05 13:09] errors occurred while installing dbus
[02/02/05 13:09] installed dbus (0.23-4)

Ok, so I thought I might try to just upgrading gnome-vfs (pacman -S gnome-vfs). Here's the output:

(after running the above command, this error message was repeated many times, I'm omitting them for readability)
error: /var/lib/pacman/local/gnome-vfs-2.8.3-3/desc: No such file or directory
error: /var/lib/pacman/local/gnome-vfs-2.8.3-3/desc: No such file or directory

Targets: glibc-2.3.4-2 readline-5.0-1 bash-3.0-3 bzip2-1.0.2-3 cdparanoia-9.8-4
         howl-0.9.8-1 desktop-file-utils-0.10-1 gnome-common-2.8.0-5
         libidl2-0.8.4-1 orbit2-2.12.0-1 libjpeg-6b-3 zlib-1.2.2-1
         libtiff-3.7.1-2 atk-1.9.0-1 pango-1.8.0-1 gtk2-2.6.1-5 gconf-2.8.1-1
         libxml2-2.6.17-1 shared-mime-info-0.15-1 gnome-mime-data-2.4.2-1
         gnome-vfs-2.8.3-3

Total Package Size:   33.5 MB

Proceed with upgrade? [Y/n]

(Hmm, how come all these packages should now be upgraded? Oh well, I decided to give it a shot. Here's the output after downloading:)

checking package integrity... done.
loading package data... done.
checking for file conflicts... error: /var/lib/pacman/local/gnome-vfs-2.8.3-3/desc: No such file or directory
error: /var/lib/pacman/local/gnome-vfs-2.8.3-3/desc: No such file or directory
error: /var/lib/pacman/local/gnome-vfs-2.8.3-3/desc: No such file or directory

(again, this error message is repeated quite a few times, followed by errors like these - there were many more)

error: the following file conflicts were found:
  gnome-vfs: /opt/gnome/bin/gnomevfs-cat: exists in filesystem
  gnome-vfs: /opt/gnome/bin/gnomevfs-copy: exists in filesystem
  gnome-vfs: /opt/gnome/bin/gnomevfs-info: exists in filesystem
  gnome-vfs: /opt/gnome/bin/gnomevfs-ls: exists in filesystem
  gnome-vfs: /opt/gnome/bin/gnomevfs-mkdir: exists in filesystem
  gnome-vfs: /opt/gnome/bin/gnomevfs-rm: exists in filesystem

Any ideas on how to get pacman working properly again? If I try pacman -R gnome-vfs it again complains a few times about not finding desc, and then says "error: could not find gnome-vfs in database".

Offline

#2 2005-02-02 12:32:13

IceRAM
Member
From: Bucharest, Romania
Registered: 2004-03-04
Posts: 772
Website

Re: Pacman segfaults

Your packages DB is corrupted. This also happened to me, but pacman didn't segfault.

Pacman is missing some error checking code, IMO (see below) - I think I've even reported this, but the answer was: "Under normal conditions, this should not happen. You've done something wrong". Even in the case I would have done something wrong, the DB should not preven pacman from working. Note also that it is a filesystem based DB. Its stability relies on the behaviour of the filesystem under certain conditions.

You might want to have a look in /var/lib/pacman/local/.
You'll see dirs corresponding to packages and their versions. Unfortunately, I found dirs with the same package name, but 2 versions. This made pacman install the same thing over and over, because it didn't notice the 2nd dir. I personally delete all the new-version package dirs and let pacman upgrade for real those packages. (double version packages in DB should be prevented - you never know when it might crash (powe failure) and leave you with a broken DB)

I also happened to get missing "desc" files. I think I just removed the dir which pacman was complaining of missing that file. I think I found it empty anyhow. To my understanding, every dir in /var/lib/pacman/local/ signifies an installed package and its version. Removing such a dir, will make pacman unaware of that package being installed and would force an upgrade.

Note that messing with DB in the ways described above might cause false file conflicts.

AFAIK, the pacman DB is not documented (unless you go through the source and understand the way it works).

Good luck fixing it.

Offline

#3 2005-02-02 13:02:16

alanmies
Member
From: Manchester, Finland
Registered: 2004-12-04
Posts: 23

Re: Pacman segfaults

Thanks, I got it working by removing the gnome-vfs dir in /var/lib/pacman/local and running pacman -Sf gnome-vfs (had to force it because it complained about the existing files). I figured this might have been the solution but decided to ask first so I wouldn't hose my system.

Offline

#4 2005-02-02 15:41:02

phrakture
Arch Overlord
From: behind you
Registered: 2003-10-29
Posts: 7,879
Website

Re: Pacman segfaults

alanmies wrote:

Thanks, I got it working by removing the gnome-vfs dir in /var/lib/pacman/local and running pacman -Sf gnome-vfs (had to force it because it complained about the existing files). I figured this might have been the solution but decided to ask first so I wouldn't hose my system.

That's what I would have said.... your pacman DB is corrupt and kinda thinks you have gnome-vfs installed, but can't find information on it (I would assume the gnome-vfs dir was there but no subfiles).  So if you remove it then reinstall (most likely force) it should be fine.

Offline

Board footer

Powered by FluxBB