2022. november 28., hétfő

Gyorskeresés

Arch Linux: kiváló ügynök volt!

Írta: | Kulcsszavak: Arch . Linux . disztribúció . Ubuntu . Debian . Fedora . rant

[ ÚJ BEJEGYZÉS ]

Ritkán veszem rá magam a disztró blogolásra, amelynek egyik oka, hogy jó ideje nem volt szükségem a váltásra, remekül megvoltam Fedorán, így nem voltak új tapasztalataim, illetve akárhányszor leírja valaki a véleményét bármilyen platformon egy-egy disztróval kapcsolatban, általában a kommentekben elindul egymás savazása, hogy melyik disztró a legjobb és miért. Ezt a felesleges flamet szeretném elkerülni azzal, hogy már most leszögezem: minden, ami a továbbiakban olvasható, csupán személyes vélemény és kizárólag az én személyes preferenciáimat tükrözik. Szerintem nincs olyan, hogy tökéletes disztró, mindenkinek más igényei vannak és mindenki azt használ, ami jól esik neki.

Az igazat megvallva, eddig nem használtam olyan sok disztrót. Annak idején a Debiannal kezdtem szerveren és nagyon szimpatikus volt az, hogy a csomagkezelő (apt-get) automatikusan telepíti a programok függőségeit, nekem ez új dolog volt. Jól elvoltam a rendszerrel szerveren, de valamiért az a hiedelem volt meg bennem, hogy a grafikus felület nem egy igazán moduláris dolog a rendszerben és nem nagyon lehet váltani egyszerűen valami számomra szimpatikusabb felületre. A Debianból pedig egy tipikus XFCE GUI-ra asszociáltam, ami annak idején nem igazán volt szimpatikus. Ezért teljesen kezdőként az Ubuntu felé kezdtem el kacsintgatni desktopon, amit utána több évig használtam dual bootos Windows-zal. Az Ubuntunak voltak érdekességei, például az alap repositorykban sehol nem volt ffmpeg anno, illetve például a midnight commander sem, mindenféle PPA-kat, meg universe repót kellett engedélyezni ahhoz, hogy ezek a szerintem alap programok felmenjenek. Ezt leszámítva egészen stabil volt a rendszer és akkor magaménak éreztem, egészen addig, amíg a sok hozzáadott PPA meg a universe repó összeakadt a gyári repók csomagjaival és egyik pillanatról a másikra azon kaptam magam, hogy az apt teljesen össze van kavarodva, jó pár csomag conflicting egymással és valahogy eljutott odáig a rendszer, hogy le akarta töröltetni a teljes grafikus felületet a frissítések telepítésére. Természetesen ez részben az én hibám, nem kellett volna annyi repót innen-onnan összeszedni, azonban úgy gondolom, hogy pár alapvető csomag (pl mc) elfért volna a hivatalos repókban. Azóta egyébként nagyon sokat fejlődött az Ubuntu, már elérhető nagyjából minden alapból, amit eddig hiányoltam, de amikor ez a jelenség fennállt, messze nem voltam hozzáértő, próbáltam megoldani a dolgokat és csak még jobban elbarmoltam a helyzetet. Szóval egy ideig kényszerből használtam még az Ubuntut frissítések nélkül, aztán egyszer, amikor volt időm, letúrtam az egész rendszert és elkönyveltem egy nem egészen olyan stabil disztrónak, mint amilyennek mondják.

Úgy gondolom, hogy a mai tapasztalataimmal, illetve a frissebb Ubuntu kiadásokkal nem futnék hasonló dolgokba, de azért nem bántam volna egy kicsivel több útmutatást anno, ha már eleve egy kezdőbarát rendszernek van elkönyvelve. Ugyanakkor a mai napig nem szimpatikus az, hogy SSH-n belépve egy ubuntu szerverre, ott vár egy kilóméter hosszú Canonical hirdetés (nyilván kikapcsolható, de akkor is) motd formában, illetve a snapes irányzat sem tetszik, hogyha az ember fel akar rakni egy mezei böngészőt, az GB-okat akar behúzni magának.

