systemd baromságok

Fórumok

Vajon van rá valami épeszű magyarázata valamelyik systemd-prófétának, hogy mi a rákos gyíkheréért kell a netfilter-persistent függőségei közé betenni a kernelmodulok betöltését?

Vagy csak én nem értem azt, hogy ha nem sikerül behúzni a soros porthoz, az alsa-hoz, az usb-storagehoz, vagy a mai példámban egy alaplap-csere miatt a sensors-hoz tartozó modulok valamelyikét, akkor teljesen nyilvánvalóan nincs szükség arra sem, hogy a tűzfalszabályokat betöltsük?

És persze erről se egy rohadt levél, se valami szememet kiverő üzenet valahol, csak egy árva sor a syslog-ban, hogy a netfilter-persistent nem indult dependency error miatt. Hogy mi volt az, amire dependált, de nem lelte, azt már kár is lett volna beleírni a logba, nyilván úgysem érdekel senkit... Tiszta windows.

Bezzeg pár hónapja a desktop gépemen, mikor valami miatt a cups nem tudott elindulni, akkor bezzeg leállt az egész boot folyamat, mert az olyan létfontosságú szolgáltatás, ami nélkül élni sem lehet.

És ha már függőségkezelés: miért is van egyáltalán hálózat, ha nem sikerült a tűzfalat betölteni?!

Hozzászólások

De ne zavard ma ossze a systemdprofetakat lecci lecci lecci :)
Ilyen biztos nincs amit leirtal. Hazudol es futyulsz is biztos. Mer a systemd jo, ertem???

Nem akarom a systemd-t védeni, de más disztrókon azért normálisan fut, szerintem ez Debian háztáji probléma lesz.

„Pár marék nerd-et leszámítva kutyát se érdekel már 2016-ban a Linux. Persze, a Schönherz koliban biztos lehet villogni vele, de el kéne fogadni, ez már egy teljesen halott platform. Hagyjuk meg szervergépnek stb…” Aron1988@Proharder Fórum

Először, mikor olvastam, lefordultam a székről, úgy röhögtem. Az évszázad aranyköpése. Valld csak be, hogy a koliban akarsz villogni vele, közben meg egy halott platformon ragadtál le. Az a baj, hogy nem kérdezel meg a PH-ról bölcsebbeket, pedig szívesen megszakértenék a témát jól :D

„Pár marék nerd-et leszámítva kutyát se érdekel már 2016-ban a Linux. Persze, a Schönherz koliban biztos lehet villogni vele, de el kéne fogadni, ez már egy teljesen halott platform. Hagyjuk meg szervergépnek stb…” Aron1988@Proharder Fórum

Nyilván én is átírtam magamnak /kicsit vadabbul, helyből kitöröltem a systemd-modules-load.service-t a Requires-ből/, de elég szomorú látni, hogy a maintainereket ez mennyire nem zavarja, és mennyire nem léptek semmit két év alatt. Pedig tűzfal nélkül elindulni azért szerintem elég szép biztonsági probléma.

Vajon van rá valami épeszű magyarázata valamelyik systemd-prófétának, hogy mi a rákos gyíkheréért kell a netfilter-persistent függőségei közé betenni a kernelmodulok betöltését?

Debian csomag, ők cseszték el.

Vagy csak én nem értem azt, hogy ha nem sikerül behúzni a soros porthoz, az alsa-hoz, az usb-storagehoz, vagy a mai példámban egy alaplap-csere miatt a sensors-hoz tartozó modulok valamelyikét, akkor teljesen nyilvánvalóan nincs szükség arra sem, hogy a tűzfalszabályokat betöltsük?

A netfilter modul nélkül az iptables nem fog menni, úgyhogy valahol jogos, hogy kellenek a kernel modulok. Szvsz. a korrekt systemd-s megoldás az lenne, hogy írnak egy generátort, ami a megtalált kernel modulok alapján legyárt mindegyikhez egy-egy külön unit-ot, amire utána már a netfilter-persistent dependelhet.

És persze erről se egy rohadt levél, se valami szememet kiverő üzenet valahol,
...
miért is van egyáltalán hálózat, ha nem sikerült a tűzfalat betölteni?

