Puncte:2

`apt-mark showmanual` arată aproape toate pachetele. incurcat?

drapel in

manualul de prezentare apt-mark listează o mulțime de pachete pentru mine:

root@hcompneu:~# apt-mark showmanual | wc -l
4013
root@hcompneu:~# apt-mark showmanual | cap
a11y-profile-manager-indicator
abiword
abiword-comun
abiword-plugin-gramatică
cont-plugin-facebook
cont-plugin-flickr
cont-plugin-google
account-plugin-identica
cont-plugin-twitter
servicii de conturi
root@hcompneu:~# apt-mark showmanual | coadă
yelp-xsl
zeitgeist
zeitgeist-core
zeitgeist-datahub
zenitate
zenity-comun
fermoar
zlib1g
zlib1g-dev
zlib1g:i386

După cum am înțeles, ar trebui să listeze doar acele pachete pe care le-am instalat manual. Nu-mi mai amintesc în fiecare caz, dar sunt destul de sigur că nu le-am instalat pe toate manual. De fapt, rareori am instalat vreun software pe acest sistem, în ciuda Chrome, OpenOffice și a altor lucruri de bază. Așa că m-aș aștepta la o listă de poate 10-100 de pachete, dar nu mai mult. Poate că include și ubuntu-desktop, grub și linux sau cam asa ceva din instalarea de bază Ubuntu.

Poate că în trecut am scris niște scripturi pentru a remedia un sistem defect prin apelarea automată apt-get install XXX pe diverse pachete. Sau poate am făcut alte lucruri. chiar nu-mi mai amintesc.

Ar putea fi cazul aici? Deci am încurcat-o cumva? Dacă acesta este cazul, ce ați sugera? Marcați toate ca instalate automat și apoi adăugați manual câteva pachete selectate, cum ar fi ubuntu-desktop?

Sau o astfel de ieșire este corectă și o înțeleg greșit? Citesc acest si nu sunt sigur. Se pare că este mult mai complicat să obții lista pachetelor instalate manual? Sau de ce este răspunsul atât de complicat?

Sau este manualul de prezentare apt-mark buggy?


root@hcompneu:~# ls -ld /var/log/installer/
drwxr-xr-x 2 root root 4096 27 decembrie 11:27 /var/log/installer/
root@hcompneu:~# grep -r cdrom /etc/apt/ --include=*.list
root@hcompneu:~# dpkg -l | grep ^ii | wc -l
3812
nobody avatar
drapel gh
Este vreo șansă să utilizați acest applet de actualizare (nu știu niciodată numele) pentru a vă actualiza sistemul?
N0rbert avatar
drapel zw
Câți ani are sistemul tău? Vă rugăm să afișați rezultatul din `ls -ld /var/log/installer/` și `grep -r cdrom /etc/apt/ --include=*.list` și `dpkg -l | grep ^ii | wc -l`. Pe sistemul meu de 7 ani am 3953 de pachete instalate manual din 5680 în total; pe sistemul meu de 11 ani am 3947 de pachete instalate manual din 6395 în total. Unele dintre ele au fost instalate de mine, altele - ca dependențe. Deci nu există niciun motiv să-ți fie frică.
drapel in
@N0rbert Dar cele instalate ca dependențe nu ar trebui să fie în acea listă. Numai cele pe care le-ați instalat direct prin `apt-get install XXX`, nu și dependențele. Sau, de fapt, aceasta este întrebarea mea, dacă acesta este cazul. Cel puțin asta este înțelegerea mea.
N0rbert avatar
drapel zw
M-am înșelat în privința dependențelor, acestea nu sunt marcate ca instalate manual. Dar nu răspundeți la întrebări și nu furnizați rezultatul comenzii solicitat. Amândoi împărtășim o dragoste față de Gentoo, dar vă rugăm să furnizați informații suplimentare.
drapel in
@N0rbert Am adăugat ieșirile comenzilor. Nu prea știu cât de vechi are sistemul, dar cred că este vechi. Poate că a început cu Ubuntu 8 sau cam așa ceva și a trecut prin 10, 12, 14 și 16, în timp ce am actualizat recent la 18.Cu toate acestea, în ciuda Chrome, OpenOffice și a altor lucruri foarte de bază, nu am instalat niciodată nimic manual. Deci, cu siguranță, majoritatea lucrurilor din listă nu au fost instalate manual în mod explicit de mine. Deci, poate că răspunsul la întrebarea mea este pur și simplu *da, este încurcat*?
Puncte:4
drapel zw

