Arch Linux przechodzi na /usr/bin, czyli jak ominąć ewentualne problemy z aktualizacją

Arch Linux przechodzi na /usr/bin, czyli jak ominąć ewentualne problemy z aktualizacją

przez -
49 1497
Arch Linux

Allan McRae poinformował, iż przy najbliższej aktualizacji Arch Linux zmieni swoją strukturę systemu plików, podobnie jak to zrobiła Fedora. Oznaczać to będzie drobne problemy, które wielu użytkowników najpewniej doświadczy. Aktualizacja połączy wszystkie pliki wykonywalne w katalogu /usr/bin, co uprości zarządzanie pakietami.

Na początku powinien pojawić się taki błąd w menedżerze pakietów:
error: failed to commit transaction (conflicting files)
filesystem: /bin exists in filesystem

Aby uniknąć problemów, należy zastosować się do poniższych instrukcji:

  1. Przenieść wszystkie nieoficjalne pakiety z plikami w /bin, /sbin, /usr/bin do /usr/bin. Wygenerowanie wszystkich pakietów, które nie są w repo, wykonuje poniższe polecenie:

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

    Należy również sprawdzić wszystkie pakiety zainstalowane z nieoficjalnego repozytorium:

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

  2. Upewnić się, że żadne pakiety w IgnorePkg lub IgnoreGroup nie posiadają plików w /bin, /sbin lub /usr/sbin.
  3. Jeżeli posiadamy pliki w /bin, /sbin lub /usr/sbin, które nie są wymagane przez inne pakiety, należy je przenieść. Poniższe polecenie pomoże nam je znaleźć:

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

  4. Należy się upewnić, że wszystkie partycje są zamontowane przy użyciu autofs. Przy późniejszej aktualizacji mogą nie zostać automatycznie zamontowane.
  5. Teraz możemy zaktualizować nasz system.

Przed wykonaniem tej aktualizacji, może przydać nam się drugi terminal z uprawnieniami administratora. Ma to pomóc w przypadku awarii, szczególnie jeżeli czynności wykonujemy przez ssh.

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