A fentebb linket bug reportokban is többen agyalnak, hogy mi lenne ilyenkor a megfelelő működés. És ne felejtsd el, hogy _mindenkinek_ megfelelő működés kell, mert ha biztonsági oldalról közelíted, akkor kizártad magad akár egy felhőben futó szerverről, amibe nem tudsz belerúgni. Vagy ha addig nem húzza fel az interface-ket, akkor egy kezdő user nem éri el a netet a gépén, hogy megkeresse, mi lehet a gond a netjével. Vagy...

--
Szerk.: Egyébként pedig egy systemctl status ad egy szép összefoglalót a rendszer aktuális állapotáról, és ha a netfilter-persistent nem indult el, akkor degraded lesz (felülről a második sor! - tudja valaki, hogy csak ezt az egy állapotot hogy lehet a systemd-ből kiszedni?), utána rákereshetsz egy systemctl --failed -el a hibás service-re és azonnal látod.
--

BlackY
--
"en is amikor bejovok dolgozni, nem egy pc-t [..] kapcsolok be, hanem a mainframe-et..." (sj)

Szvsz. a korrekt systemd-s megoldás az lenne, hogy írnak egy generátort, ami a megtalált kernel modulok alapján legyárt mindegyikhez egy-egy külön unit-ot, amire utána már a netfilter-persistent dependelhet.

Hát ez a tipikus esete annak, amikor olyan problémára keressük a "systemd-s" megoldás, ami tulajdonképpen nem is létezik.
Hint: van kernel autoloader, kiadod a netfilter parancsot, a kernel meg magától betölti a modulokat. És ehhez egy bitnyi systemd sem kell...

amikor olyan problémára keressük a "systemd-s" megoldás, ami tulajdonképpen nem is létezik.

A probléma (kernel modulok betöltésének felelőssége és a szolgáltatások függőségének kezelése) láthatóan létezik, különben nem beszélgetnénk róla. Te láthatóan átdobnád ezt a felelősséget a szolgáltatásra (hogy legyen annyi kernel modul kezelési megoldás, ahány tűzfal).

Viszont visszatérve a topic indítóra: per pill. a systemd-modules-load (ami kernel modulok korai betöltéséért felelős, hogy a szolgáltatásoknak ne kelljen modprobe-al szórakozniuk... pl. egy CUPS csak azért, mert függ a párhuzamos port modultól, ne akarjon kernel modulokat töltögetni, ő fusson csak a kis saját, privilégiumok nélküli userével) egy a netfilter-persistent-től teljesen független modult nem tudott betölteni - ha _rendesen_ kezeled/dokumentálod az egyes szolgáltatások kernel modul függőségeit, akkor egy CUPS nem tudja a tűzfaladat megborítani - ahogy egy HW szenzor modul sem a CUPS-ot.

A kernel modul ugyanúgy tekinthető dependency-nek, mint egy fájlrendszer. Annál is ugyanígy mondható, hogy dehát ott az fstab, és minden szolgáltatás lesz szíves ellenőrizni, hogy az adatai elérhetőek induláskor. Pl. egy dovecot alá mondhatod, hogy adsz egy külön FS-t a mailboxoknak. Innentől kezdve az az FS a dovecot számára egy szükséges dependency, és a systemd ezt kezeli is - egy sornyi konfig átírásával felveszed függőségként és öröm és boldogság (és egyébként pont egy generátor csinál mount unitokat az fstab fájlból).

Hint: van kernel autoloader, kiadod a netfilter parancsot, a kernel meg magától betölti a modulokat.

Ja, vagyis egy felelősséget (kernel modulok betöltése) áttoltál user space-be (amit egyébként a példában, ha jól nézem a forrást, az iptables meg is csinál, a netfilter-persistent csomag által használt iptables-restore már nem)

BlackY
--
"en is amikor bejovok dolgozni, nem egy pc-t [..] kapcsolok be, hanem a mainframe-et..." (sj)

Te láthatóan átdobnád ezt a felelősséget a szolgáltatásra

Nem, egyáltalán nem. A probléma megoldása ugyanis jelenleg is létezik, és az esetek 99.9%-ában semmiféle átdobás nincs a szolgáltatásra.

