E: Problem z wykonywaniem skryptów Błąd aktualizacji APT :: Błąd Post-Invoke podczas aktualizacji apt-get

73

Nie mogę zainstalować żadnego pakietu. Wydaje się, że polecenie apt-get updatemusi zostać uruchomione, ale generuje pewne błędy:

$ sudo apt-get update
Get:1 http://security.ubuntu.com/ubuntu xenial-security InRelease [102 kB]     
Hit:2 http://ve.archive.ubuntu.com/ubuntu xenial InRelease                     
Hit:3 http://ve.archive.ubuntu.com/ubuntu xenial-updates InRelease             
Hit:4 http://ve.archive.ubuntu.com/ubuntu xenial-backports InRelease           
Fetched 102 kB in 23s (4337 B/s)                                               
*** Error in `appstreamcli': double free or corruption (fasttop): 0x000000000210f4b0 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x777e5)[0x7fac8d8317e5]
[...]
Aborted (core dumped)
Reading package lists... Done
E: Problem executing scripts APT::Update::Post-Invoke-Success 
 'if /usr/bin/test -w /var/cache/app-info -a -e /usr/bin/appstreamcli; 
 then appstreamcli refresh > /dev/null; fi'
E: Sub-process returned an error code

Pełny terminal output.txt

Świątynia Shirley
źródło
1
Powiązany błąd: bugs.debian.org/cgi-bin/bugreport.cgi?bug=822317
Starszy Geek

Odpowiedzi:

95

To zadziałało dla mnie (stąd: https://forum.siduction.org/index.php?topic=6174.0 ):

sudo apt-get purge libappstream3
Max Robbertze
źródło
6
Co z efektami ubocznymi? Co spowodowało ten problem?
EdParadox,
4
@EdParadox Zdarzyło mi się to wczoraj podczas aktualizacji oprogramowania w Ubuntu 16.04 natychmiast po zainstalowaniu go w VirtualBox za pomocą polecenia sudo apt upgrade. Ta odpowiedź zadziałała dla mnie. Otrzymywałem wiele innych powiadomień o błędach Apport w tym samym czasie. Po zaktualizowaniu Oracle VirtualBox i Oracle VirtualBox Extension Pack do najnowszej wersji błędy te zniknęły. Zameldowałem się /var/crash/i zweryfikowałem, że wszystkie te błędy były związane z aplikacją, która ma zależność od libappstream3.
karel,
5
@EdParadox Przyczyna? W moim przypadku błąd wystąpił po prostu bez wyraźnego powodu podczas uruchamiania sudo apt-get updatepolecenia w terminalu. Efekt uboczny? Nic widocznego poza appstream gnome-software libappstream3usunięciem tych pakietów .
clearkimura
5
@ Lion Właśnie zrobiłem całkowicie nową instalację XUbuntu 16.04 tutaj na prawdziwym sprzęcie, mam ją od razu; Nigdy wcześniej tak się nie zdarzyło w żadnej innej dystrybucji Linuksa; Zgaduję i powiedziałbym, że z instalatorem może być coś nie tak.
jrh
4
To naprawdę uratowało moją **. Dzięki. Dziwne, że jeden głupi pakiet całkowicie uprości całą świeżą instalację.
Cerin
59
sudo apt install --reinstall libappstream3

mogę to naprawić.

Cztery dolary
źródło
to naprawiło ten błąd dla mnie.
Brock Vond
4
Pobiegłemapt install --reinstall libappstream*
jtlindsey
O wiele lepsze rozwiązanie niż zaakceptowana odpowiedź, zapobiega także usuwaniu dodatkowych pakietów (przynajmniej w KDE).
kursus
Występuje błąd: Następujące pakiety mają niezaspokojone zależności: kod: Zależy: libnss3 (> = 2: 3.26), ale należy zainstalować 2: 3.21-1ubuntu4
Владимир Смирнов
Jeśli to zadziała, byłoby lepiej, zgodził się. Jak pamiętam .. Próbowałem, ale dostałem błąd zależności.
Max Robbertze,
8

Przyszedłem z tej strony i zostałem przekierowany tutaj, tam nie mogę odpowiedzieć, ale w rzeczywistości jest to odpowiedź dla tej strony. Ponieważ miałem ten sam problem (przynajmniej taki sam jak jeden z powiązanych problemów, ale hej, nie przedstawiłem ich tak przykro, jeśli nie jest to właściwe rozwiązanie dla Ciebie) i miałem trudności ze znalezieniem właściwych informacji, ale w końcu udało się, pomyślałem, dlaczego nie udostępnić go tutaj. Zebranie części zajęło mi 2 dni wieczorem, ale to właśnie zrobiłem, mam nadzieję, że to pomoże niektórym z was.

Postępowałem zgodnie z tą procedurą, aby wyczyścić bałagan, na wszelki wypadek wykonałem kopię zapasową.

sudo apt install appstream/xenial-backports
sudo rm /etc/apt/apt.conf.d/50appstream
sudo rm /var/cache/app-info/xmls/fwupd.xml
sudo apt install --reinstall libappstream4
sudo appstreamcli refresh --force
sudo reboot

Nie jestem pewien, czy ponowne uruchomienie jest konieczne, ale po ponownym uruchomieniu zrobiłem:

sudo appstreamcli refresh --force

i nie miał więcej błędów.

Marcellus
źródło
1
Dla mnie to załatwiło sprawę - usunięcie fwupd.xmli ponowna instalacja libappstream4. Dzięki!
valiano
1
B4 twoja procedura, utworzyłem kopię zapasową fwupd.xmli 50appstream. Po zakończeniu procedury błędy zniknęły po sudo apt update(przetestowane pod kątem kilku ponownych uruchomień). Wróciłem 50appstreamdo pierwotnej lokalizacji, pobiegłem sudo appstreamcli refresh --forceza nią sudo apt update; brak błędu msg. Po ponownym wstawieniu fwupd.xmli odświeżeniu - wymuś i zaktualizuj polecenia, wystąpił ten błąd AppStream system cache was updated, but problems were found: Metadata files have errors: /var/cache/app-info/xmls/fwupd.xml. To fwupd.xmlspowodowało błąd. Symbol &w linii 265 jest prawdopodobną przyczyną?
Sun Bear
1
bugs.launchpad.net/ubuntu/+source/appstream/+bug/1644498 Poprawka została wydana w 2017/01, ale w 2018/07 ten problem pojawia się ponownie. Myślisz, że poprzednia poprawka nie działa już w przypadku bieżącego błędu? Wygląda na trend wzrostowy tego błędu ... Mam nadzieję, że uda się znaleźć nowe rozwiązanie.
Sun Bear
2
Skończyłem pliki fwupd.xmli 50appstreamnie należy ich usuwać. Mają cel. Tutaj opublikowałem swoje rozwiązanie . Po naprawieniu literówki fwupd.xmlwszystko znów działa.
Sun Bear
1
@Sun Bear Miałem dokładnie ten sam problem i twoje rozwiązanie zadziałało dla mnie. Dzięki
Scooby-2
8

Miałem ten problem po aktualizacji z 16.04 LTS do 18.04.1 LTS. Mój początkowy komunikat o błędzie brzmiał:

AppStream system cache was updated, but problems were found: Metadata files have errors: /var/cache/app-info/xmls/fwupd.xml

Oto, co zrobiłem, aby to naprawić:

$ sudo rm /var/cache/app-info/xmls/fwupd.xml
$ sudo appstreamcli refresh --force

Spowodowało to komunikat o terminalu:

AppStream cache update completed successfully.

Wtedy, sudo apt-get updatei sudo apt-get upgradedoskonale działa.

Christopherbalz
źródło
2

W moim przypadku czyszczenie lub ponowna instalacja nie pomogły.

Usunięcie wpisu apt.conf.d rozwiązało jednak dla mnie problem.

Friday 25 August  22:17:45 AEST 2017
LSB Version:    core-9.20160110ubuntu0.2-amd64:core-9.20160110ubuntu0.2-noarch:printing-9.20160110ubuntu0.2-amd64:printing-9.20160110ubuntu0.2-noarch:security-9.20160110ubuntu0.2-amd64:security-9.20160110ubuntu0.2-noarch
    Distributor ID: Ubuntu
    Description:    Ubuntu 16.04.3 LTS
    Release:    16.04
    Codename:   xenial

Uruchomiłem następujące polecenia, aby pozbyć się błędu:

sudo apt-get purge libappstream2
sudo rm /etc/apt/apt.conf.d/50appstream
AlienResidents
źródło
1

Za to:

$ sudo apt-get update
[sudo] hasło do XXX:           
...

Pamięć podręczna systemu AppStream została zaktualizowana, ale znaleziono problemy: w plikach metadanych występują błędy: /var/cache/app-info/xmls/fwupd.xml
Czytanie list pakietów ... Gotowe
E: Problem z wykonywaniem skryptów APT :: Update :: Post-Invoke-Success 'if / usr / bin / test -w / var / cache / app-info -a -e / usr / bin / appstreamcli; następnie appstreamcli refresh-cache> / dev / null; fi ”
E: Podproces zwrócił kod błędu

$ sudo appstreamcli --version
Wersja narzędzia AppStream CLI: 0.10.6

$ sudo appstreamcli refresh-cache --force --verbose
** (appstreamcli: 15334): DEBUG: Dodano / usr / share / app-info / xmls do ścieżki wyszukiwania metadanych.
** (appstreamcli: 15334): DEBUG: Dodano / var / lib / app-info / yaml do ścieżki wyszukiwania metadanych.
** (appstreamcli: 15334): DEBUG: Dodano / var / cache / app-info / xmls do ścieżki wyszukiwania metadanych.
** (appstreamcli: 15334): DEBUG: Odświeżanie pamięci podręcznej AppStream
** (appstreamcli: 15334): DEBUG: Wyszukiwanie danych w: / usr / share / app-info / xmls
** (appstreamcli: 15334): DEBUG: Wyszukiwanie danych w: / var / cache / app-info / xmls
** (appstreamcli: 15334): DEBUG: Wyszukiwanie danych w: / var / lib / app-info / yaml
** (appstreamcli: 15334): DEBUG: Reading: /usr/share/app-info/xmls/org.freedesktop.fwupd.xml
** (appstreamcli: 15334): DEBUG: Reading: /var/cache/app-info/xmls/fwupd.xml
** (appstreamcli: 15334): DEBUG: OSTRZEŻENIE: Nie można przeanalizować danych XML: Obiekt: wiersz 265: błąd analizatora składni: EntityRef: oczekiwanie ';'
        <nazwa sumy kontrolnej = "Firmware_SF30 & SN30_Pro_V1.26.dat" target = "content" t
                                                            ^
...

Poprawka polega na:

$ sudo -i

# cd / var / cache / app-info / xmls /

# ls -l
razem 236
drwxr-xr-x 2 root root 4096 lip 27 09:56 ./
drwxr-xr-x 5 root root 4096 aug 31 2017 ../
-rw-r - r-- 1 root root 233177 cze 29 16:02 fwupd.xml

# sed <fwupd.xml -rne 's / Firmware_SF30 \ & SN30_Pro_V1.26.dat / Firmware_SF30 \ & SN30_Pro_V1.26.dat / gp'
        <checksum filename = "Firmware_SF30 & SN30_Pro_V1.26.dat" target = "content" type = "sha1"> 3ef2bdee8aca2a45b9f53b4d4cce9722523f57f8 </checksum>

# sed fwupd.xml -i_BACKUP -re 's / Firmware_SF30 \ & SN30_Pro_V1.26.dat / Firmware_SF30 \ & SN30_Pro_V1.26.dat / gp'

# ls -l
razem 464
drwxr-xr-x 2 root root 4096 lip 27 09:57 ./
drwxr-xr-x 5 root root 4096 aug 31 2017 ../
-rw-r - r-- 1 root root 233328 jul 27 09:57 fwupd.xml
-rw-r - r-- 1 root root 233177 cze 29 16:02 fwupd.xml_BACKUP

# rm fwupd.xml_BACKUP

# apt-get update
Hit: 1 http://se.archive.ubuntu.com/ubuntu xenial InRelease
...
Pobrano 491 kB w 0 s (715 kB / s)                    
Czytanie list pakietów ... Gotowe

# wyjście
Wyloguj

$

Uwaga:
https://github.com/hughsie/lvfs-website/issues/33

Hannu
źródło
2
Odpowiedź pochodzenie: askubuntu.com/a/1053018/28943 ... Oryginalne PYTANIE (UWAGA: NIE DUPLIKAT, JESTEŚ W TYM SZYBKO
Hannu
Warto zauważyć, że jest to tylko rozwiązanie tymczasowe. Aby go naprawić poprawnie, wystarczy poczekać na usunięcie poprawki: bugs.launchpad.net/ubuntu/+source/appstream-glib/+bug/1780442 Również oryginalna odpowiedź wydaje mi się bardziej czytelna.
geras
0

Działającym rozwiązaniem w 18.04.1 jest ręczna instalacja appstream i libappstream4 z repozytoriów Cosmic; wybierz architekturę i kopię lustrzaną, pobierz, zainstaluj dpkg -i, a następnie spróbuj appstreamcli refresh --force.

arielCo
źródło