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
stergere_kernel [2026/03/13 07:36] – [Referințe] thinkrootstergere_kernel [2026/03/20 12:30] (curent) thinkroot
Linia 16: Linia 16:
  
 Debian folosește ''apt'' ca manager de pachete. Kernel-urile sunt livrate ca pachete cu numele ''linux-image-X.Y.Z-amd64'' (sau arhitectura corespunzătoare). Debian folosește ''apt'' ca manager de pachete. Kernel-urile sunt livrate ca pachete cu numele ''linux-image-X.Y.Z-amd64'' (sau arhitectura corespunzătoare).
 +
 +=== Ștergere rapidă ===
 +
 +Șterge toate kernel-urile vechi, păstrând versiunea activă și una de fallback:
 +
 +<code bash>
 +sudo apt autoremove --purge
 +sudo update-grub
 +</code>
  
 === Verificare kernel activ și versiuni instalate === === Verificare kernel activ și versiuni instalate ===
Linia 37: Linia 46:
 sudo apt autoremove --purge sudo apt autoremove --purge
 sudo update-grub sudo update-grub
-</code> 
- 
-=== Ștergere automată cu ''autoremove'' === 
- 
-''apt'' poate curăța singur versiunile vechi, păstrând kernel-ul activ și penultima versiune ca fallback: 
- 
-<code bash> 
-sudo apt autoremove --purge 
 </code> </code>
  
Linia 57: Linia 58:
  
 Ubuntu folosește ''apt'' ca manager de pachete, iar kernel-urile sunt livrate ca pachete cu nume de forma ''linux-image-X.Y.Z-generic''. Ubuntu folosește ''apt'' ca manager de pachete, iar kernel-urile sunt livrate ca pachete cu nume de forma ''linux-image-X.Y.Z-generic''.
 +
 +=== Ștergere rapidă ===
 +
 +Șterge toate kernel-urile vechi, păstrând versiunea activă și una de fallback:
 +
 +<code bash>
 +sudo apt autoremove --purge
 +sudo update-grub
 +</code>
  
 === Verificare kernel activ și versiuni instalate === === Verificare kernel activ și versiuni instalate ===
Linia 78: Linia 88:
 sudo apt autoremove --purge sudo apt autoremove --purge
 sudo update-grub sudo update-grub
-</code> 
- 
-=== Ștergere automată cu ''autoremove'' === 
- 
-Comanda următoare șterge toate kernel-urile vechi, păstrând versiunea activă și penultima ca fallback: 
- 
-<code bash> 
-sudo apt autoremove --purge 
 </code> </code>
  
 <WRAP tip> <WRAP tip>
-Pachetul ''linux-generic'' asigură că sistemul instalează automat cele mai recente kernel-uri din seria curentă. Dacă îl ai instalat, ''autoremove'' este suficient pentru întreținere curentă. Distribuțiile derivate din Ubuntu (Linux Mint, Zorin OS, Pop!_OS, elementaryOS etc.) urmează același procedeu.+Pachetul ''linux-generic'' asigură că sistemul instalează automat cele mai recente kernel-uri. Dacă îl ai instalat, ''autoremove'' este suficient pentru întreținere curentă. Distribuțiile derivate din Ubuntu (Linux Mint, Zorin OS, Pop!_OS, elementaryOS etc.) urmează același procedeu.
 </WRAP> </WRAP>
  
