You are not logged in.

#1 2008-01-04 14:36:27

vis
Member
From: Switzerland
Registered: 2007-02-25
Posts: 81

reparing an upgading prob remotely

I have been a Arch user for around an year. But I never had a look at the package management issue, Arch simply worked!

Now there is a chance of looking into pacman's mechanist. A family member complains that he can't install new programs, pacman breaks after "various" errors. There is a small complication though. The owner is currently in another county. I have shell access and root privileges.

Where should I start? My initial test "pacman -S nmap" went like this:
  Targets: libpcap-0.9.8-2 lua-5.1.2-1 nmap-4.52-2
  Total Package Size:   2.1 MB
  Proceed with upgrade? [Y/n]
  :: Retrieving packages from current...
  warning: failed to get filesize for libpcap-0.9.8-2.pkg.tar.gz
  failed downloading libpcap-0.9.8-2.pkg.tar.gz from archlinux.puzzle.ch: 550 Failed to open file.
  error: failed to retrieve some files from current
  :: Retrieving packages from extra...
   lua-5.1.2-1              [################] 100%     286K   433.5K/s  00:00:00
  warning: failed to get filesize for nmap-4.52-2.pkg.tar.gz
  failed downloading nmap-4.52-2.pkg.tar.gz from archlinux.puzzle.ch: 550 Failed to open file.
  error: anonymous login failed
  warning: failed to get filesize for nmap-4.52-2.pkg.tar.gz
  failed downloading nmap-4.52-2.pkg.tar.gz from ftp.archlinux.org: 550 Failed to open file.
  warning: failed to get filesize for nmap-4.52-2.pkg.tar.gz
  ...

finally it dumps
  *** glibc detected *** pacman: double free or corruption (!prev): 0x084e4a40 ***
  ======= Backtrace: =========
  /lib/libc.so.6[0xb7e2fb10]
  /lib/libc.so.6(__libc_free+0x89)[0xb7e311a9]
  pacman[0x80604ee]
  pacman[0x805b731]
  pacman[0x805bdeb]
  pacman[0x80523c6]
  pacman[0x8055335]
  /lib/libc.so.6(__libc_start_main+0xd8)[0xb7de17c8]
  pacman[0x804a0a1]
  ======= Memory map: ========
  08048000-0806b000 r-xp 00000000 08:03 1701355    /usr/bin/pacman

It is possible that no updates were done for a long time (6 Months). For example he has completely missed the renaming of [current] to [core]. I corrected that. pacman version is 2.9.8.

What shoul I check?

Offline

#2 2008-01-04 15:32:16

tomk
Forum Fellow
From: Ireland
Registered: 2004-07-21
Posts: 9,839

Re: reparing an upgading prob remotely

Try pacman -Sy pacman. If you get new pacman installed, do a full upgrade.

If the pacman install fails, use wget or some other downloader to get the current pacman, libdownload, and libarchive packages from a suitable mirror. Decompress them over your / dir, then do a full upgrade.

Offline

#3 2008-01-04 16:10:54

vis
Member
From: Switzerland
Registered: 2007-02-25
Posts: 81

Re: reparing an upgading prob remotely

Hi tomk

That sounds like a rough treatment. :-(

Anyway
- I got the following three packages straigt using wget and ran "tar -C / -xzvf *. pacman-3.0.6-2-i686.pkg.tar.gz, libarchive-2.4.11-1-i686.pkg.tar.gz, libdownload-1.3-1-i686.pkg.tar.gz

- ran "packman -Sy"
  :: Synchronisiere Paketdatenbanken...
core ist aktuell
extra ist aktuell
community                336.9K  298.5K/s 00:00:01 [#####################] 100%
Lokale Datenbank ist aktuell

- ran  "pacman -S nmap"
  Löse Abhängigkeiten auf... Fertig.
  Suche nach Zwischen-Konflikten... Fertig.
  Pakete: libpcap-0.9.8-2  lua-5.1.2-1  nmap-4.52-2 
  Gesamte Paketgröße:   2.14 MB
  Installation fortsetzen? [J/n]
  :: Empfange Pakete von core...
  libpcap                  193.2K  209.9K/s 00:00:01 [#####################] 100%
  :: Empfange Pakete von extra...
  nmap                    1710.1K  516.2K/s 00:00:03 [#####################] 100%
  Prüfe Paketintegrität... Fertig.
  Räume auf... Fertig.
  (3/3) Pruefe auf Dateikonflikte                     [#####################] 100%
  (1/3) Aktualisiere libpcap                          [#####################] 100%
  (2/3) Installiere lua                               [#####################] 100%
  (3/3) Aktualisiere nmap                             [#####################] 100%

- ran " pacman -Sy pacman"
  :: Synchronisiere Paketdatenbanken...
  core ist aktuell
  extra ist aktuell
  community ist aktuell
  Löse Abhängigkeiten auf... Fertig.
  Suche nach Zwischen-Konflikten... Fertig.
  Pakete: libarchive-2.4.11-1  libdownload-1.3-1  pacman-3.0.6-2 
  Gesamte Paketgröße:   1.17 MB
  Installation fortsetzen? [J/n]
   :: Empfange Pakete von core...
  libarchive               314.8K  283.4K/s 00:00:01 [#####################] 100%
  libdownload               49.4K   75.9K/s 00:00:01 [#####################] 100%
  pacman                   829.2K  498.3K/s 00:00:02 [#####################] 100%
  Prüfe Paketintegrität... Fertig.
  Räume auf... Fertig.
  (3/3) Pruefe auf Dateikonflikte                     [#####################] 100%
  Fehler: Konnte den Vorgang nicht vorbereiten
  Fehler: Konnte den Vorgang (In Konflikt stehende Dateien) nicht durchführen
  libarchive: /usr/bin/bsdtar existiert im Dateisystem
  libarchive: /usr/include/archive.h existiert im Dateisystem
  libarchive: /usr/include/archive_entry.h existiert im Dateisystem
  libarchive: /usr/lib/libarchive.a existiert im Dateisystem
  libarchive: /usr/lib/libarchive.la existiert im Dateisystem
  libarchive: /usr/lib/libarchive.so existiert im Dateisystem
  libarchive: /usr/lib/libarchive.so.2 existiert im Dateisystem
  libarchive: /usr/lib/libarchive.so.2.4.11 existiert im Dateisystem
  libarchive: /usr/man/man1/bsdtar.1.gz existiert im Dateisystem
  libarchive: /usr/man/man3/archive_entry.3.gz existiert im Dateisystem
  libarchive: /usr/man/man3/archive_read.3.gz existiert im Dateisystem
  libarchive: /usr/man/man3/archive_util.3.gz existiert im Dateisystem
  libarchive: /usr/man/man3/archive_write.3.gz existiert im Dateisystem
  libarchive: /usr/man/man3/archive_write_disk.3.gz existiert im Dateisystem
  libarchive: /usr/man/man3/libarchive.3.gz existiert im Dateisystem
  libarchive: /usr/man/man3/libarchive_internals.3.gz existiert im Dateisystem
  libarchive: /usr/man/man5/cpio.5.gz existiert im Dateisystem
  libarchive: /usr/man/man5/libarchive-formats.5.gz existiert im Dateisystem
  libarchive: /usr/man/man5/mtree.5.gz existiert im Dateisystem
  libarchive: /usr/man/man5/tar.5.gz existiert im Dateisystem
  libarchive: /usr/share/licenses/libarchive/COPYING existiert im Dateisystem
  libdownload: /usr/include/download.h existiert im Dateisystem
  libdownload: /usr/lib/libdownload.a existiert im Dateisystem
  libdownload: /usr/lib/libdownload.so existiert im Dateisystem
  libdownload: /usr/man/man3/libdownload.3.gz existiert im Dateisystem
  pacman: /etc/abs/supfile.core existiert im Dateisystem
  pacman: /etc/abs/supfile.testing existiert im Dateisystem
  pacman: /etc/pacman.d/core existiert im Dateisystem
  pacman: /etc/pacman.d/testing existiert im Dateisystem
  pacman: /usr/bin/rankmirrors existiert im Dateisystem
  pacman: /usr/include/alpm_list.h existiert im Dateisystem

Was that expected?

Shall I go ahead and run "pacman -Syu"? I'm checking this because I have only remote access to the machine. Would be glad for a quick response.

Offline

#4 2008-01-04 16:19:47

vis
Member
From: Switzerland
Registered: 2007-02-25
Posts: 81

Re: reparing an upgading prob remotely

I was impationt and ran "pacman -Syu" anyway.

It went through asking questions like
  core ist aktuell
   extra ist aktuell
  community ist aktuell
  :: Starte komplette Systemaktualisierung...
  :: cvsup durch core/csup ersetzen? [J/n]
  :: squashfs durch core/kernel26 ersetzen? [J/n]
  :: unionfs durch core/kernel26 ersetzen? [J/n]
  ...
where I accepted the default answer.

then came
  :: pacman hat eine neuere Version von "pacman" gefunden.
  :: Es wird empfohlen, zuerst pacman zu aktualisieren und
  :: danach Ihre Eingabe mit der neueren Version zu wiederholen.
  :: Zuerst pacman aktualisieren? [J/n]

which got stuck just like in my above post "pacman -S pacman".

What's the next step?

Offline

#5 2008-01-04 17:17:37

shining
Pacman Developer
Registered: 2006-05-10
Posts: 2,043

Re: reparing an upgading prob remotely

Since you used tar for installing pacman / libdownload / libarchive, pacman lost track of these three packages.
You need to force their install once :
pacman -Sf pacman

Then it should work normally.


pacman roulette : pacman -S $(pacman -Slq | LANG=C sort -R | head -n $((RANDOM % 10)))

Offline

#6 2008-01-04 17:50:12

vis
Member
From: Switzerland
Registered: 2007-02-25
Posts: 81

Re: reparing an upgading prob remotely

Yes. that was the missing link!

Now the machine is going through a heavy "pacman -Syu". After that the person on the other side will have a shiny new Arch.

Imagine doing this on windows, with the board tools! I mean rdesktop, VNC & Co. might do the work, which private users often don't have. Here we haven't installed anything special.

Thanks for the great support!

Offline

Board footer

Powered by FluxBB