dpkg-divert na przykładzie libglx.so Nvidii
Kategoria: FAQ, etykiety: system, apt
Dodany: 2011-06-17 12:57
(zmodyfikowany: 2011-06-17 13:08)
Przez: ArnVaker
Wyświetleń: 8390
Co zrobić aby pakiety pochodzące z repozytorium Debiana nie nadpisywały plików, których z jakichś powodów nie chcemy aby nadpisywały? Użyć dpkg-divert. Za przykład posłużą sterowniki Nvidii instalowane za pomocą skryptu producenta.
Zarówno pakiet xserver-xorg-core z repozytorium Debiana, jak i skrypt Nvidii, instalują w systemie plik /usr/lib/xorg/modules/extensions/libglx.so. Podczas instalacji sterowników lub pakietu xserver-xorg-core plik ten jest nadpisywany, dlatego po aktualizacji Xorga konieczna jest reinstalacja sterowników Nvidii, aby ponownie korzystać z ich pełnych możliwości.
Dzięki dpkg-divert można przekazać systemowi żeby zostawił ten plik w spokoju:
dpkg-divert --add /usr/lib/xorg/modules/extensions/libglx.so
Sprawdzenie czy wszystko poszło tak jak powinno:
# dpkg-divert --list |grep libglx.so
local diversion of /usr/lib/xorg/modules/extensions/libglx.so to /usr/lib/xorg/modules/extensions/libglx.so.distrib
Można teraz zainstalować sterowniki Nvidii i nie martwić się już o nadpisywanie tego pliku podczas aktualizacji systemu, plik pochodzący z pakietu zainstalowany zostanie jako /usr/lib/xorg/modules/extensions/libglx.so.distrib.
Naturalnie można w podobny sposób stosować dpkg-divert również w odniesieniu do innych plików, a także korzystać z bardziej zaawansowanych możliwości programu — opisanych w podręczniku użytkownika.