Linia 98: Linia 100:
  
 Pe Arch Linux, kernel-urile sunt pachete obișnuite ''pacman''. Spre deosebire de alte distribuții, **Arch nu acumulează automat versiuni vechi** - la fiecare ''pacman -Syu'', kernel-ul este înlocuit, nu adăugat. Versiunile vechi apar doar dacă ai instalat explicit mai multe variante de kernel simultan. Pe Arch Linux, kernel-urile sunt pachete obișnuite ''pacman''. Spre deosebire de alte distribuții, **Arch nu acumulează automat versiuni vechi** - la fiecare ''pacman -Syu'', kernel-ul este înlocuit, nu adăugat. Versiunile vechi apar doar dacă ai instalat explicit mai multe variante de kernel simultan.
 +
 +=== Ștergere rapidă ===
 +
 +Arch nu acumulează versiuni vechi în mod normal. Dacă ai instalat mai multe variante, șterge varianta de care nu mai ai nevoie:
 +
 +<code bash>
 +sudo pacman -Rs linux-lts linux-lts-headers
 +</code>
 +
 +Pentru curățarea cache-ului de pachete (inclusiv imaginile vechi de kernel stocate local):
 +
 +<code bash>
 +sudo paccache -rk1
 +</code>
  
 === Kernel-uri disponibile === === Kernel-uri disponibile ===
Linia 119: Linia 135:
 </code> </code>
  
-=== Ștergerea unui kernel secundar === +=== Actualizare GRUB după ștergere ===
- +
-Dacă ai instalat mai multe variante și vrei să elimini una: +
- +
-<code bash> +
-sudo pacman -Rs linux-lts linux-lts-headers +
-</code> +
- +
-Flag-ul ''-Rs'' șterge pachetul **și** dependențele orfane. Nu uita să incluzi și pachetul ''headers'' asociat, dacă l-ai instalat. +
- +
-=== Actualizare GRUB ===+
  
 <code bash> <code bash>
Linia 143: Linia 149:
 === Curățarea cache-ului pacman === === Curățarea cache-ului pacman ===
  
-''pacman'' stochează versiunile vechi ale pachetelor în ''/var/cache/pacman/pkg/''Le poți curăța cu ''paccache'' din pachetul ''pacman-contrib'':+''pacman'' stochează versiunile vechi ale pachetelor în ''/var/cache/pacman/pkg/''. ''paccache'' se găsește în pachetul ''pacman-contrib'':
  
 <code bash> <code bash>
Linia 150: Linia 156:
 </code> </code>
  
-Comanda păstrează ultimele **2** versiuni din cache pentru fiecare pachet și le șterge pe restul.+Comanda păstrează ultimele **2** versiuni din cache pentru fiecare pachet. Folosește ''-rk1'' pentru a păstra doar ultima versiune.
  
 <WRAP important> <WRAP important>
Linia 162: Linia 168:
  
 Fedora folosește ''dnf'' ca manager de pachete. Kernel-urile sunt pachete cu numele ''kernel'', ''kernel-core'' și ''kernel-modules''. Distribuțiile derivate (RHEL, AlmaLinux, Rocky Linux, CentOS Stream) urmează același procedeu. Fedora folosește ''dnf'' ca manager de pachete. Kernel-urile sunt pachete cu numele ''kernel'', ''kernel-core'' și ''kernel-modules''. Distribuțiile derivate (RHEL, AlmaLinux, Rocky Linux, CentOS Stream) urmează același procedeu.
 +
 +=== Ștergere rapidă ===
 +
 +Metoda 1 - cu ''package-cleanup'' din pachetul ''dnf-utils'' (păstrează ultimele 2 versiuni):
 +
 +<code bash>
 +sudo dnf install dnf-utils
 +sudo package-cleanup --oldkernels --count=2
 +</code>
 +
 +Metoda 2 - nativă cu ''dnf repoquery'':
 +
 +<code bash>
 +sudo dnf remove $(sudo dnf repoquery --installonly --latest-limit=-1 -q)
 +</code>
  
 === Verificare kernel activ și versiuni instalate === === Verificare kernel activ și versiuni instalate ===
Linia 175: Linia 196:
 === Configurarea numărului de kernel-uri păstrate === === Configurarea numărului de kernel-uri păstrate ===
  