A hardverfüggő modulokat az esetek 99.99%-ában a kernel + udev jelenleg is képes korrektül kezelni, bootoláskor szétnéz, hogy mit lát, és minden autodetektált perifériának betölti a driverét (ezért volt szar példa CUPS meg a printer port). PnP előtti ISA kártyáknál ez valóban nem megy, de lássuk be, hogy aki ilyet akar, az majd konfigurál kézzel (ezek a kártyák ugye 20+ évesek). Meg nyilván akad még 2-3 egzotikus hardver, amit nem lehet autodetektálni, na náluk marad a kézi mutatvány, vagy a maradék opciók egyike, de ezt szintén nem fogja más (pl. egy systemd) megoldani az adminisztrátor helyett.

A nem hardverfüggő modulok szintén jelentős részében a kernel + udev "automágikusan" betölti a modult, amikor valaki hozzányúl az API-hoz. Ilyen pl. az ipv6, amint valami hivatkozik az ipv6 protokollra, a kernel kér egy 10-es PF-et, az udev meg a konfig fájlba belehardkódolt modult betölti ehhez.

Nagyjából a netfilter/virtualbox vonalon van a maradék, no ezekhez egy konkrét userspace csomag tartozik, amit amúgy is rootként kell futtatni, ergó azok majd ezt szépen kezelik: vagy modprobe-olnak maguk, vagy megírja a gazdájuk a szükséges rc scriptet/systemd konfigot/etc hozzá, ízlés szerint. Rajtuk kívül más amúgy sem tud a moduljuk létezéséről, ergó az előző kettő megközelítés nyilván nem fog menni. Ja, és mellesleg: a netfilter sem az összes modult tölti kézzel, hanem csak az elsőt (az ip_tables-t, ami nélkül a kernel a netfilter létezéséről sem tud, tehát itt nincs más opció), utána a többit már a kernel tölti ondemand, ahogy próbálja a userspace használni az adott funkciót. Mellesleg, ha az ip_tables fixen bele van fordítva a kernelbe, akkor erre sincs szükség, minden megy a kernel autoloaderrel szépen.

Nem tudom, hogy nálad az iptables-restore miért nem tölti be a modulokat, azt sem, hogy az nálad miért külön csomag (vagy félreértettem a mondatodat), nálam pont ugyanabból az iptables-1.4.21.tar.bz2-ből jön létre, pont ugyanabban az iptables csomagban van, és pont ugyanúgy nincs gondja a modulok ondemand betöltésével.

Izé.

Lehet, hogy rosszul emlékszem, de szerintem nem tölti be minden hardverhez a modult bootoláskor, csak azért, mert észrevette, hogy létezik.

Persze az is lehet, hogy megváltozott ez azóta, amióta nem foglalkoztam vele.

Volt olyan rendszerem (évekkel ezelőtt), ahol direkt alacsonyan tartottam a betöltött modulok számát. Akkor töltött be valamit, amikor bármi használni akarta, és amikor már nem használta, akkor meg kitörölte a modult.

Már nem emlékszem, hogy ez alapból így volt, vagy nekem kellett valamit konfigurálnom hozzá.

Ebben a felállásban pl. kifejezetten nem örülnék, ha a a systemd vagy bármi más csomag betöltene egy vagonnyi modult, mert hátha jó lesz az még valamire.

Két dolog: vannak gépek, amiknek korlátozott a kapacitása. Manapság nem jellemző a kevés RAM, de pl. az első linuxos gépemben azt hiszem 32M RAM volt. Egy ilyen gépre betöltött modulok csak pazarolják a RAM-ot (vagy a swap-et, ha ki tudja ezeket is lapozni a kernel). Nem tudom, ez ma még értelmes indok-e. Talán már a hitelkártya méretű embedded gépekben is gigabájtok vannak.

A másik: előfordult (és miért ne fordulhatna elő a jövőben), hogy egy-egy driver bugos. Okozhat pl. fagyást. Ilyenkor nem árt, ha a bugos drivert, amit egyébként nem akarok használni, nem tölti be a kernel induláskor.

