Pacman -Syu falha `/ bin existe no sistema de arquivos`


14

Eu estava tentando atualizar meu arch linux pacman -Syudepois de ter retornado das férias e agora recebo esse erro que não consigo entender:

(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.

você tem uma idéia do que está errado aqui? A instalação do arch linux é bastante nova, então eu não esperava nenhum problema sério de atualização por algum tempo ...

Respostas:


20

Os binários foram movidos para / usr / bin .

Você precisa abordar a atualização em duas fases, conforme a notícia. Primeiro remova ou atualize todos os pacotes de repositórios não oficiais e, em seguida, atualize seu sistema em três etapas distintas:

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

Se você encontrar alguma dificuldade, há uma longa discussão nas placas do Arch com correções.

Para evitar essa situação no futuro, assine o ML ou o feed RSS na página Notícias, para receber um aviso prévio de qualquer alteração significativa que exija intervenção do usuário.


2
Esses dois comandos também podem ser úteis: grep '^\(bin\|sbin\|usr/sbin\)' /var/lib/pacman/local/*/files | cut -d ":" -f 1 | uniq | cut -d "/" -f 6lista todos os pacotes que contêm arquivos em / bin, / sbin ou / usr / sbin e find /bin /sbin /usr/sbin -exec pacman -Qo -- {} + >/dev/nulllista todos os arquivos nesses diretórios que não pertencem a nenhum pacote.
— Torben

@jasonwryan você poderia esclarecer por que especificar em filesystem,bashvez de apenas filesystem? Eu me deparei com isso e o resolvi simplesmente ignorando o sistema de arquivos, pois era a única coisa mencionada na mensagem de erro e funcionava bem.
— Matijs

Essas são as instruções dos desenvolvedores. Além disso, se você b0rk movimento bash, então você não vai ser capaz de boot (ou fazer qualquer coisa muito em tudo) ...
— jasonwryan
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.