Le déplacement des binaires dans /usr/bin nécessite une intervention lors de la mise à jour

Lors de votre prochaine mise à jour, vous obtiendrez un message d’erreur du type:

erreur: la validation de la transaction a échoué (conflit de fichiers)
filesystem: /bin est déjà présent dans le système de fichiers
filesystem: /sbin est déjà présent dans le système de fichiers
filesystem: /usr/sbin est déjà présent dans le système de fichiers
Des erreurs se sont produites, aucun paquet n'a été mis à jour.

La mise à jour fusionne tous les binaires dans un répertoire /usr/bin unifié. Cette étape supprime une distinction dénuée de sens pour les systèmes Arch et simplifie la maintenance des paquets pour l’équipe de développement. Voyez ce message pour plus d’informations sur les raisons de ce changement.

Les instructions suivantes vous assureront une mise à jour sans danger:

1) Occupez-vous de tout paquet non-officiel avec des fichiers dans /bin, /sbin ou /usr/sbin.
La liste peut être obtenus en lançant :

$ pacman -Qqo /bin /sbin /usr/sbin | pacman -Qm -

Vérifiez aussi les paquets installés à partir de dépôts non-officiels à l’aide de:

$ paclist <repo> | awk ' { print $1 } ' | pacman -Ql - | grep ' /s\?bin/\| /usr/sbin/'

NdlR: par exemple, si vous utilisez le dépôt archlinuxfr:paclist archlinuxfr | awk ' { print $1 } ' | pacman -Ql - | grep ' /s\?bin/\| /usr/sbin/'.

2) Assurez-vous que tous les paquets dans IgnorePkg ou IgnoreGroup n’ont pas de fichiers dans /bin, /sbin, ou /usr/sbin. Sinon, il faudra les mettre à jour avant de continuer.

3) Si vous avez des fichiers dans /bin, /sbin ou /usr/sbin n’appartenant à aucun paquet, vous devez les déplacer vers /usr/bin. Trouvez cette liste en utilisant :

$ find /bin /sbin /usr/sbin -exec pacman -Qo -- {} + >/dev/null

4) S’assurer que toutes les partitions sont montées si vous utilisez autofs. Ils ne pourront pas être montées automatiquement au besoin pendant la mise à jour.

5) Mettez à jour votre système.

Avant d’effectuer cette mise à jour, vous pouvez vous assurer de disposer d’un deuxième terminal ouvert avec des privilèges root dans le cas improbable d’une urgence, en particulier pour une mise à jour via ssh.

# pacman -Syu --ignore filesystem,bash
# pacman -S bash
# pacman -Su

Topic sur le forum pour éventuellement plus de précisions

Article original