-''dnf'' are o opțiune nativă în ''/etc/dnf/dnf.conf'' care controlează câte versiuni sunt reținute. Valoarea implicită este **3**:+''dnf'' are o opțiune nativă în ''/etc/dnf/dnf.conf'' care controlează câte versiuni sunt reținute automat la fiecare upgrade. Valoarea implicită este **3**:
  
 <code> <code>
Linia 181: Linia 202:
 </code> </code>
  
-Cu valoarea ''2'', la fiecare actualizare ''dnf'' va păstra automat doar kernel-ul curent și unul de fallback. Valoarea minimă recomandată este **2**.+Cu valoarea ''2'', la fiecare actualizare ''dnf'' va păstra automat doar kernel-ul curent și unul de fallback. Valoarea minimă admisă este **2**.
  
 === Ștergere manuală === === Ștergere manuală ===
Linia 190: Linia 211:
  
 Înlocuiește ''X.Y.Z'' cu versiunea exactă afișată de ''dnf list installed kernel''. Înlocuiește ''X.Y.Z'' cu versiunea exactă afișată de ''dnf list installed kernel''.
- 
-=== Ștergere automată a versiunilor în surplus === 
- 
-Listează kernel-urile care depășesc limita setată: 
- 
-<code bash> 
-sudo dnf repoquery --installonly --latest-limit=-1 -q 
-</code> 
- 
-Pentru a le șterge efectiv: 
- 
-<code bash> 
-sudo dnf remove $(sudo dnf repoquery --installonly --latest-limit=-1 -q) 
-</code> 
  
 === Actualizare GRUB === === Actualizare GRUB ===
Linia 229: Linia 236:
  
 openSUSE (Leap și Tumbleweed) folosește ''zypper'' și ''rpm''. Spre deosebire de alte distribuții, openSUSE are un mecanism dedicat de gestionare a versiunilor multiple de kernel, configurat direct în ''/etc/zypp/zypp.conf''. openSUSE (Leap și Tumbleweed) folosește ''zypper'' și ''rpm''. Spre deosebire de alte distribuții, openSUSE are un mecanism dedicat de gestionare a versiunilor multiple de kernel, configurat direct în ''/etc/zypp/zypp.conf''.
 +
 +=== Ștergere rapidă ===
 +
 +Aplică politica definită în ''zypp.conf'' și șterge automat versiunile în surplus:
 +
 +<code bash>
 +sudo zypper purge-kernels
 +</code>
  
 === Verificare kernel activ și versiuni instalate === === Verificare kernel activ și versiuni instalate ===
Linia 260: Linia 275:
 </code> </code>
  
-=== Ștergere automată cu ''purge-kernels'' ===+=== Ștergere manuală ===
  
-openSUSE include un instrument dedicat care aplică politica din ''zypp.conf'' și șterge versiunile în surplus: +Dacă preferi să ștergi o versiune specifică:
- +
-<code bash> +
-sudo zypper purge-kernels +
-</code> +
- +
-=== Ștergere manuală ===+
  
 <code bash> <code bash>
 sudo zypper remove kernel-default-X.Y.Z sudo zypper remove kernel-default-X.Y.Z
 </code> </code>
- 
-Versiunea exactă o obții din output-ul comenzii ''rpm -q kernel-default''. 
  
 === Actualizare GRUB === === Actualizare GRUB ===
  
-Pe openSUSE, bootloader-ul este actualizat automat la ștergerea unui kernel prin ''purge-kernels''. Dacă vrei să forțezi regenerarea:+Bootloader-ul este actualizat automat la ''purge-kernels''. Dacă vrei să forțezi regenerarea manual:
  
 <code bash> <code bash>
Linia 293: Linia 300:
 ==== Gentoo ==== ==== Gentoo ====
  