Fordítsuk meg: ha van egy gépem, amiben van egy beépített párhuzamos port, két soros port, egy infra port, stb. de nem kötök rá nyomtatót, nem infrázok, soha semmit nem csatlakoztatok egyikhez se, akkor minek legyen hozzá betöltve egy-egy (vagy több) modul?

Majd ha egy nap valaki véletlenül hoz egy eszközt, amihez infra kell, akkor majd betöltöm hozzá.

Én így gondolkoztam. Akkoriban. A mostani (utóbbi 10 év) gépeimen egyszerűen nem is törődtem a modulokkal. Amikor kellett, a kernel betöltötte. Lehet, hogy ezt-azt feleslegesen is. Nem zavart, de direkt nem töltetek be mindent, ami elérhető. Ráhagyom a rendszerre.

Egy ilyen gépre betöltött modulok csak pazarolják a RAM-ot

Persze, de mennyi olyan hardvelem van ezekben a gépekben, amiket nem használsz, és vajon hány KB kernelmemóriáról beszélünk?

Egy wifi routerben, ha a wireless-t nem tiltod le, akkor kb. 1-2 periféria lehet max., amit nem használsz. Jó, ha pár 10KB-ot meg tudsz így spórolni. Ez még 32MB-nál sem egy számottevő mennyiség.

Egy sorosporti driver talán egy vagy két lap lehet, de ha fixen belefordítod a kernelbe, akkor szerintem egy egész lapot sem fog megenni (modulnál ugye kénytelen egész lapokat használni per modul). A printer port drivere sem nagy.

Anno, amikor még a modulosdi se nagyon létezett, nem ezeken a perifériákon próbáltunk spórolni (pedig akkoriban MB-okban mérték a RAM-ot), hanem azokon, amiket sosem láttunk (a valag scsi meg ethernet driver), vagy amik nagyok (pl. frame buffer driverek). Mert egy ethernet driver nem nagy, de volt vagy 40-féle, na 40 együtt már sok.

Talán már a hitelkártya méretű embedded gépekben is gigabájtok vannak.

256-512MB manapság már az SBC-k induló RAM-ja.

Ilyenkor nem árt, ha a bugos drivert, amit egyébként nem akarok használni, nem tölti be a kernel induláskor.

Ez ondemand betöltésnél is gond (hiszen nem feltétlenül tudod megakadályozni a cli parancsok futtatását adott paraméterekkel), erre van a blacklist.conf, meg a különféle kernel opciók.

Nem tudom, hogy nálad az iptables-restore miért nem tölti be a modulokat, azt sem, hogy az nálad miért külön csomag (vagy félreértettem a mondatodat), nálam pont ugyanabból az iptables-1.4.21.tar.bz2-ből jön létre, pont ugyanabban az iptables csomagban van, és pont ugyanúgy nincs gondja a modulok ondemand betöltésével.

A további modulokat felteszem már igen, az iptables.c-ben van egy explicit iptables_insmod hívás az ip_tables modulra, az iptables-restore.c-ben nincs.


	if (!*handle)
		*handle = iptc_init(*table);

	if (!*handle) {
		/* try to insmod the module if iptc_init failed */
		iptables_insmod("ip_tables", modprobe);
		*handle = iptc_init(*table);
	}

Ugyanez a restore-nál:



	handle = iptc_init(tablename);
	if (!handle) {
		exit_error(PARAMETER_PROBLEM, "%s: unable to initialize"
			"table '%s'\n", program_name, tablename);
		exit(1);
	}
	return handle;

És pont ez az, amit mondok: a fenti kódot copy-pastelni kéne az iptables-restore-ba is (és persze az iptables-save-be, ip6tables-restore-ba, ip6tables-save-be, ...), hogy ne kelljen az indítása előtt valakinek betöltenie a szükséges modult.

(alternatíva: a netfilter-persistent.service-be még egy ExecStart=modprobe ip_tables, de az meg nem működne, mert a egybe akarják fogni a netfilter dolgokat, ami saját plug-in kezeléssel jár, ezért batch script (a /usr/sbin/netfilter-persistent egy mappából indítgatja a plug-injeit...) oldja meg azt, amit több, független unit-nak kéne inkább [amik akár lehetnének WantedBy=netfilter-persistent.service-ek is]...)

