Pacman -Сю не удается `/ bin существует в файловой системе`

14

Я пытался обновить свой arch linux pacman -Syuпосле возвращения из отпуска, и теперь я получаю эту ошибку, которую не могу понять:

(133/133) checking for file conflicts              [######################] 100%
error: failed to commit transaction (conflicting files)
filesystem: /bin exists in filesystem
filesystem: /sbin exists in filesystem
filesystem: /usr/sbin exists in filesystem
Errors occurred, no packages were upgraded.

у вас есть идея, что здесь не так? Установка arch linux довольно новая, поэтому я не ожидал каких-либо серьезных проблем с обновлением в течение некоторого времени ...

wirrbel
источник

Ответы:

20

Двоичные файлы были перемещены в / usr / bin .

Вы должны подойти к обновлению в два этапа, согласно статье новостей. Сначала удалите или обновите все пакеты из неофициальных репозиториев, затем обновите вашу систему в три этапа:

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

Если вы столкнетесь с какими-либо трудностями, на платах Arch есть длинная нить с исправлениями.

Чтобы избежать этой ситуации в будущем, вы должны подписаться на ML или RSS-канал со страницы новостей, чтобы получать предварительное предупреждение о любых значительных изменениях, которые требуют вмешательства пользователя.

jasonwryan
источник
2
Эти две команды также могут быть полезны: grep '^\(bin\|sbin\|usr/sbin\)' /var/lib/pacman/local/*/files | cut -d ":" -f 1 | uniq | cut -d "/" -f 6перечисляет все пакеты, которые содержат файлы в / bin, / sbin или / usr / sbin, и find /bin /sbin /usr/sbin -exec pacman -Qo -- {} + >/dev/nullперечисляет все файлы в этих каталогах, которые не принадлежат ни одному пакету.
Торбен
@jasonwryan, не могли бы вы уточнить, почему вы указываете, filesystem,bashа не просто filesystem? Я столкнулся с этим и решил, просто проигнорировав файловую систему, поскольку это было единственное, что упоминалось в сообщении об ошибке, и оно работало нормально.
Матейс
Это инструкции от разработчиков. Кроме того, если вы остановите движение bash, то вы не сможете загрузиться (или вообще ничего не делать) ...
jasonwryan