-Pe Gentoo, kernel-ul este compilat local din surse. Nu există un mecanism automat de ștergere - kernel-urile vechi rămân pe disc până când le elimini manual. Sursa kernel-ului se află în ''/usr/src/'', iar imaginile compilate în ''/boot/''.+Pe Gentoo, kernel-ul este compilat local din surse. Nu există un mecanism automat de ștergere - kernel-urile vechi rămân pe disc până când le elimini manual sau folosești instrumentul dedicat ''eclean-kernel''.
  
-=== Verificare kernel activ și versiuni instalate ===+=== Ștergere rapidă === 
 + 
 +Instalează și folosește ''eclean-kernel'' din pachetul ''app-admin/eclean-kernel'' - șterge automat kernel-urile vechi, inclusiv sursele, imaginile din ''/boot'' și modulele:
  
 <code bash> <code bash>
-uname -r+sudo emerge app-admin/eclean-kernel 
 +sudo eclean-kernel -n 1
 </code> </code>
  
-Listează sursele de kernel instalate:+Flag-ul ''-n 1'' păstrează doar cel mai nou kernel și șterge tot restul. Folosește ''-n 2'' pentru a păstra și un fallback. Rulează cu ''-p'' (pretend) mai întâi pentru a vedea ce urmează să fie șters:
  
 <code bash> <code bash>
-ls /usr/src/+sudo eclean-kernel -n 2 -p
 </code> </code>
  
-Listează imaginile din ''/boot'':+=== Ștergere manuală ===
  
-<code bash> +Dacă preferi să nu folosești ''eclean-kernel'', procesul manual implică mai mulți pași.
-ls /boot/vmlinuz-* /boot/initramfs-* +
-</code>+
  
-Verifică ce versiuni sunt instalate ca pachete:+Verifică kernel-ul activ și versiunile instalate:
  
 <code bash> <code bash>
-emerge --list-sets | grep kernel+uname -r
 equery list 'sys-kernel/*' equery list 'sys-kernel/*'
 +ls /boot/vmlinuz-* /boot/initramfs-*
 </code> </code>
  
-=== Ștergerea surselor vechi cu ''emerge'' === +Dezinstalează sursele kernel-ului vechi:
- +
-Dezinstalează sursele kernel-ului vechi (înlocuiește cu versiunea exactă):+
  
 <code bash> <code bash>
Linia 328: Linia 335:
 </code> </code>
  
-sau, pentru varianta ''vanilla-sources'': +Șterge fișierele rămase din ''/boot'':
- +
-<code bash> +
-sudo emerge --unmerge sys-kernel/vanilla-sources:X.Y.Z +
-</code> +
- +
-=== Curățarea fișierelor din ''/boot'' === +
- +
-Ștergerea pachetului nu elimină automat imaginile din ''/boot''. Șterge-le manual:+
  
 <code bash> <code bash>
Linia 345: Linia 344:
 </code> </code>
  
-=== Curățarea surselor din ''/usr/src'' ===+Șterge sursele și modulele:
  
 <code bash> <code bash>
 sudo rm -rf /usr/src/linux-X.Y.Z-gentoo sudo rm -rf /usr/src/linux-X.Y.Z-gentoo
-</code> 
- 
-=== Curățarea modulelor === 
- 
-<code bash> 
 sudo rm -rf /lib/modules/X.Y.Z-gentoo sudo rm -rf /lib/modules/X.Y.Z-gentoo
 </code> </code>
Linia 361: Linia 355:
 <code bash> <code bash>
 sudo grub-mkconfig -o /boot/grub/grub.cfg sudo grub-mkconfig -o /boot/grub/grub.cfg
-</code> 
- 
-Dacă folosești ''grub2'': 
- 
-<code bash> 
-sudo grub2-mkconfig -o /boot/grub/grub.cfg 
 </code> </code>
  
Linia 386: Linia 374:
 ==== Alpine Linux ==== ==== Alpine Linux ====
  
