Felraktam Trustyra (14.04) a snapd-t, ami felrakta magával a Xenial (16.04) kernelét is (trusty tárolóból).
Aztán nem tetszett a snap (nem is futott, amit akartam), meg a kernel is pocsék (5 másodpercenként felsikít és leáll a ventillátor), eltávolítottam a snapd-t, majd autoremove-ltem a felesleges csomagokat. Aztán ezután elromlott a felbontás, meg a wifi is elment.
Szerintem az
apt install snapd
apt remove snapd
apt-get autoremove
parancsok egy használhatatlan, driver nélküli rendszert eredményeznek, anélkül, hogy bármit is szólna.
Ezt hol tudom nekik jelenteni?
Más: hol érdemes megmondani a rendszernek, hogy a régi kernelt akarom használni? Szerencsére bebootolni sikerült, az initrd.img és a vmlinuz symlinkeket nem törölte csak .old névre átírta, én meg visszaírtam, de, tartok attól hogy néhány konfig file azt hiszi, hogy az újabb kernelt használom, és a régi kernelt egyszer csak kisöprik alólam :/
Hozzászólások
Az 'autoremove' pont azt csinalja, ami a neve szegenynek. Leszedi azokat a csomagokat, amelyeknek a telepiteset nem kezzel kerted es nincs mar felrakva olyan kezzel telepitett csomag, amely dependenciakent hivatkozik ra. Tehat, ha felrakod a 'KDEAlmafa' nevu appot, ami magaval huzza fuggosegkent a 'KDEKortefa' appot es a 'KDELibKortefa' es a 'libmp3kortefa' libeket, akkor ha leszeded a 'KDEAlmafa'-t, a rendszer autoremove eseten le fogja szedni a fuggosegkent telepult szoftvereket is, fuggetlenul attol, hogy azokat hasznaltad-e vagy nem.
Tehat, valoszinuleg nincs mar fenn az a csomag, ami eredetileg fuggosegkent felhuzta a neked kello drivereket.
A snapd rakta fel a linux-extra csomagot is, amikor lecserélte a kernelemet. Amikor eltávolítottam, akkor az új kernel megmaradt, de driverek nélkül, a számítógép lényegében használhatatlan. Nem hiszem, hogy ez az elvárt működés.
A kernelt meg kellett volna hagyni az új driverekkel. Szerintem rakd vissza kézzel a kernelt.
Gondolom a drivereket is befrissítette a snap.
Mármint a snapd-vel együtt rakta fel az apt a kernelt, meg a kernel extrákat (külön csomagok).
Nem voltam ott. Egy laza kérdés, egy felelőtlen enter... Egy féltékeny szerető...
Ez csak nagyából van így. Ellenpélda: metacsomag
A dolog amúgy fordítva müködik ha a legalapabb közös összetevőt szeded le, akkor szed le mindent amit felrakott.
Elvileg, nem kellene mashogy mukodnie. A dokumentacio ertelmeben, amiket a metapackage felrant, azok ugy szamitanak, mintha kezzel kerultek volna fel. Most igy hirtelen kiprobaltam, de nalam ez ennek megfeleloen mukodik. Milyen anomaliat talaltal?
install kubuntu-desktop
remove *
Mit szeretnel ezzel mondani? Debianom van, ott ez latszolag jol mukodik. A remove *-t meg soha nem adtam ki, eszembe se jutott, hogy van ilyen.
remove kubuntu-desktop
Meg mindig nem ertem. Ez leszedi a metapackaget.
És a komplett kde fent marad, a kubuntu-desktop összes függősége.
Igen. Miert ne maradna fenn? Ez mindig igy mukodott, dokumentacionak megfeleloen. Ha leszededa metapackaget, akkor azutan az autoremove le tudja/fogja szedni a meta alltal felrantott fuggosegeket is.
Nem szedi le. Ez az ellenpélda.
Kiprobaltam. Leszedi. Ha leszeded a metapackaget, azutan az autoremove rendje es mondja szerint leszedi a dolgokat. Nincs ezzel baj. https://pastebin.com/bK3nwVDt
Debian 10.7.
Kiprobaltam. Nem szedi le. Ubuntu 20.10
Hat, akkor ez egy ujabb dolog, amit sikerult az Ubuntuek haza tajan elrontani :D Tolj nekik bugreportot.
Ez nem bug.
Emlékeim szerint a csomagkészítő megadhatja mit csináljon a csomag remove esetén. Itt gondolom nincs megadva: szándékosan semmi.
Valóban nem bug.
De egyszerűbb a dolog. Ha van dependency, akkor megmarad. Ha úgy tudja a rendszer, hogy kézzel lett feltéve, akkor fennmarad. Ha úgy tudja a rendszer, hogy automatikusan lett telepítve ÉS semmi nem függ tőle (pre-depend, depend, recommend), akkor letörli.
Debianban pl. az alap telepítés feltesz egy csomó csomagot, ami a rendszer szerint kézzel van telepítve. Ha ezeket az ember kézzel automatára állítja, akkor rögtön egy részüket automatán törlésre jelöli ki a rendszer.
Pl. egy metacsomag feltétele azt jelenti, hogy a metacsomag kézzel lett feltéve, és minden, amitől függ, az automatán. Ha letörlöm kézzel a metacsomagot, vagy automatára állítom és semmi nem függ tőle, tehát automata törlésre jelöli ki a rendszer, akkor minden, amit feltett potenciálisan törlésre kerül. De nem feltétlenül mindent töröl az automata. Pl. ha az alma metacsomag feltette a körtét (depends), de egy korábban feltett barack csomag recommends körtét, akkor az alma törlése után a körte megmarad, mert a barack függ tőle. Másik példa, ha alma feltette a körte csomagot és feltette a narancs csomagot, és a körte függ a narancstól, a narancs meg függ a körtétől, akkor az automata csak annyit lát, hogy mindenki függ valakitől, és nem szedi ezeket automatán le. Ha viszont én kézzel mondjuk a narancs csomagot törlésre jelölöm ki, akkor mivel a körkörös függés megszűnt, a rendszer automatán kijelöli a körtét is törlésre. Ugyanígy, ha a barackot törlöm (vagy egy frissítés után már nem recommends szinten függ a körtétől), akkor a rendszer automatikusan törlésre jelöli a körtét is.
könnyű ellenőrizni, hogy egy csomag miért marad a rendszeren: aptitude-ban ha "i" van egy csomag előtt, akkor az kézzel telepítettnek számít, shift-m hatására beállítja a rendszer az automata jelzést, és vagy rögtön törlésre jelöli ki: "idA", vagy nem: "i A". Az első esetben nem volt semmi függőség, ami megtartotta volna a csomagot, a másodikban meg valami függ tőle. r billentyűvel lehet kilistázni, hogy mi függ ettől a csomagtól. Ha azt a listát kigymlálja az ember, akkor ez a csomag automatán törlésre ki lesz jelölve, attól függetlenül, hogy egy maintainer mire gondolt, miközben csomagolta ezt, vagy a metát.
Szóval simán lehet, hogy Debian és Ububtu egyszerűen annyiből tér el, hogy az Ubuntuban sokkal több minden függ egymástól, és a metacsomag eltávolítása után a körkörös függések miatt fennmaradnak a dolgok.
Amikor valaha régen egyszer próbát tettem az Ubuntuval, pont azért nem barátkoztam meg vele, mert én telepítés után szeretem kiirtani a számomra szükségtelen dolgokat, Ubuntu esetén viszont a számomra teljesen felesleges csomagoktól is millió egyéb függött, és nem tudtam kiirtani a bozótot.
De ez nem bug, bizonyára egyszerűen más a célkitűzése egy ilyen beállításnak. Pl. Debian alatt simán törölhetek annyit, hogy egy holt fapados rendszerem lesz, X meg hálózat meg hasonlók nélkül. Az Ubuntu meg bizonyára úgy volt vele, hogy a mi felhasználóink egy integráltan működő grafikus felületet akarnak, tehát az ehhez szükséges csomagokat beállítjuk függésként a legalapabb rendszercsomagokhoz és így soha nem tudja egy kezdő véletlenül letörölni.
disclaimer: ha valamit beidéztem és alá írtam valamit, akkor a válaszom a beidézett szövegre vonatkozik és nem mindenféle más, random dolgokra.
A csomagfüggőségnek oka van. pl az, ha nincs fent akkor egyes funkciók mégsem jelennek a core alkalmazásban. Ubuntu desktopra készül és nem akar reklamációt. Ilyen az is, ha egy csomagnak kell egy user az Ubuntu létrehozza, a Debian nem mindig. A két disztro között ez jellemző különbség, az Ubuntu kicsit gondolkodik helyetted, a Debian bízik abban, hogy tudod mit csinálsz.
/etc/apt/apt.conf.d/01autoremove tartalma kulonbozik vajon a ket rendszeren?
Itt a debianos valtozat: https://pastebin.com/TzGkXZfT
"Never-MarkAuto-Sections" alatt a megoldas...
Az lehet.
remove vs autoremove.
én is jártam így... (valamelyik autoremove leszedte a kernelt... wtf?) nem is használok ubuntut azóta sem...
a szervereken debian van, de még kernelt nem szedett le...
a másik bajom az apt-tal, hogy naaaagyon lassú... sokszor upgradeltem már debiant (lxc-ben) úgy, hogy összetar, gzip, letölt, laptopon lefut az upgrade (ssd-vel), majd vissza...
Egyszer próbáld ki a Windows Update-et :)))
Mi lassú az apt-on? Egy komplett dist-upgrade képes pár perc alatt végigmenni... Esetleg floppyról futtatod a rendszert? :)
Ezen meglepődtem én is. Minden más lassabb amivel eddig találkoztam.
opkg is? :)
ssd-n lehet, hogy elfogadható...
én a pacman-hoz vagyok szokva... :)
Tudom sokat utálják, de én pont ezért használok aptitude-ot... :)
Debian Linux rulez... :D
RIP Ian Murdock