[egyébként nem ez az egyetlen "systemd"-bug a Debian környékén és amíg ragaszkodnak az init scriptekhez, maradni is fog jó pár... nekem a személyes kedvencem a start-stop-daemon-os init scriptjeik, amik miatt a systemd-s process követés semmit nem ér... ha pl. egy lxc hoston és konténerben is fut egy winbind, a hoston indított winbind restart szépen lecsapja az összes konténer összes winbind processét...]

BlackY
--
"en is amikor bejovok dolgozni, nem egy pc-t [..] kapcsolok be, hanem a mainframe-et..." (sj)

Szerintem régi kódot használsz.

iptables-restore.c, az 1.4.21-ben:

static struct xtc_handle *create_handle(const char *tablename)
{
struct xtc_handle *handle;

handle = iptc_init(tablename);

if (!handle) {
/* try to insmod the module if iptc_init failed */
xtables_load_ko(xtables_modprobe_program, false);
handle = iptc_init(tablename);
}

if (!handle) {
xtables_error(PARAMETER_PROBLEM, "%s: unable to initialize "
"table '%s'\n", prog_name, tablename);
exit(1);
}
return handle;
}

És pont ez az, amit mondok: a fenti kódot copy-pastelni kéne az iptables-restore-ba is (és persze az iptables-save-be, ip6tables-restore-ba, ip6tables-save-be, ...), hogy ne kelljen az indítása előtt valakinek betöltenie a szükséges modult.

De az a gond, hogy az iptables kivételével senki nem tudja, hogy mire van szüksége az iptables-nek. Ergó nem tudod "automágikusan" megoldani az első modul betöltését, ezen semmilyen systemd nem tud segíteni: valakinek meg kell mondania, hogy ez oda kell. Az a valaki az iptables írója - lehet modprobe, lehet rc script/systemd konfig, bármi, de a csomag gazdájának kell ezt megtennie.

amíg ragaszkodnak az init scriptekhez,

Máshol, mások meg tudták azt is csinálni, hogy a legacy init scriptekkel is működjenek a dolgok, amennyire ez elméletileg lehetséges (a processzkövetés pl. simán megy), de semmiképpen sem rosszabbul, mint amikor még minden init scriptekkel ment. Klasszikus "maradjunk kompatibilisek az előző dolgokkal". Ha a systemd-nek ez nem sikerült (nem tudom, csak gondolom abból, amit írtál), akkor az ő készülékükben van a hiba.

Nade ki fogja azokat megírni? Ha a rendszergazdától várjuk, nagyon gyorsan el tud párologni a user base. Ha az alkalmazások íróitól várjuk - nos, azt várhatjuk... a disztró maintainerek és a systemd fejlesztői pedig nemes egyszerűséggel nincsenek abban a helyzetben, hogy a világ összes alkalmazásához ezt meg tudják írni.

Klasszikus "maradjunk kompatibilisek az előző dolgokkal"

Igen, csak az előző dolgok voltak hibásak és a systemd sajnos próbál kompatibilis maradni. A scriptek tele voltak/vannak start-stop-daemon hívásokkal, amik gyakorlatilag megfelelnek egy killall-nak, ha nem adsz meg pid-et (szó szerint szerepel a man page-ben). Hogy viselkedik egy LXC hoston kiadott killall, ha fut olyan process a konténerben is? Kilövi a francba a konténerben futót is.

Szerk.:

Szerintem régi kódot használsz.

Jogos (git.netfilter.org-on nézegettem, lehet, úgy tűnik, átléptem 1.4.0 körüli commithoz - ott találtam meg az idézett kódrészletet). Viszont a lényegen nem változtat: egy csomó, különböző utility-ban kell kódot karbantartani, mert az ő felelősségük lett a modulok betöltése...

[viszont ha már az ip_tables modult is magától betölti az iptables-restore, akkor tök felesleges a függőség a netfilter-persistent és a systemd-load-modules között, tehát a linkelt bug reportoknál az a vita is az, hogy Requires helyett legyen Wants, mert nincs is valós függőség... szóval Debian package maintainer bug :) ]

BlackY
--
"en is amikor bejovok dolgozni, nem egy pc-t [..] kapcsolok be, hanem a mainframe-et..." (sj)

