Pacman -Syu nie działa `/ bin istnieje w systemie plików`

14

pacman -SyuPo powrocie z wakacji próbowałem zaktualizować swój arch. Linux, a teraz pojawia się błąd, którego nie mogę zrozumieć:

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

masz pojęcie co tu jest nie tak? Instalacja arch. Linuxa jest całkiem nowa, więc nie spodziewałem się żadnych poważnych problemów z aktualizacją przez jakiś czas ...

wirrbel
źródło

Odpowiedzi:

20

Pliki binarne zostały przeniesione do / usr / bin .

Musisz podejść do aktualizacji w dwóch etapach, zgodnie z artykułem. Najpierw usuń lub zaktualizuj pakiety z nieoficjalnych repozytoriów, a następnie zaktualizuj system w trzech różnych krokach:

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

Jeśli napotkasz jakiekolwiek trudności, na tablicach Arch znajduje się długi wątek z poprawkami.

Aby uniknąć tej sytuacji w przyszłości, należy zasubskrybować ML lub kanał RSS ze strony Wiadomości, aby otrzymywać wcześniejsze ostrzeżenia o wszelkich znaczących zmianach wymagających interwencji użytkownika.

jasonwryan
źródło
2
Te dwa polecenia również mogą być przydatne: grep '^\(bin\|sbin\|usr/sbin\)' /var/lib/pacman/local/*/files | cut -d ":" -f 1 | uniq | cut -d "/" -f 6wyświetla listę wszystkich pakietów, które przechowują pliki w / bin, / sbin lub / usr / sbin i find /bin /sbin /usr/sbin -exec pacman -Qo -- {} + >/dev/nullwyświetla wszystkie pliki w tych katalogach, które nie należą do żadnego pakietu.
Torben
@jasonwryan czy możesz wyjaśnić, dlaczego podałeś filesystem,bashzamiast po prostu filesystem? Natknąłem się na to i rozwiązałem go, po prostu ignorując system plików, ponieważ była to jedyna rzecz wymieniona w komunikacie o błędzie i działało dobrze.
Matijs
Są to instrukcje od programistów. Ponadto, jeśli wykonasz ruch uderzeniowy, nie będziesz w stanie uruchomić (lub zrobić nic więcej) ...
jasonwryan