TL;DR Nu, sistemul tău nu este deranjat. Mai mult, puteți lăsa toate lucrurile așa cum sunt, deci în starea actuală.

Să luăm în considerare trei sisteme:

Sistemul curent Medii de instalare Vârstă dpkg -l | grep ^ii | wc -l apt-mark showmanual | wc -l
Ubuntu 18.04.6 LTS cu desktop MATE (*) Ubuntu 12.04.4 LTS 7 ani 5680 3953
Ubuntu 18.04.6 LTS cu desktop MATE (*) Ubuntu 10.04 LTS 11 ani 6395 3947
Al tău Ubuntu 18.04 LTS (**) ~Ubuntu 8.04 LTS ~13 ani 3812 4013

Note:

  • (*) sistemele mele au fost instalate inițial de pe discuri de instalare desktop Ubuntu, astfel livrate cu GNOME și/sau Unity (nu o aromă). Apoi am instalat desktop-ul MATE folosind PPA-uri oficiale pentru 12.04 LTS, 14.04 LTS și meta-pachetele acestora; apoi, când a fost lansat 16.04 LTS, am reinstalat desktop-ul MATE ca pachet de sarcini folosind comenzi precum sudo apt-get install ubuntu-mate-desktop^. Această instalare a pachetului de sarcini face ca toate aceste pachete să fie marcate ca instalate manual și astfel le protejează de eliminare. Toate celelalte programe au fost instalate manual pe durata de viață a ambelor sisteme.
  • (**) Lucrul ciudat despre sistemul dvs. este că aveți un număr total de pachete instalate cu 3812 mai puțin decât pachetele instalate manual 4013. Trebuie să investigați acest lucru folosind Synaptic.

Am încercat să fac niște cercetări cu instalații noi de sisteme vechi și noi. Mai jos este tabelul despre instalările curate ale ISO-urilor desktop Ubuntu obișnuite.

Versiunea Ubuntu dpkg -l | grep ^ii | wc -l căutare de aptitudini '~i!~M' | wc -l manualul de prezentare apt-mark Synaptic: Stare â Instalat (manual)
6,06 LTS 1046 1046 N / A N / A
8,04 LTS 1102 1087 N / A N / A
10.04 LTS 1296 1286 N / A 1286
12.04 LTS 1392 1367 1367 1342
14.04 LTS 1722 1690 1690 1666
16.04 LTS 1745 220 220 195
18.04 LTS 1602 1557 1557 1529
20,04 LTS 1607 49 49 49
22,04 LTS (dezvoltare) 1700 44 44 31

Putem înțelege aici că funcționalitatea programului de instalare Ubiquity și APT în sine au modificări în timp.

Din tabelul de mai sus putem observa că sistemele vechi au un număr mare de pachete instalate manual din ziua 0 de instalare.
Versiunile mai noi Ubuntu au numere mai mici, acest lucru le ușurează întreținerea.Probabil că au mai multe meta-pachete instalate care împiedică eliminarea pachetului din cauza dependențelor.

Un alt experiment pe care l-am făcut: am actualizat instalarea Ubuntu proaspătă de la 8.04 LTS la 10.04 LTS â 12.04 LTS â 14.04 LTS â 18.04 LTS â 20.04 LTS și în sistemul rezultat am 20.6 LTS 31 manual. pachete instalate cu un total de 2913 pachete.

Starea de instalare „manuală” a pachetului împiedică eliminarea acestuia, așa că nu ar trebui să setați pachetul ca fiind instalat automat.


Resurse bune de citit:

  • Capitolul 2. Gestionarea pachetelor Debian de referință Debian.

  • om apt-mark local sau pe net, citatul de mai jos este esențial:

    apt-mark - afișați, setați și dezactivați diferite setări pentru un pachet
    [...]
    manualul de prezentare poate fi folosit în același mod ca showauto cu excepția faptului că va tipări în schimb o listă de pachete instalate manual.

