Puste pakiety w cache Pacmana i wymuszanie aktualizacji pakietów w Archu?

Przy okazji innego problemu, pojawił mi się dziwna sytuacja, gdzie w cache Pacmana ( /var/cache/pacman/pkg/ ) większość plików z ostatnich dni jest pusta (ma długość 0), np.

ls -lrt
...
-rw-r--r-- 1 root root         0 09-19 22:34 firefox-92.0-2.0-pentium4.pkg.tar.zst.sig
-rw-r--r-- 1 root root         0 09-19 22:34 firefox-92.0-2.0-pentium4.pkg.tar.zst

Aktualizacje tu robione były za pomocą sudo pacman -Syu.

Zastanawiam się teraz:

  • dlaczego są one zerowe? (czy tak ma być i oznacza to, że np. aktualizacja się nie zakończyła poprawnie?)
  • czy należy ręcznie usunąć te puste pliki z cache, przed ponowną aktualizacją systemu czy tych pojedynczych pakietów?

Edit:
Częściowo odpowiedziałem sobie na zadane pytania.
Próbowałem reinstalować poszczególny pakiety, ale z ich pustymi plikami w cache nie było to możliwe, więc usunąłem ręcznie puste pliki z cache.

Potem zaktualizowałem system komendą pacman -Syyuu, co zaktualizowało kilka z wcześniej pustych pakietów.

Jednak nie wszystkie.
Aktualizacja pakietu xz oraz firefox, komendą pacman -S xz wprawdzie pobrała aktualny pakiet do cache, ale pojawiły się błędy:

: Pobieranie pakietów…
 xz-5.2.5-2.0-pen...   312,4 KiB   559 KiB/s 00:01 [######################] 100%
(1/1) sprawdzanie kluczy w bazie                   [######################] 100%
(1/1) sprawdzanie spójności pakietów               [######################] 100%
(1/1) wczytywanie listy plików                     [######################] 100%
(1/1) sprawdzanie konfliktów plików                [######################] 100%
błąd:  nie udało się dokonać transakcji (konfliktujące pliki)
xz: /usr/bin/lzcat znajduje się w systemie plików
xz: /usr/bin/lzcmp znajduje się w systemie plików
xz: /usr/bin/lzdiff znajduje się w systemie plików
itd..

Podobnie było z firefox.

Jak teraz wymusić aktualizację pojedynczego pakietu? (kiedyś była opcja pacman -S --force NazwaPakietu , ale dziś już jej nie ma)

Edit2:
Komenda podana w Wiki Arch do wymuszania aktualizacji :
sudo pacman -S --overwrite glob xz
też nie działa. Są te same komunikaty błędów.

Edit3:
Wyjątkowo toporny był pakiet firefox, który nie działał, ale nie można go było usunąć, nie można było zaktualizować ani zdegradować, a komenda pacman -Q firefox mówiła, że nie ma takiego pakietu!
Ale w końcu znalazłem działające rozwiązania do wymuszenia aktualizacji pakietu:
sudo pacman -S --overwrite /\* NazwaPakietu

@majo jak cię denerwują tak te puste pliki to zrób:

pacman -Scc

wyczyści ci wszystko i będziesz mógł poobserwować czy będzie się dalej tak działo…


acz osobiście dawno z pacman nie korzystałem tylko z pak odkąd powstał…

@LinGruby
Problem z tego wątku na szczęście był jednorazowy. Prawdopodobnie był on wynikiem awarii systemu w czasie jego aktualizacji.

Nie chodziło tu o “denerwujące” puste pakiety, ale o to, że z tymi pustymi pakietami w cache nie było możliwości aktualizacji tych pakietów.

Jeśli chodzi o komendę pacman -Scc , to czyszczenie całości cache jest zbyt drastyczne i nie polecam (bo czasami jest potrzeba powrotu do starszej wersji pakietu).