-Alpine Linux folosește ''apk'' ca manager de pachete și ''mkinitfs'' pentru generarea initramfs. Kernel-urile sunt livrate ca pachete ''linux-lts'', ''linux-virt'' (pentru mașini virtuale) sau ''linux-edge''Alpine este folosit frecvent în containere Docker și pe sisteme embedded.+Alpine Linux folosește ''apk'' ca manager de pachete. Kernel-urile sunt livrate ca pachete ''linux-lts'', ''linux-stable'' (înlocuiește ''linux-edge'' începând cu Alpine 3.23) sau ''linux-virt'' (pentru mașini virtuale).
  
-=== Verificare kernel activ și versiuni instalate ===+=== Ștergere rapidă ===
  
-<code bash> +Alpine nu acumulează versiuni vechi în mod normal ''apk upgrade'' înlocuiește kernel-ul în loc să adauge unul nou. Dacă ai instalat mai multe variante, elimină varianta nedorită:
-uname -+
-</code>+
  
 <code bash> <code bash>
-apk info | grep linux+sudo apk del linux-stable
 </code> </code>
  
-=== Gestionarea versiunilor === +Curăță fișierele reziduale din ''/boot'' dacă au mas după un upgrade:
- +
-Pe Alpine, în mod normal rulezi o singură variantă de kernel. Versiunile vechi nu se acumulează automat - la ''apk upgrade'', kernel-ul este înlocuit în loc să fie adăugat. Imaginile vechi din ''/boot'' pot mâne însă pe disc după un upgrade+
- +
-=== Curățarea imaginilor vechi din ''/boot'' === +
- +
-<code bash> +
-ls /boot/vmlinuz-* /boot/initramfs-* +
-</code> +
- +
-Compară cu versiunea activă și șterge ce nu mai corespunde:+
  
 <code bash> <code bash>
Linia 416: Linia 392:
 </code> </code>
  
-=== Ștergerea unui kernel secundar ===+=== Verificare versiuni instalate ===
  
-Dacă ai instalat mai multe variante (ex. ''linux-lts'' și ''linux-edge''):+<code bash> 
 +uname -
 +</code>
  
 <code bash> <code bash>
-sudo apk del linux-edge+apk info | grep linux
 </code> </code>
  
 === Actualizare bootloader === === Actualizare bootloader ===
  
-Alpine folosește de obicei ''extlinux'' (syslinux) sau GRUB. Pentru ''extlinux'':+Alpine folosește ''extlinux'' (BIOS) sau GRUB (UEFI) în funcție de modul de instalare. 
 + 
 +Pentru ''extlinux'':
  
 <code bash> <code bash>
Linia 448: Linia 428:
  
 NixOS are o abordare fundamental diferită față de toate celelalte distribuții. Kernel-ul face parte din **configurația declarativă** a sistemului, definită în ''/etc/nixos/configuration.nix''. Fiecare actualizare creează o nouă **generație** - un snapshot complet al sistemului - iar generațiile vechi, inclusiv kernel-urile lor, sunt păstrate automat până la o colectare de gunoi (garbage collection). NixOS are o abordare fundamental diferită față de toate celelalte distribuții. Kernel-ul face parte din **configurația declarativă** a sistemului, definită în ''/etc/nixos/configuration.nix''. Fiecare actualizare creează o nouă **generație** - un snapshot complet al sistemului - iar generațiile vechi, inclusiv kernel-urile lor, sunt păstrate automat până la o colectare de gunoi (garbage collection).
 +
 +=== Ștergere rapidă ===
 +
 +Șterge toate generațiile vechi (păstrează doar cea curentă):
 +
 +<code bash>
 +sudo nix-collect-garbage -d
 +</code>
 +
 +<WRAP important>
 +''nix-collect-garbage -d'' șterge **toate** generațiile vechi fără posibilitate de recuperare. Dacă ai o actualizare recentă care nu funcționează corect, nu rula această comandă - mai întâi revino la o generație stabilă din meniul GRUB, apoi rulează garbage collection.
 +</WRAP>
  
 === Verificare kernel activ și generații instalate === === Verificare kernel activ și generații instalate ===