Végül szerveren is lecseréltem majdnem mindenütt a Debiant, mert ugyan jó szolgálatot tett, marhára nem volt szimpatikus, hogy minden csomagból ezeréves fut a rendszeremen funkcionalitás tekintetében. Nyilván voltak security patch backportok, de új funkciókra néha éveket kellett várni. Például a tor már rég támogatta a v3-as, sokkal jövőbiztosabb domaineket, míg a Debianra ha jó emlékszem egy évet kellett várni, mire az alap Debianos tor csomag végre támogatta. Értem én, hogy ennek is van létjogosultsága olyan rendszereken, ahol nem fér bele, hogy pl pár havonta újra legyen indítva a szerver, és ezeknek is van kitalálva a live patch. Node ha eleve frissül a csomag már csak egy security patch kedvéért is, akkor is újra kell indítani legalább az adott programot, ami eleve downtime (hacsak nincs valami load balancer megoldás). De ennyi erővel lehetne minden rolling release is. Maximum azt tudom elképzelni, hogy egy-egy frissítéssel ténylegesen megváltozik a program konfigja és időt kell tölteni a konfigolással, de erre nagyon kevés precedenst láttam, illetve nem hiszem, hogy olyan különösen nagy effort lenne frissíteni néhány nagyon speciális esettől eltekintve. Ajánlották sokan, míg Debiant használtam, hogy ha friss szoftver kell, használjak containereket, illetve fordítsak magamnak forrásból, de utóbbi időigényes volt és sokszor rengeteg függőséget kellett mindig frissen tartani, előbbi pedig rendelkezik némi plusz erőforrásigénnyel, meg miért futtatnék rolling release disztrót a containerben, ha eleve futhat az a hoszton is.

Nyilván van oka a Debian és Ubuntu töretlen népszerűségének, amit én csak nem igazán látok át, így más disztró után néztem. Ekkor jött képbe a Fedora, amit sokan leszólnak, mert:
1.) Red Hat termék (a fizetős Red Hat Enterprise Linux tesztelői melegágya)
2.) jócskán bloated a telepítője
3.) a megjelenési ciklusuk túl rövid (6 hónap), így folyamatosan frissíteni kell a főverziókat, ha az ember támogatást szeretne
4.) a csomagkezelő lassú, mert python alapú (ez elméletileg változni fog a jövőben)
5.) túlságosan makacs, ha a fejlesztők elhatározzák, hogy ne legyen többet swap, hanem zram legyen helyette, akkor az lesz és nem biztosítanak alternatívát. Az embernek magának kell hekkelnie, hogy úgy menjen minden, ahogy szeretné.

Nagyjából ezeket a negatív tapasztalatokat hallottam a Fedoráról, amikkel részben egyet is értek, azonban nekem speciel nem volt gondom a csomagkezelő sebességével. Lehetne gyorsabb és optimálisabb, de nagyon sokoldalú. Egyedül az nem volt nekem szimpatikus, hogy a mindenféle zárt forrású appok nyilvánvalóan nem kerülhetnek fel a Fedora repókba, így kénytelen az ember rpm fusion, vagy flatpak után nézni, hogy mehessen a gépén egy Discord kliens, vagy egy Teams stb. Illetve a SELinux volt az elején nagyon idegen, nagyjából mindenféle próbálkozásom letiltotta, amikor pl webszervert akartam futtatni, de mára teljesen hozzászoktam és megértettem, hogy jobb vele, mint nélküle sok szempontból.

Hallottam olyan kritikákat is a Fedoráról, hogy "nem kihívás telepíteni és használni". Hogy egy SecureBootot nehezen összeszenved az ember Arch alatt például, míg Fedorán gyakorlatilag majdnem alapból tudja a rendszer. Ezt az érvet azonban én személyesen nem látom negatívumnak. Nyilván, akit ez zavar, annak aláírom, nem biztos, hogy a Fedora lesz a megfelelő választás.

