Diferențe

Aici sunt prezentate diferențele dintre versiunile selectate și versiunea curentă a paginii.

Link către această vizualizare comparativă

Ambele părți revizuirea anterioarăVersiuni anterioare
Urmatoarea versiune
Versiuni anterioare
conflict_mesa_dpkg [2026/02/24 14:47] – șters - editare externă (Unknown date) 127.0.0.1conflict_mesa_dpkg [2026/03/20 14:31] (curent) thinkroot
Linia 1: Linia 1:
 +====== Rezolvarea conflictelor de fișiere între pachete Mesa (dpkg) ======
  
 +Acest articol descrie cum se rezolvă eroarea de conflict de fișiere apărută la actualizarea driverelor Mesa prin PPA-ul **kisak-mesa** pe Ubuntu/Linux Mint.
 +
 +----
 +
 +===== Descrierea problemei =====
 +
 +La rularea ''sudo apt install -f'' sau ''sudo apt upgrade'', dpkg poate refuza instalarea cu o eroare de forma:
 +
 +<code>
 +dpkg: eroare la procesarea arhivei /var/cache/apt/archives/mesa-libgallium_26.0.0~kisak2~n_i386.deb (--unpack):
 + se încearcă suprascrierea lui „/usr/lib/i386-linux-gnu/dri/nouveau_drv_video.so",
 + care este și în pachetul mesa-va-drivers:i386 25.3.5~kisak1~n
 +E: Sub-process /usr/bin/dpkg returned an error code (1)
 +</code>
 +
 +===== Cauza =====
 +
 +La trecerea de la Mesa 25.x la 26.x, fișierele au fost **reorganizate între pachete**. Concret, fișierul ''nouveau_drv_video.so'' a fost mutat din pachetul ''mesa-va-drivers'' în ''mesa-libgallium''. DPKG nu permite suprascrierea unui fișier care aparține unui pachet instalat, fără ca acel pachet să fie eliminat în prealabil.
 +
 +===== Soluție =====
 +
 +==== Pasul 1: Încearcă repararea automată ====
 +
 +<code bash>
 +sudo apt install -f
 +</code>
 +
 +Dacă APT poate rezolva singur conflictul (de exemplu dacă programează eliminarea ''mesa-va-drivers:i386'' înainte de instalare), problema se rezolvă aici. Dacă eroarea persistă, continuă cu pașii următori.
 +
 +==== Pasul 2: Elimină forțat pachetele conflictuale ====
 +
 +Pachetul ''va-driver-all:i386'' depinde de ''mesa-va-drivers:i386'', deci ambele trebuie eliminate împreună:
 +
 +<code bash>
 +sudo dpkg --remove --force-all mesa-va-drivers:i386 va-driver-all:i386
 +</code>
 +
 +> **Atenție:** Opțiunea ''%%--force-all%%'' ignoră dependențele. Este sigură în acest context deoarece APT va reinstala pachetele necesare în pasul următor.
 +
 +==== Pasul 3: Lasă APT să reinstaleze corect ====
 +
 +<code bash>
 +sudo apt install -f
 +</code>
 +
 +APT va instala acum Mesa 26.x fără conflicte, iar ''va-driver-all'' va fi reinstalat automat dacă este necesar.
 +
 +==== Pasul 4: Curăță pachetele orfane ====
 +
 +<code bash>
 +sudo apt autoremove
 +</code>
 +
 +===== Întrebare frecventă =====
 +
 +==== De ce nu funcționează --force-remove-reinstreq singur? ====
 +
 +<code bash>
 +sudo dpkg --remove --force-remove-reinstreq mesa-va-drivers:i386
 +# Eroare: va-driver-all:i386 depinde de mesa-va-drivers.
 +</code>
 +
 +Opțiunea ''%%--force-remove-reinstreq%%'' ignoră doar **starea internă de reinstalare necesară** (flag-ul ''reinst-required'' din baza de date dpkg), dar **nu ignoră dependențele altor pachete instalate**. De aceea este nevoie fie de ''%%--force-all%%'', fie de eliminarea prealabilă a pachetului dependent.
 +
 +===== Verificare finală =====
 +
 +<code bash>
 +sudo apt update && sudo apt upgrade
 +</code>
 +
 +Nu ar trebui să mai existe pachete incomplete (''9 instalat(e) sau eliminat(e) incomplet'') sau erori de conflict.
 +
 +----
 +
 +===== Vezi și =====
 +
 +  * [[:chei_gpg_lipsa|Cheie GPG lipsă pentru repo-uri externe]]
 +  * [[https://launchpad.net/~kisak/+archive/ubuntu/kisak-mesa|PPA kisak-mesa pe Launchpad]]
 +  * [[https://manpages.ubuntu.com/manpages/resolute/en/man1/dpkg.1.html|Pagina de manual dpkg]]
 +
 +{{tag>mesa apt dpkg linux-mint ubuntu}}