Igen, csak az előző dolgok voltak hibásak és a systemd sajnos próbál kompatibilis maradni. A scriptek tele voltak/vannak start-stop-daemon hívásokkal, amik gyakorlatilag megfelelnek egy killall-nak, ha nem adsz meg pid-et (szó szerint szerepel a man page-ben)

Akkor szerintem nem értjük egymást. A szar scriptek problémája a systemd szemszögéből MVP (Más Valaki Problémája), azt majd a csomag írója vagy maintainere megoldja. A systemd feladata annyi, hogy a jól futó init scripteket legalább olyan minőségben futtassa, mint ahogy azok /sbin/rc (vagy bármi más) alatt futottak anno. Ez egyáltalán nem lehetetlen, másnak összejött.
Ha a script nem kezeli azt, hogy több instance lehessen, akkor az már nem a systemd problémája - az systemd nélkül is fennállna. Na azt majd kezelik mások.

szóval Debian package maintainer bug

Hát mondjuk ezen azért nem lennék meglepődve... (a Debian entrée-ja elég rosszul sült el nálam anno sok-sok éve, amikor hirtelen kellett egy bármilyen Linux telepítő, és éppen csak egy Debiant tudtak adni, és éppen licenchuszárkodtak, így nem volt semmilyen ssh kliens a telepítő cd-n... azt szerezzek magamnak, ahonnan tudok, ők leszarják - hát így esett, hogy inkább elmentem a sajátomért, mint hogy a Debiannal szívjak).

Kb. 2000-ben volt.
A licenchuszárkodás lényege, hogy egy elméleti előny (az általuk fontosnak tartott, a licencben megjelenő elvont értékek, aka GPL-mánia és társai) fontosabb, mint a valódi felhasználók valódi problémái (a felhasználónak hadd ne kelljen már azért szopnia, hogy egy olyan komponens ránőjön a rendszerére, ami amúgy 100-ból 99.9 felhasználónak szükséges).
Itt valami olyasmi volt, hogy a ssh csomag licence nem volt eléggé "free" nekik, ezért nem rakták rá a telepítőre.
Akadnak ilyen licenchuszár bandák most is, csak nem ennyire reflektorfényben.

Ugy tunik valoban, a wikipedia szerint [1] a 2000 augusztusi 2.2-es debianban jelent meg az OpenSSH. Abban nem lehet mervado velemenyem, hogy 100-bol 99.9 felhasznalo hianyolta-e az 1999-es 2.1-bol az SSH-t (en meg siman telnetezessel kezdtem), de mivel az elso OpenSSH 1999 decemberi a wikipedia szerint [2], maximum az akkor mar nem igazan free (hence openssh...) original ssh-rol lehet szo, amit kicsit olyan a debianon szamonkerni, mint egy gyermeketkeztetesi alapitvanyon az ettermi vacsid ki nem fizeteset. Egy szervezet legfontosabb/alapito dokumantumaban szereplo cellal/tevekenyseggel ellenteteset elvarni toluk a sajat hasznunkra, ingyen es bermentve? Nem hinnem, hogy az adott szervezet csinal valamit rosszul, ezzel pejorativ jelzoket kierdemelve.

> elméleti előny (az általuk fontosnak tartott, a licencben megjelenő elvont értékek, aka GPL-mánia és társai)

Elmeleti elony? Elvont ertekek? GPL-mania? Ugy erted a torvenyek, szerzodesek betartasa csak elmeleti, elvont dolog, de "nem kelljen mar szopni"? Ha ugy kenyelmesebb beverem a szomszed ablakat es elviszek ezt-azt? Es ha a te bicajodat, penzedet, szoftveredet lopnak akkor csak legyintenel, hogy aaaa vigyek csak, nem akarok itt lopashuszarkodni, meg licenchuszarkodni. Raadasul ezt kiterjedt szervezettol el is varni?

Na ezert nem ertem ezt a huszarozast. Segits, hogy mit ertek felre, ez igy tul vad, hogy igaz legyen, nem feltetelezek rolad es sok mas hupperrol ilyesmit.

[1] https://en.wikipedia.org/wiki/Debian_version_history
[2] https://en.wikipedia.org/wiki/OpenSSH