A Fedora is jó ideig futott a gépeimen, mígnem kicsit elegem lett a flatpak és az rpm fusion kombinációval, valahányszor egy zárt forrású (proprietary) alkalmazásra lett volna szükségem. Illetve szerettem volna kipróbálni ezt a projektet, nomeg a tapasztalat kedvéért is át akartam állni.

A választásom az Arch felé esett, sok ismerősöm használja megelégedéssel, és első ránézésre nagyon szimpatikusnak tűnt, hogy a telepítés gyakorlatilag a minimum felrakásával kezdődik, aztán azt legózik össze rajta az ember, amire csak szükség van. Az AUR valami eszméletlen, kb mindenre van csomag. Itt biztos nem lesz szükség flatpakozni. Nomeg a dokumentáció részletessége, a mémkultúra, illetve a grafikus telepítő helyetti parancsoros telepítés után azt vártam, hogy ezt a disztrót biztosan csak a nagyon hozzáértők használják. Hát meglepődtem, mert IRC-n napokat eltöltve főként kezdő linuxosok kérdéseit olvasgattam, haladóbb kérdésekre általában nem is jött válasz.

Ennek ellenére felraktam a rendszert. A dokumentáció alapján nagyon egyszerű volt a telepítés, de anélkül is valószínűleg ment volna, mivel szerencsére nem sokban tér el egy átlagos disztró telepítéstől. Amin egyedül meglepődtem a telepítés során, az az arch-chroot parancs. Nem egészen értem, hogy ha önmagában a telepítő nem éppen kezdőbarát, akkor miért kellett egy chroot wrapper szkriptet fabrikálni, ami csak felcsatolja a /dev, /proc, /sys partíciókat, illetve a /etc/resolv.conf-ot intézi, miért nem fért bele ez a pár extra parancs szimplán a leírásba... :F De ez legyen a legkevesebb. Az installerbe telepített zsh konfiguráció azonban lenyűgözött, meg a pacstrap és a dokumentáció részletessége is.

A telepítést követően lenyűgözött, hogy gyakorlatilag egyetlen gyűjtő parancsot kiadva feltelepül egy komplett grafikus felület, amire épp szükségünk van, de nem bánom. Bár eleinte ellentmondásosnak éreztem egy ilyen egyszerű és csináld magad telepítést követően, de később megszoktam, hogy ha egyszer fut a rendszer és szükség van egy csomagra, tényleg gyerekjáték telepíteni.

Összességében megelégedéssel használtam a rendszert, szinte semmit nem is kellett konfigurálni, minden ment úgy, ahogy kellett neki, leszámítva a hardveres gyorsítást. Ezzel kellett menni pár kört, mert sajnos elég sokszor tapasztaltam, hogy kijött egy electron frissítés és például az összes electron app lefagyott scrollozásnál, vagy egy hétig nem ment a hardveres gyorsítás, mert elbaltáztak valamit, de többnyire legalább jött hamar a fix. Csak sokszor volt, hogy "magától" elromlottak már működő dolgok. Egyszer a kernellel is jártam hasonlóan, hogy nem működött rendesen a gdb debugger, miközben alkalmazást fejlesztettem és kiderült, hogy a legfrissebb kernel az oka. Szerencsére 3 nap alatt érkezett is a fix, de addig nem igazán tudtam dolgozgatni...

Szóval törődést igényelt a rendszer, de összességében nem volt annyira vállalhatatlan feladat a karbantartása. Viszont nagyon szerettem volna SELinuxot a rendszeremre. Fedora alatt megtanultam, hogy igen hasznos tud lenni. Nagyon megörültem, mert volt már wiki cikk, láthatóan igen részletesen is. Illetve sehol nem olvastam sárga keretes figyelmeztetésben, hogy a támogatás még fejlesztői fázisban lenne, illetve volt külön arch refpolicy, így be is ugrottam a mélyvízbe. Bár picit negatívnak hatott, hogy minden selinuxos csomag csak az AUR-ből elérhető, ez legyen a legkevesebb, ha működik mind. Szépen egyesével felraktam az összes leírásban említett csomagot, majd átraktam a kernelt enforcingra. Na ekkor szépen meghalt az összes electron app, a firefox is crashelt, a networkmanager nem indult többet és gyakorlatilag tégla lett a rendszerből. Szerencsére a live telepítőből vissza tudtam hozni a rendszert az életbe és ki tudtam gyomlálni a selinuxos próbálkozások maradványait.

