80 votes

E : Problème d'exécution des scripts APT Update::Post-Invoke-Success error pendant apt-get update

Je ne peux installer aucun paquet. Il semble que la commande apt-get update doit être exécuté mais il y a des erreurs :

$ 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

Sortie complète du terminal.txt

1voto

William Whyte Points 1036

Pour avoir eu ça :

$ sudo apt-get update
\[sudo\] password for XXX:           
...

AppStream system cache was updated, but problems were found: Metadata files have errors: /var/cache/app-info/xmls/fwupd.xml
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-cache > /dev/null; fi'
E: Sub-process returned an error code

$ sudo appstreamcli --version
AppStream CLI tool version: 0.10.6

$ sudo appstreamcli refresh-cache --force --verbose
\*\* (appstreamcli:15334): DEBUG: Added /usr/share/app-info/xmls to metadata search path.
\*\* (appstreamcli:15334): DEBUG: Added /var/lib/app-info/yaml to metadata search path.
\*\* (appstreamcli:15334): DEBUG: Added /var/cache/app-info/xmls to metadata search path.
\*\* (appstreamcli:15334): DEBUG: Refreshing AppStream cache
\*\* (appstreamcli:15334): DEBUG: Searching for data in: /usr/share/app-info/xmls
\*\* (appstreamcli:15334): DEBUG: Searching for data in: /var/cache/app-info/xmls
\*\* (appstreamcli:15334): DEBUG: Searching for data in: /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: WARNING: Could not parse XML data: Entity: line 265: parser error : EntityRef: expecting ';'
        <checksum filename="Firmware\_SF30&SN30\_Pro\_V1.26.dat" target="content" t
                                                            ^
...

La solution est :

$ sudo -i

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

# ls -l
total 236
drwxr-xr-x 2 root root   4096 jul 27 09:56 ./
drwxr-xr-x 5 root root   4096 aug 31  2017 ../
-rw-r--r-- 1 root root 233177 jun 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
total 464
drwxr-xr-x 2 root root   4096 jul 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 jun 29 16:02 fwupd.xml\_BACKUP

# rm fwupd.xml\_BACKUP

# apt-get update
Hit:1 http://se.archive.ubuntu.com/ubuntu xenial InRelease
...
Fetched 491 kB in 0s (715 kB/s)                    
Reading package lists... Done

# exit
logout

$

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

0voto

arielCo Points 136

Une solution fonctionnelle dans la version 18.04.1 consiste à installer appstream y libappstream4 manuellement à partir des dépôts Cosmic ; choisissez votre architecture et un miroir, téléchargez, installez avec la commande dpkg -i puis essayez appstreamcli refresh --force .

0voto

karel Points 97032

Ubuntu 18.04 et plus

Dans Ubuntu 18.04 et plus, ouvrez le terminal et tapez :

sudo apt install --reinstall libappstream4

Vous pouvez également tester la commande ci-dessus avant de l'exécuter sans apporter de modifications à votre système (donc sudo n'est pas nécessaire).

apt install --reinstall --simulate libappstream4

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X