drapel in
Mă întreb, chiar ai instalat manual toate acele pachete de aproape 4k? Sau poate este și încurcat în cazul tău? După cum s-a spus anterior, dependențele nu ar trebui să fie în această listă.
N0rbert avatar
drapel zw
Am făcut câteva experimente pe Ubuntu MATE 22.04 LTS zilnic VM - are următoarele numere `apt-mark showmanual | wc -l` returnează 30 (presupun că aceste pachete au fost instalate de Ubiquity pentru a suporta localurile necesare și așa mai departe), în timp ce numărul total de pachete este 1971. Instalarea fiecărui pachet următor mărește lista pachetelor instalate manual cu 1 (după cum era de așteptat) ). Pentru 18.04 LTS este nevoie de investigații suplimentare.
Someone avatar
drapel my
@Albert Da, este posibil să aveți mai mult de 4k pachete instalate manual.De exemplu: - Dacă N0rbert instalează desktop kde (sau orice desktop), vor instala și diverse aplicații cu acesta (aproximativ 100!) Și toate acele aplicații vor fi afișate și în lista instalate manual. Deci nu înseamnă că ai 4k pachete instalate manual înseamnă că ai rulat `apt install` de 4k ori! (Pachetele de aplicații sugerate și alte pachete suplimentare (fără a include dependențele) sunt, de asemenea, pachete instalate manual ;)
Someone avatar
drapel my
@N0rbert Cum ai instalat Ubuntu Mate 22.04? Este eliberat?
N0rbert avatar
drapel zw
@cineva Am instalat Ubuntu MATE 22.04 LTS în scopuri de testare de la http://cdimage.ubuntu.com/ubuntu-mate/daily-live/current/ folosind ISO zilnic.
drapel in
@cineva Nu, dacă faci `apt-get install kubuntu-desktop`, asta va instala o mulțime de pachete, dar un singur pachet va fi adăugat la lista manuală, și anume `kubuntu-desktop`. Toate celelalte vor fi marcate ca fiind automate, deoarece sunt doar dependențe.
Someone avatar
drapel my
@Albert Este Konsole o dependență pentru desktop-ul Kubuntu?
drapel in
@cineva: Nu prea știu. De ce este relevant? Consultați [aici](https://packages.ubuntu.com/focal/kubuntu-desktop) pentru dependențe directe, dar există mult mai multe dependențe indirecte. Este, de exemplu, o dependență a pachetului [`kde-full`](https://packages.ubuntu.com/focal/kde-full).
Someone avatar
drapel my
@N0rbert Te poți uita la https://askubuntu.com/a/1384019/1460940. Este adevarat? Vă rugăm să vedeți și comentariile. Am pierdut ceva? Nu sunt toate pachetele instalate în timpul instalării sistemului de operare marcate „non-auto” sau „manual” de către instalator, astfel încât să nu fie eliminate de `sudo apt autoremove`?
N0rbert avatar
drapel zw
În timpul instalării Ubuntu 18.04 LTS, multe pachete sunt marcate ca manuale. În versiunile mai noi, numai ciorchine sunt marcate ca manuale. Pentru mine se pare că au loc unele modificări în interiorul APT în ultimii 3 ani.
drapel in
Acum ai schimbat destul de mult răspunsul și ai inversat sensul. Acum, din descrierea ta, se pare că sistemul este deranjat, dar cumva ajungi la concluzia că nu este deranjat? De asemenea, arată ca instalarea proaspătă a Ubuntu
drapel in
Pentru a adăuga, tocmai am găsit [this](https://askubuntu.com/questions/12279/why-are-almost-all-packages-marked-as-manually-installed) și există într-adevăr un raport de eroare despre asta comportament, [bug/424643](https://bugs.launchpad.net/ubuntu/+source/livecd-rootfs/+bug/424643).
N0rbert avatar
drapel zw
Am efectuat o analiză cuprinzătoare pentru a înțelege de ce merge așa. Folosesc un astfel de sistem dezordonat de ani de zile. Nu există niciun motiv de îngrijorare.
drapel in
Ei bine, scopul acestei funcționalități este că `autoremove` funcționează, de asemenea, în cazul unor actualizări ulterioare în care unele pachete ar putea să nu mai aibă nevoie de alte dependențe.Deci, spuneți, nu ar trebui să-mi pese că `autoremove` nu va funcționa, cel puțin pentru acele pachete de la instalarea de bază? De asemenea, mă tem că ar putea rupe unele upgrade de distribuție mai târziu. Am avut deja câteva probleme din cauza pachetelor care au avut probleme la upgrade de care nu aveam deloc nevoie. De exemplu, a vrut să aibă `upstart` împreună cu `systemd`.
N0rbert avatar
drapel zw
Apoi, mai întâi trebuie să descrii exact „problemele la actualizare”. Upstart și Systemd pot rămâne în sistem dacă există pachete care depind de ele. Puteți rula `aptitude why upstart` pentru a înțelege de ce este instalat acest pachet. Momentan nu înțeleg problema exactă în sistemul dvs.
drapel in
De asemenea, Upstart rămâne în sistem atunci când este marcat greșit ca manual, ceea ce a fost cazul, care este exact problema pe care o descriu aici. Doar pentru că Ubuntu 8 sau orice a marcat **toate** pachetele ca fiind instalate manual nu îl face corect sau nu este încurcat.
Puncte:1
drapel cc

Ieșirea opțiunii showmaual include orice pachet care a primit actualizări, deci nu chiar ceea ce doriți. Comanda de mai jos am copiat-o dintr-un alt răspuns (nu-mi amintesc unde sau aș atribui-o) și compară rezultatul cu lista inițială de instalare, producând pachetele pe care le-ați instalat singur.Puneți-l într-un fișier în zona de gunoi pentru comoditate.

comm -23 <(apt-mark showmanual | sort -u) <(gzip -dc /var/log/installer/initial-status.gz | sed -n 's/^Package: //p' | sort -u)  

Prima dată când am rulat apt-mark showmanual, știam că lista era prea mare, deoarece erau incluse lucruri precum „gudron”, pe care știam că nu le-am atins niciodată manual. Cu toate acestea, „tar” a avut o actualizare aplicată, ceea ce a făcut ca acesta să fie scos. Deoarece „tar” a fost inclus în pachetele inițiale de sistem, este eliminat de script, lăsând doar lucruri care „au apărut” după instalarea inițială a sistemului.

drapel in
„Opțiunea showmaual include orice pachet care a primit vreodată actualizări” - nu prea înțeleg ce înseamnă asta. După cum am înțeles, ajunge în această listă exact dacă am făcut `apt install X`, ceea ce este exact ceea ce vreau.
Puncte:0
drapel es

Conform paginii de manual a apt-mark toate dep-urile de meta-pachete sunt marcate ca manual. Deci poți fugi

apt-mark minimize-manual

pentru a marca toate aceste pachete ca fiind automate. După care,

apt-mark show-manual

arată mai puține pachete.

Puncte:0
drapel me

Sistemul nu este „încurcat”, ci în principiu înțelegerea ta despre ce instalat manual mijloacele sunt incorecte. Un pachet nu este niciodată marcat manual sau nemanual. Poate fi marcat doar automat sau nu automat.

Un pachet este marcat automat atunci când este instalat automat pentru a satisface o dependență. Aceasta înseamnă că poate (și implică că ar trebui) să fie eliminat automat atunci când niciun alt pachet nu mai depinde de el.

Pe un sistem desktop normal, majoritatea pachetelor sunt instalate atunci când sistemul de operare este instalat pentru prima dată de către instalator. Aceste pachete trebuie instalate nu automat, altfel ar fi eliminate pentru că nimic nu depinde de ele.

Luați de exemplu „abiword” în partea de sus a listei dvs. Acesta este un procesor de text care este probabil destul de normal să fie instalat pe un sistem desktop. Presupun că ați folosit una dintre multele variante de programe de instalare desktop. Probabil că nu te-a întrebat în mod specific dacă vrei abiword. Probabil că nu ați instalat singur abiword pe nume. Ați ales în continuare să îl aveți alegând mediul de instalare pe care l-ați folosit.

Deoarece nu există niciun alt pachet pe sistemul dvs. care să depindă că aveți abiword instalat pentru a funcționa, acesta nu poate fi marcat automat, altfel ar fi eliminat. Aceasta înseamnă că nu este marcat automat. manualul de prezentare apt-mark listează pachetele care nu sunt marcate automat.

Rețineți, de asemenea, că mulți instalatori instalează totul care nu este automat, chiar dacă le-ar putea marca automat, deoarece ceva depinde de ei. Chiar și pachetele de bază importante de care depind sute de lucruri sunt marcate ca non-auto. În acest sens, poate că programul de instalare este „încurcat”, dar sistemul dumneavoastră nu are nimic special.

Cea mai bună încercare de a obține o listă cu lucrurile pe care s-ar putea să le fi instalat eu este:

aptitude search -F '%p' --disable-columns '~i !~M !~E !~prequired !~pimportant !~pstandard !~tminimal !~tstandard'

Pentru a exclude pachetele de care depind, utilizați:

aptitude search -F '%p' --disable-columns '~i !~M !~R~i !~E !~prequired !~pimportant !~pstandard !~tminimal !~tstandard'
drapel in
Nu înțeleg exact. Descrierea ta se potrivește cu înțelegerea mea. Da, `abiword` din acea listă este poate ceva ce l-am instalat manual. Cu toate acestea, cu siguranță nu `abiword-common`, `yelp-xsl` sau `zeitgeist` sau așa ceva. Toate acestea ar trebui să fie marcate ca fiind automate, deoarece probabil au fost instalate pentru a satisface o dependență.
Tom V avatar
drapel me
Ideea pe care o spun este că, dacă rulați apt-mark showmanual pe un sistem nou-nouț proaspăt instalat, acesta va lista multe sute de pachete, deoarece media de instalare a sistemului marchează totul ca non-auto, astfel încât să nu fie eliminat.
drapel in
Nu, nu este adevărat. La o instalare nouă, showmanual listează doar aproximativ 30 de pachete, nu mai multe. Nu sunt necesare mai multe. Ai nevoie doar de ubuntu-desktop, linux și alte câteva. Toate cele rămase sunt apoi dependențe.
Someone avatar
drapel my
@Albert Nu, nu este adevărat. Pe un nou VM Ubuntu 21.10, pot vedea aproape 150 de pachete. De asemenea, toate aplicațiile precum firefox și gedit sunt pe listă. Deci, aplicațiile preinstalate sunt instalate și manual. Sunt de acord cu TomV. +1
Tom V avatar
drapel me
150 nu este 4000 totuși, m-aș fi așteptat la mai mult. Poate depinde de versiunea de instalare. Întrebarea adevărată este: există pachete marcate automat pe acest sistem?
Someone avatar
drapel my
@TomV Nu... Bineînțeles că nu. Numărul de pachete depinde de instalarea minimă și completă (vorbeam despre instalare minimă). Dacă pachetele au fost marcate ca automat, atunci un simplu „apt autoremove” va șterge întregul sistem!
drapel in
Cu siguranță, la o instalare nouă, există multe pachete marcate ca automat. Mult mai mult decât cele marcate ca manual. Numărul 30 de pachete manuale este din comentariul N0rberts de mai sus pentru o mașină virtuală zilnică proaspătă Ubuntu MATE 22.04 LTS. Încă nu înțeleg exact discuția de aici. În postarea mea inițială, sunt destul de sigur că există pachete pe care nu le-am instalat niciodată manual și care nici nu sunt marcate ca manuale la nicio instalare nouă.
Tom V avatar
drapel me
Ultima dată când am rulat un program de instalare (ubuntu 21.04 mate), fiecare pachet marcat esențial sau important și fiecare pachet cu prioritate mai mare decât opțional a fost marcat ca non-auto de către instalator, chiar și bibliotecile care nu au niciun scop decât dacă instalați ceva care depinde de ele . De asemenea, pachetele mate gui erau și ele non-auto. showmanual a enumerat multe multe sute de pachete.
drapel in
@TomV Tocmai am găsit [this](https://askubuntu.com/questions/12279/why-are-almost-all-packages-marked-as-manually-installed) și există un raport de eroare care spune că acesta este comportament greșit și cu erori, [bug/424643](https://bugs.launchpad.net/ubuntu/+source/livecd-rootfs/+bug/424643). De asemenea, vedeți [răspunsul de mai sus](https://askubuntu.com/a/1384000/6878) care indică faptul că aceasta nu mai este o problemă în Ubuntu 20 și 22?
Tom V avatar
drapel me
Întrebarea și raportul de eroare sunt vechi de peste 10 ani (dar cred că ați spus că și sistemul dvs. este foarte vechi). Cu siguranță am văzut asta mult mai recent pe Debian și Ubuntu.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.