Az 1-es ssh-ból léteztek még free verziók. Ami bármennyire is régi volt már 2000-ben, még mindig egy klasszissal biztonságosabb volt, mint egy buta telnet. És az sem volt megtiltva, hogy valaki kijavítson hibákat benne, ha talált.

Hogy hány felhasználó hiányolta és hány nem, azt nem tudom, de hogy 2000-ben telnettel ISP-ken keresztül szervert üzemeltetni minimum elavult (ha nem éppen felelőtlen) dolognak számított, azt biztosan. Ebből azért lehet következtetni, hogy mennyi igény volt ilyesmire...

Ha csak az lett volna az opció, hogy törvényt sértünk vagy nem, akkor igazad lenne. A licenchuszárkodás lényege, hogy akkor sem rakjuk bele a nekünk nem tetsző licencű dolgot, ha amúgy erre jogilag lenne lehetőség, és a felhasználók részéről van igény. Mert csak.

Akkor a 99.9% egy nem tudomma finomodott. (Persze, az igaz, hogy igeny biztos volt, leven a telnetezes verciki volt, ki is kopott gyorsan.)

> Mert csak.

Akkor az ilyen huszarok teljesen erthetetlen modon a sajat erdekeik ellen cselekvo, onsorsronto alakok/szervezetek?

Nem lehet, hogy megis volt valami ertelme a "mert csak"-on kivul?

Pl.: A debian mogott allo jogaszok (SPI Inc.) azt mondtak nem franko? (Nem tudom akkor mar letezett-e a ceg, stb.)
Vagy egy alapitvany perelheto es/vagy elvesztheti kozhasznu jelleget, ha az alapito okiratban szereplokkel ellentetesen cselekszik? Arrol nem is beszelve, hogy mi a feneert cselekedne a fo celjaval ellentetesen. Akinek nem azonosak a celjai, az keressen masnal megoldast a problemaira.

Kerdes: ha egy apt repobol installalsz valamit, es olyan fuggosegeket is behuz, amire jozan esszel nincs magyarazat, akkor az az apt hibaja, vagy a package maintainer-e?

Miert a fuggosegkezelo rendszert hibaztatod, amikor valaki rosszul konfiguralta be a fuggosegeket?

----------------------
while (!sleep) sheep++;

+1

Van néhány alapból openrc-s disztró (Gentoo, Funtoo, Arch OpenRC, stb...), de Debian esetén a Devuan talán tényleg a legkézenfekvőbb megoldás, amit érdemes megnézni a topik-indítónak.

"Jegyezze fel a vádhoz - utasította Metcalf őrnagy a tizedest, aki tudott gyorsírni. - Tiszteletlenül beszélt a feljebbvalójával, amikor nem pofázott közbe."

Ezzel óvatosan kell viccelődni, simán oda juthatunk, hogy beleteszik. Anno azt sem gondoltuk, hogy a Windowsban lesz Linux Subsystem meg Bash.

„Pár marék nerd-et leszámítva kutyát se érdekel már 2016-ban a Linux. Persze, a Schönherz koliban biztos lehet villogni vele, de el kéne fogadni, ez már egy teljesen halott platform. Hagyjuk meg szervergépnek stb…” Aron1988@Proharder Fórum

Vagy ha egzotikusabbat akarsz ott a Void runit-el és akár musl-al, vagy az Obarun runit-el vagy S6 -al.
De ha ragaszkodik a topiknyitó a Debian vonalhoz, akkor a Devuan, illetve van vagy egy tucat Devuan base disztró. Az a jó az opeszószban, hogy ha nem akarsz a nyájjal menni, nem muszáj. De ha nem akarsz ezért váltani, akkor "fogd be a szád és evezz".
Én nem szidom a systemd-t, mert nem használom. Már.

Úgy néz ki egy ideig még simán használhatod a Debiant systemd nélkül, legalábbis az alábbiak szerint

http://without-systemd.org/wiki/index.php/Debian_Stretch

"Support status

A January 2017 bug report discussion and a February 2017 mailing list thread indicate that Debian developers are continuing to support sysvinit."
--
Légy derűs, tégy mindent örömmel!