Kiderült számomra, hogy sajnos az Arch is messze van még a teljeskörű SELinux támogatástól és bár az alap csomagokra már van egy működő setup, kb minden egyéb csomaghoz kézzel kellene policyket írni. Amihez kevés vagyok sajnos és azt mondják, hogy az ilyen utólagosan portolt policykkel sosem lesz olyan biztonságos egy disztró, mint egy olyan, ami eleve selinux támogatással lett készítve.

Tettem fel AppArmort, mint alternatíva, ami meglepően egyszerű volt, de ezzel a megoldással sem vagyok megelégedve, mert messze nem szól bele annyit a rendszerbe, mint a SELinux és a file contexteket is hiányolom.

És bár megértem, hogy sokan leidiótáznak, hogy képes vagyok "bízni" a SELinux-ban, ami köztüdottan NSA fejlesztés, én azon a véleményen vagyok, hogyha az NSA képes lenne bejutni egy SELinux-szal védett gépre, akkor minden bizonnyal egy SELinux mentesre is seperc alatt bejutnának. Viszont sok más támadási faktortól megvéd. inkább fusson ez a gépemen, mint semmi. Illetve ott a tor, az is egy katonai kezdeményezésként indult és valahogy mégsem kapta meg a stigmát, hogy biztosan kémkedésre használt backdoorokkal teli projekt. Így számomra a SELinux hiánya Archon egy kicsit meglepő volt. Valahogy arra számítottam, hogy a közösség nagy és valakinek csak hiányzik a támogatása, de meglepően sok visszautasítást kaptam a témában. Szóval ez volt az első csepp a pohárban, ami nem igazán volt szimpatikus. De ezt még meg tudtam érteni, hiszen az Arch egy közösségi kezdeményezés, senki nem kap fizetést azért, hogy a rendszert fejlessze, vagy a refpolicyket írja, mint a Fedora és a Red Hat esetében...

Azonban igazán kiábrándított, az az a pillanat volt, amikor belefutottam ebbe a reddit cikkbe: [link]. Gyakorlatilag arról van szó, hogy jelenleg senki nem foglalkozik a glibc frissítésével, mert az eredeti fejlesztők leléptek. Így gyakorlatilag az egész rendszer ki van téve sebezhetőségeknek. Valamilyen szinten azt is megértem, hogy senki nem akarja felkarolni a projektet, mivel a glibc frissítésével jár egyben a legtöbb rá épülő csomag párhuzamos frissítése is, de nagyon fontos lenne ezt frissen tartani és valahogy ez egy váratlan lépés egy olyan disztrótól, ami a közösség erejével igyekszik "eladatni" magát.

Később egyébként megtudtam, hogy az Arch telepítő is hasonló sorsra jutott. Eredetileg grafikus telepítővel terveztek, de a projekt kabantartója rég otthagyta a dolgot, ezért ez a pár szkript és a fapados telepítő maradt kényszermegoldásnak. Így érthető az arch-chroot parancs, meg a többi ellentmondás.

Bevallom, ezek után kicsit tanácstalan vagyok, hogy mit válasszak, mert mindegyik eddig általam használt/ismert disztrónak van valami hátránya, de úgy vélem vissza fogok térni Fedorára, hiszen az igényeimet kiszolgálja, stabil, friss, friss a glibc-je és a SELinux támogatás remek.

Köszönöm, hogy elolvastad!

Hozzászólások

(#1) Somatom


Somatom
addikt

Anno az Asus eee netbookomon próbálkoztam Linux -szal. Akkor jött ki a direkt ilyen gépekre kitalált Ubuntu Netbook Remix, ami kapásból nem kezelte az Asus n -es Wifijét. Következő kísérlet a Black Panther volt, de a KDE kicsit erős volt az N270 -es Atomnak. Utána találtam rá a Puppeee -re, ami a Puppy Linux netbookra optimalizált verziója. Az első vakkantástól (így jelzi, ha felállt a rendszer) beleszerettem. Azóta csak Puppy. :)