Linia 454: Linia 446:
 uname -r uname -r
 </code> </code>
- 
-Listează toate generațiile disponibile: 
  
 <code bash> <code bash>
Linia 477: Linia 467:
 </code> </code>
  
-=== Ștergerea generațiilor vechi ===+=== Ștergere selectivă a generațiilor ===
  
-Șterge toate generațiile mai vechi de 30 de zile:+Șterge generațiile mai vechi de 30 de zile:
  
 <code bash> <code bash>
Linia 485: Linia 475:
 </code> </code>
  
-Șterge toate generațiile vechi (păstrează doar cea curentă): +Șterge generații specifice după număr:
- +
-<code bash> +
-sudo nix-collect-garbage -d +
-</code> +
- +
-<WRAP important> +
-''nix-collect-garbage -d'' șterge **toate** generațiile vechi fără posibilitate de recuperare. Dacă ai o actualizare recentă care nu funcționează corect, nu rula această comandă - mai întâi revino la o generație stabilă din meniul GRUB, apoi rulează garbage collection. +
-</WRAP> +
- +
-=== Ștergerea generațiilor specifice ===+
  
 <code bash> <code bash>
 sudo nix-env --delete-generations 5 6 7 --profile /nix/var/nix/profiles/system sudo nix-env --delete-generations 5 6 7 --profile /nix/var/nix/profiles/system
 sudo nix-collect-garbage sudo nix-collect-garbage
-</code> 
- 
-=== Actualizare GRUB === 
- 
-Pe NixOS, GRUB este regenerat automat la ''nixos-rebuild switch''. Dacă vrei să forțezi: 
- 
-<code bash> 
-sudo nixos-rebuild boot 
 </code> </code>
  
Linia 518: Linia 490:
  
 <WRAP tip> <WRAP tip>
-Pe NixOS, menținerea mai multor generații este o **funcție de siguranță**, nu o problemă. Spre deosebire de alte distribuții, rollback-ul la o versiune anterioară a întregului sistem (inclusiv kernel) se face dintr-o singură comandă sau direct din GRUB. Colectează gunoiul periodic, nu înainte de fiecare update.+Pe NixOS, menținerea mai multor generații este o **funcție de siguranță**, nu o problemă. Rollback-ul la o versiune anterioară a întregului sistem (inclusiv kernel) se face dintr-o singură comandă sau direct din GRUB. Rulează ''nix-collect-garbage'' periodic, nu înainte de fiecare update.
 </WRAP> </WRAP>
  
Linia 539: Linia 511:
   * [[https://wiki.archlinux.org/title/Kernel|Arch Wiki - Kernel]]   * [[https://wiki.archlinux.org/title/Kernel|Arch Wiki - Kernel]]
   * [[https://wiki.gentoo.org/wiki/Kernel/Removal|Gentoo Wiki - Kernel Removal]]   * [[https://wiki.gentoo.org/wiki/Kernel/Removal|Gentoo Wiki - Kernel Removal]]
-  * [[https://wiki.alpinelinux.org/wiki/Kernels|Alpine Wiki - Linux Kernel]] +  * [[https://wiki.alpinelinux.org/wiki/Kernels|Alpine Wiki - Kernels]] 
-  * [[https://wiki.nixos.org/wiki/Linux_kernel|NixOS Manual - Kernel Configuration]]+  * [[https://wiki.nixos.org/wiki/Linux_kernel|NixOS Wiki Linux Kernel]]
  
 {{tag>kernel linux debian ubuntu arch fedora opensuse gentoo alpine nixos administrare-sistem boot grub apt dnf apk nix}} {{tag>kernel linux debian ubuntu arch fedora opensuse gentoo alpine nixos administrare-sistem boot grub apt dnf apk nix}}