[ Szerkesztve ]

Samsung Note 9 (8/512) Android 9, Tab S7+ 5G

(#2) Mr Dini válasza Somatom (#1) üzenetére


Mr Dini
addikt

Hú ez jó nosztalgikus laptop! :) Igen, ezen nem feltétlen futna jól egy mai népszerű disztró, pláne nem a KDE. Bár amiket hallottam a BlackPantherről, szerintem eleve zsákutca az, hogy bizonyos dolgokért pénzt kérnek.

A Puppy viszont tényleg jó cucc, anno azzal kezdtem a NAS mókolást is még a te javaslatodra. :R

Sose köss bele az antikvitásba!

(#3) blade zte


blade zte
őstag

Az Arch sosem volt egy slim distro. Mivel a tarhely egy olcso dolog ezert a packagek szetbontasa nem kifejezetten prioritas es sokszor a komplett dolgot szeretik egybegyurni, foleg ha olyan DE-rol van szo ami amugysem a slimsegre megy ra. Szerintem sokkal inkabb az elonyere valik mint a hatranyara, nekem sosem ment mas distro osszelegozasa pont azert mert valami kis kritikusnak erzodo dolog kimarad amit mindig keresgelni kell avagy fel sem tunik de megkonnyitene a dolgokat.

Az arch-chroot technikailag nem kell, de szerintem nincs ertelme szopkodni a szelso esetekkel meg extra commandokkal, ahogy a pacstrap is segit hogy ne kelljen az alaprendszert tarballbol telepitened vagy valamit osszehackelni pacmannel.

Tl;Dr.: Az Arch alapteziseinek megfelel az amiert te kritizalod. A KISS (Keep It Simple Stupid) egy fo elvnek van felsorolva.

Amit az Archon mukodni latsz az azert van mert az Arch a DIY-orientalt community disztrok Alfa-hime. Nem lesz minden tamogatva, altalaban csak az amirol ugy erzik hogy van ertelme.

SELinux meg az Apparmor hasznalata szerintem elenyeszo. Valszeg a legtobb usecase eseten nem ez az elso es legegyszerubb valasztas egy rendszer hozzaferesi vedelmere. Ebbol kifolyolag nem foglalkoznak vele.

Egyeb alternativak az OpenSUSE es az Alpine Linux lehetnek. Mindegyik a sajat nyugjeivel, de lehet hogy eppencsak turhetonek talalod egyiket masikat. Alpine nagyon barebone meg tamogatas-hianysaga ellenere neha kezesbarany tud lenni.

Oppo find 7 astro black

(#4) Mr Dini válasza blade zte (#3) üzenetére


Mr Dini
addikt

Alapvetően számítottam rá, hogy rossz irányból közelítem meg az Archot és köszönöm az informatív kommentet, pár dolgot sikerült rendbe raknod az értelmezésemben! :R

Érdekes amúgy, hogy ez a KISS modell (szerintem) nem igazán érződik az installeren. Nem teljesen értem, hogyha más Arch alapú disztróknak sikerült, miért nem csinálnak egy rendes grafikus telepítőt megint a projektnek?

Meg a glibc nem frissítése szerintem elég meredek.

De azt aláírom, hogy teljesen igazad van, a SELinux egy abszolút réteg dolog (pedig milyen jó lenne, ha elterjedne, lásd Android).

OpenSUSE-t még nem próbáltam, Alpine-t viszont igen. Az összes containerem Alpine alapú és marhára tetszik a minimalítása, illetve hogy pl musl-t is tud használni. Bár anno próbálkoztam KDE-t telepíteni, hát nem igazán jött össze... :B

Sose köss bele az antikvitásba!

(#5) berus.berus


berus.berus
kezdő
LOGOUT blog

"Bevallom, ezek után kicsit tanácstalan vagyok, hogy mit válasszak, mert mindegyik eddig általam használt/ismert disztrónak van valami hátránya..."

Ezzel én is így voltam, úgyhogy ~20 év Linux desktop évére várás után vettem egy Windowst, és nem bántam meg...! ;)

Berus (Viszlát Linux...)

(#6) Somatom válasza berus.berus (#5) üzenetére


Somatom
addikt

Az XP -nél kiszálltam, azóta csak Linux és Android. Vettem egy mini PC -t, amin gyárilag van Win10. Az eddig még egy értelmes dolgot nem végzett nekem, csak szivatott, idegelt. Gyűlölöm!

Samsung Note 9 (8/512) Android 9, Tab S7+ 5G

(#7) Mr Dini válasza berus.berus (#5) üzenetére


Mr Dini
addikt

Már vártam ezt a kommentet is. :D

Nagyon sok ideig voltam Windows használó is, de mindig azon kaptam magam, hogy az első dolgom az, hogy SSH-zok a távoli szerverre. Most ezért nincs sok értelme számomra winen maradni. Amúgy meg böngészni és programozni bőven jó a Linux is. És ami főként lenyűgözött, hogy sokkal kevésbé melegedett a gép és pl a laptopom Windows-szal 6 óra alatt feladja a harcot, Arch-csal meg lazán ment 8 órát is, ami durva. Meg úgy összességében szerintem a Linux gyorsabb és ma már azért vannak olyan grafikus felületek tőle, hogy dobsz egy hátast tőle. Ha Win és Linux közt kellene választanom, azt hiszem sose térnék már vissza Winre. Az tény, hogy van pár hiányosság, de jelentéktelen a wines ármányokhoz képest. :DDD

Viccet félretéve megértem azt, akinek a win jön be jobban, nekem abszolút pozitív csalódás évről évre a linux és nem igazán vágyom vissza. Játékra, zene és videószerkesztésre, illetve egyéb specifikus dolgokra még mindig kényelmesebb talán a win, de amire én használom, arra tökéletes.

De egyébként pont felraktam egy Windows VM-met, hogy kipróbáljam a win11-et. Hát ne tudd meg, 3 órát vártam, míg az NVMe-n lefutott az összes frissítése. Kegyetlen.

[ Szerkesztve ]

Sose köss bele az antikvitásba!

(#8) anorche1


anorche1
őstag

Gentoo?

"It never gets easier, you just go faster." Greg LeMond

(#9) Mr Dini válasza anorche1 (#8) üzenetére


Mr Dini
addikt

Ajánlották már, hallottam róla hideget/meleget is, de még nem próbáltam ki, hogy önállóan tudjak róla véleményt alkotni. De mindenképpen tervben van a belakása először majd egy virtuális gépben, aztán meglátjuk, hogy szerepel.

Kicsit az unszimpatikus, hogy mindent a te gépeden fordít, kicsit az már az a kategóriának tűnik így látatlanban, hogy többet modolod a géped, mint használod. Aztán lehet a valóságban nem ennyire borzalmas ...

Bár az tény, hogy ott aztán mindent én rakhatnék össze magamnak. Lehetne musl alapú is az egész rendszerem.

Sose köss bele az antikvitásba!

(#10) Somatom válasza Mr Dini (#7) üzenetére


Somatom
addikt

Ne is mondd! Az enyém is ezt csinálja. Üzen, hogy ne kapcsoljam ki, mert ő most frissít. Hát frissíccsé, vazze! Egész éjszaka után, reggel még ugyanott tart. Mi lenne, ha épp el akarnám vinni? El sem tudom képzelni, hogy egy hurcibálós laptopon ez hogyan működik. És akkor még a böngésző frissít, a vírusírtó frissít, a kiskutyafüle frissít. Halló! Kapok én is gépidőt? A Puppy sohasem csesztetett ilyesmivel. Bekapcsolom, vakkant és teszi, amire utasítom.

[ Szerkesztve ]

Samsung Note 9 (8/512) Android 9, Tab S7+ 5G

További hozzászólások megtekintése...
Copyright © 2000-2022 PROHARDVER Informatikai Kft.