Portál AbcLinuxu, 5. května 2025 23:29
Jestli me ale nutit budou, mam s tim docela problem.Tohle neni zalezitost tvurcu balicku ci distribuce, ale tvurcu baleneho SW. Pokud programatori zacnou vyuzivat systemd a vytvori nejake zavislosti, packager s vyjimkou trivialnich pripadu nema moc moznosti s tim neco delat.
ne, libalsa jej opravdu neumí plně nahradit, navíc se už některé její pluginy, např. dmix, víceméně nevyvíjí, s odkazem na roli PAU alsy si alespon muzu vybrat, jestli chci mixovat softwareove nebo hardwareove. IMO to je zakladni funkce zvukoveho systemu.
Poslední zvukovky s HW mixem podporovaným alsími drivery byly staré soundblastery před 10+ lety.Na to jste prisel jak? Co treba Sound Blaster Audigy Fx, coz je Sound Blaster Audigy 4 s PCIE rozhranim ze zari minuleho roku.
Interně jede v int32, takže žádných 16 bitů.
No ještě aby nejel. Jde o výstupní formát.
Algoritmus si volíš úplně stejně jako v dmixu
Vzhledem k tomu, že jsem je měnil, tak tohle tak nějak vím.
Když PA nastavíš na 96kHz a pustíš do něj 96kHz track, nic se resamplovat nebude.
Ano. Ale když se k tomu přidá další stream, tak už to výkonově nezvládá.
Blogy si přečtu. Nejde o minimální spotřebu, ale o maximální kvalitu.
??
Asi si nerozumíme. PA, ve defaultu, má nastavenou samplerate 44.1kHz/16b. A toto opravdu jde do zvukovky. Při nastavení na 96kHz, jde do zvukovky opravdu 96kHz. Tohle nastavení, pokud bychom nevěřili informacím od PA nebo Alsy (kam PA hraje), lze poměrně jednoduše potvrdit měřením (samplerate 44.1 frekvenci například 40kHz nepřehraje, 96kHz už ano, a u 192kHz jsem celkem pohodlně mohl generovat 70kHz.) Takže ano, PA jede na frekvenci, kterou si nastavím, ale cokoliv nad 48kHz u mě nestíhá. U alsi mám dmix nastaven na 96kHz, protože primární využití této zvukovky je právě přehrávání samplů 96kHz/2, takže logicky chci, aby se jakékoliv jiné sekundární samply (typicky na 44100) resamplovali sem. S alsou mi to funguje.
To je dobře. Tak jak se tedy liší?
U speex-float-0 jdou celkem jasně slyšet artefakty při přehrávání samplu 96kHz do standardních 44100. Při samplerate_best, což třeba alsa, nebo i například deadbeef stíhá, nikoliv.
O minimální spotřebu CPU jde, protože vyšší kvalita libsamplerate spolehlivě zahltí CPU a způsobí xruny. Proto nemůžeš nakonfigurovat PA/dmix s touto volbou.
Ano, ale není úplně nezbytně nutné používat pouze a jen tu nejnižší.
Jestli je to celé jen bug PA nevím. Vzhledem k nemilosrdně pokračující penetraci PA bych byl celkem rád, kdybych požadovaného nastavení mohl bezproblémově dosáhnout i s PA, protože se tomu v budoucnu stejně nevyhnu. Zatím ale bohužel vidím priority vývoje (pokračuje vůbec nějak?) jinde a to v podpoře všech těch BT zařízení.
Proč používáš tak špatné nastavení?
Nepoužívám.
Na Atomu, co teď píšu, žere aplay při resamplování přes alsu s kvalitou samplerate_best téměř 100%,
U mě cca 40%. 1/16 cpu klidně věnuji na zvuk.
Zatímco na nezatíženém stroji to jeden přehrávací proces alsy ustojí, přes PA zvuk vypadává.
Ano. Děkuji za potvrzení.
V soucasne chvili nevyrabi zadny vyrobce jednoduchy USB codec Audio Class 2.0, ktery by nepotreboval programovat a mel malo vyvodu.Mame kit od XMOSu, ktery to umi, ale je to drahe programovatelne monstrum.
USB zvukovek jsem postavil nekolik s cipy od Texas Instruments, ale jsou bohuzel pouze do 48kHz.PCM2902E?
Fuck systemd from the bottom of my heart. Fuck it. Fuck it. FUCK SYSTEMD. I do not want to learn systemd. I do not want to deal with systemd. I hate the way it does things. I hate the way their community works. I hate that it does so much. I hate that it changes the system. I hate what it is: system Daemon.Dať tomu punkový podmaz a môže to byť hit, nenachádza sa tu nejaký umelec čo by to naspieval? Rád by som si to dal ako zvonenie.
správný selinux kontext nezávisle na tom, kdo službu spustíSelinux je další příklad molochu, který se snaží dělat všechno.
to samé pro cgroupsDěkuji, ošetřím si sám tak, jak potřebuju. Jenže systemd mě nenechá.
Další vlastnosti postavené nad cgroups jsou pokud vím volitelné (nemusíš je mít vůbec zapnuté v jádře a systemd naběhne)hm, nevím, co myslíš "zapnuté", ale řekl bych, že tvé informace se poněkud rozchází s tím, co mi posledně říkal Seki - a) jádro musí být zkompilované s podporou cgroups b) jsou dva levely použití cgroups, systemd se obejde bez druhého - tady si nejsem jistej, už je to nějakej pátek, moje paměť je chabá a nejsem jadernej expert, ale v principu jsem to pochopil tak, že ty pravidla musí jít nadefinovat, ale už se za běhu nemusí používat (aby se vlk nažral a koza zůstala celá)
a) jádro musí být zkompilované s podporou cgroupsTo je naprosto v souladu s tím, co jsem psal.
Systemd a jemu podobny je bordel - a jde presne proti filozofii unixu/linuxu = delat jednu vec a delat ji poradne. … Klasicky rc scripty jsou podle me na serveru nejlepsi.Shell je možná navržen, aby dělal jednu věc a dělal ji pořádně, ale spouštění systémových služeb to není. Klasické RC skripty jsou spíš ukázka toho, k čemu všemu se dá shell zneužít – celkem úspěšně zneužít, vzhledem k době, po kterou se toto řešení používá.
a jde presne proti filozofii unixu/linuxu = delat jednu vec a delat ji poradne.Jako treba Linux kernel?
nesrovnavam kernel se systemd...ve vlákně, které se zabývá systemd.
jestli tedy samotny monoliticky Linux kernelOn ten "monolitický" kernel má docela dost modulů. A taky má členění na jednotlivé subsystémy, které fungují dost nezávisle na sobě (a dají se - minimálně při překladu - vypnout, když něco nepotřebujete.)
...ve vlákně, které se zabývá systemd.Nahore borci resi zvukovky ... co takhle zacit srovnavat zvukovy mixer a systemd ....
On ten "monolitický" kernel má docela dost modulů. A taky má členění na jednotlivé subsystémy, které fungují dost nezávisle na sobě (a dají se - minimálně při překladu - vypnout, když něco nepotřebujete.)Videl jste zdrojove kody systemd? Modularni architektura, vystupem je 70+ binarek, cast nemusi byt vyuzivana a instalovana. Namatkou:
/usr/bin/bootctl /usr/bin/hostnamectl /usr/bin/journalctl /usr/bin/kernel-install /usr/bin/localectl /usr/bin/loginctl /usr/bin/machinectl /usr/bin/systemctl /usr/bin/systemd-analyze /usr/bin/systemd-ask-password /usr/bin/systemd-cat /usr/bin/systemd-cgls /usr/bin/systemd-cgtop /usr/bin/systemd-coredumpctl /usr/bin/systemd-delta /usr/bin/systemd-detect-virt /usr/bin/systemd-inhibit /usr/bin/systemd-machine-id-setup /usr/bin/systemd-notify /usr/bin/systemd-nspawn /usr/bin/systemd-run /usr/bin/systemd-stdio-bridge /usr/bin/systemd-tmpfiles /usr/bin/systemd-tty-ask-password-agent /usr/bin/timedatectl ....To pro vas monolit horsi nez kernel?
Videl jste zdrojove kody systemd? Modularni architektura, vystupem je 70+ binarek, cast nemusi byt vyuzivana a instalovana.Asi tak nějak. Někdy mi přijde, že někteří kritici systemd nikdy nevyzkoušeli a neviděli. Na netu se všude píše, že je to monolitický moloch, tak je potřeba to opakovat. systemd rozhodně není méně modulární než Linux.
6.3.1: A draft resolution or amendment may be proposed by any member of the Technical Committee. There is no minimum discussion period; the voting period lasts for up to one week, or until the outcome is no longer in doubt. Members may change their votes. There is a quorum of two.
No detailed design work. The Technical Committee does not engage in design of new proposals and policies. Such design work should be carried out by individuals privately or together and discussed in ordinary technical policy and design forums. The Technical Committee restricts itself to choosing from or adopting compromises between solutions and decisions which have been proposed and reasonably thoroughly discussed elsewhere.A můj pocit je, že ten Ianův návrh byla vlastně nová policy, což je mimo jurisdikci tech-ctte. A osobně doufám, že jeho úlet s ultimátem (buď budete hlasovat pro moje návrhy nebo jdu okamžitě podpořit libovolnou GR) byl jenom výsledek aktuální emoce a nikoli něco, co by doopravdy šel udělat.
zalez, pokrytecka spino.Klid.
debian nepouzivas,A to vite jak?
pracujes pro RHNe.
takze tvoje postoje jsou trochu biased :/Subjektivni,jako kazdeho.
Asi se jen snaží zabránit monopolu systemd, jak jen může. Koneckonců systemd/upstart/openrc/etc. není technická volba, ale politická. Jen si to nikdo nechce přiznat. Pokud by to byla jen technická záležitost, nebylo by kolem toho tolik povyku.
Asi se jen snaží zabránit monopolu systemd, jak jen může.Tak mel zacit pracovat pred lety na podobne pouzitelne alternative. I kdyz on spise ne, viz. jeho napady jak "vylepsit" systemd - koulel jsem ocima - jak znasilnit SIGSTOP (LP mu slusne vysvetlil proc rozhodne ne) ci aplikovat pozadavky na maintainer scripts na systemd unity (odmitli debianni maintaineri systemd).
není technická volba, ale politickáTo je sakra z podstatne casti technicka volba.
Nevím, kdo to používá, ale když jsem přecházel na Debian, jako pro mě relativně neznámý systém, tak přímo na webu měli napsáno, že pro běh na serveru doporučují právě kFreeBSD.
K tématu - buď pro ne-linuxy nechají klasický init nebo hádám že upstart.
Ano, proč dělat věci jednoduše, když to jde složitě.
Potom je to firewall (takový Juniper je uvnitř bsd).A máte opravdu pocit, že klasické pf je to, co je v Juniperu?
Co se týká benchmarků na Phoronixu, ty jsou samozřejmě diskutabilní, ale zrovna tenhle konkrétní mluví jasně.
Hovoří jasně ale o čem. Když budu mít dvě disková pole, je lepší to co má 500MB/s, nebo to, co má 250MB/s? Dá se o tom rozhodnout? Podle účelu, že jo. Pokud bude mít první pole 100IOPSů a druhé 10 tisíc, tak dám DB na to druhé. Bude to mnohem rychlejí. Pokud by to bylo diskové pole na image dvd disků, tak se hodí to první. A co když najednou zjistím, že to druhé pole je sestaveno jako 20 disků v RAID0? Sice vyhrálo, ale data se tam moc dlouho neohřejou.
Udělat vypovídající benchmark především vyžaduje znalost situace, kterou měřím. A porovnat dva systémy podle benchmarků vyžaduje znalost nasazení toho systému. Systém, který bude sice pomalejší, ale bude reagovat v každém okamžiku stále stejně rychle, bude pro některá nasazení výhodnější, než celkově rychlejší systém, který má ale "sezoní" výkyvy.
Phoronix měří sice dobře, ale celkem nesmyslné veličiny.
Nevím, kdo to používá, ale když jsem přecházel na Debian, jako pro mě relativně neznámý systém, tak přímo na webu měli napsáno, že pro běh na serveru doporučují právě kFreeBSD.Tak to vidím spíš na nějaké nepochopení, než na oficiální doporučení na straně Debianu.
grub-legacy
.
Jenze Grub2 muzes ve vetsine pripadu vymenit za jiny bootloader jako Lilo nebo puvodni Grub aniz by se ti neco rozsypalo.Syslinux. Používám všude a naprostá spokojenost.
Myslím, že úplně původní záměr pro vznik systemd bylo sjednocení init systémů napříč distribucemi, aby vývoj nástrojů pro konfiguraci init systémů byl jednodušší a aby pro aplikace existovalo nějaké sjednocené rozhraní pro zjišťování zda nějaká služba běží apod.Ehm...
Řekni mi prosímtě pro koho je dobrá možnost volby jádra v Debianu a kdo jí využívá.Máš pravdu, že Debian je vhodnější jako komoditní systém než na nějaké open source hrátky a pro komoditní systém je už v tuhle chvíli systemd nejlepší možnou volbou díky jeho nasazení v komerčních distribucích. Pak ovšem nastává otázka, proč tam ta možnost volby vůbec vznikla.
Systemd je nejlepší volbou, protože má nejlepší návrh, užitečný featury a protože ho využívají důležité aplikace, což je důvod proč se tak prosazuje.Podle mě je pro Debian nejdůležitější mít service manager, na kterém budou hákovat jiní a který bude podporován upstreamem aplikací. Jak se k tomu ten service manager dostane, je zajímavé leda do hospodských diskuzí.
Stejně tak je dobře to, že se taky konečně bude jednat o nástroj kterému není ukraden stav procesu. Třeba z takového Gentoo si moc dobře pamatuji jak skvěle funguje "/etc/init.d/apache2 status". Asi tak, že když existuje pid soubor, tak běží!a jak myslíš, že funguje v systemd? - jakože když ti systemctl status řekne, že je active, tak to zaručuje, že je schopen vyřídit http request? - ha ha ...
Stejně tak moc dobře znám jak funguje hlídání procesu když z nějakého důvodu havaruje, prostě zhebne a dokud nepřijde admin, tak neběží! Přitom proč proces nezkusit spustit znova, beztak první věc co admin dělá je to, že proces spustí, aby nebyly omezeny jím nabízené služby a pak teprve ladí co a proč se to stalo.a protože je admin debil a neumí si nainstalovat něco na monitoring, tak to musíme narvat do initsystému a všem, i těm, co žádného apache nepouští ...
Stejně tak je dobře to, že se taky konečně bude jednat o nástroj kterému není ukraden stav procesu. Třeba z takového Gentoo si moc dobře pamatuji jak skvěle funguje "/etc/init.d/apache2 status". Asi tak, že když existuje pid soubor, tak běží!a jak myslíš, že funguje v systemd? - jakože když ti systemctl status řekne, že je active, tak to zaručuje, že je schopen vyřídit http request? - ha ha ...
# systemctl status nginx nginx.service - The nginx HTTP and reverse proxy server Loaded: loaded (/usr/lib64/systemd/system/nginx.service; enabled) Active: active (running) since Tue 2014-02-11 00:35:30 CET; 1s ago Process: 2493 ExecStop=/bin/kill -QUIT $MAINPID (code=exited, status=0/SUCCESS) Process: 2500 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS) Process: 2497 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS) Main PID: 2501 (nginx) CGroup: /system.slice/nginx.service ├─2501 nginx: master process /usr/sbin/nginx ├─2502 nginx: worker process └─2503 nginx: worker process Feb 11 00:35:30 hostname nginx[2497]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok Feb 11 00:35:30 hostname nginx[2497]: nginx: configuration file /etc/nginx/nginx.conf test is successful Feb 11 00:35:30 hostname systemd[1]: Started The nginx HTTP and reverse proxy server.že by byla odpověď ano?
nicméně jediná informace o aktuálním stavu o aktuálním stavu nginxu je to active "running", vše ostatní jsou informace o průběhu startování,nebyla pravda a je to celkem jednoduse implementovatelne. Onen Apache vraci pres systemctrl obsah promenne STATUS, ktera zobrazuje vnitrni data ziskana pres ap_get_sload(). Tusim, ze to implementovali lide dokonce od vas z Brna.
Jenze to je jina otazka,ano, ale s tou jsme začali, tak jsem se jen ujišťoval, že objížďka, kterou jste to s kolegou vzali, nemění nic na tom, co jsem výše říkal já
ktera az tolik nesouvisi se systemd.zatím
Systemd jen umoznuje naintegrovat monitoring lepe,lépe než co?
dat uzivateli urcity stupen kontroly a to generickym zpusobem,výše uvedený příklad, jestli ho správně chápu, tedy vůbec není generický zbytečně jsem se prve zaleknul, nepodíval jsem se, že ten soubor má jen pár řádků
rv = sd_notifyf(0, "READY=1\n" "STATUS=Total requests: %lu; Idle/Busy workers %d/%d;" "Requests/sec: %.3g; Bytes served/sec: %sB/sec\n", sload.access_count, sload.idle, sload.busy, ((float) sload.access_count) / (float) up_time, bps);hm, no tak sorry, ale to dává nulovou informaci o zdraví démona, a ještě navrch to dává smysl jen pro Apache
lépe než co?Lepe nez soucasne inity s kdysi vyznamou pozici v Linuxu*.
výše uvedený příklad, jestli ho správně chápu, tedy vůbec není generickýGenericky je stabilni interface.
hm, no tak sorry, ale to dává nulovou informaci o zdraví démonaNulovou - urcite ne. Dobre udelany monitovaci framework mi neselhal za posledni roky snad nikdy (pokud neslo do kytek cele CPU - treba nestabilni napajeni - ci cele jadro OS - a pak to resil HW watchdog ci host controller).
, a ještě navrch to dává smysl jen pro ApacheAno, ale take se vam to zobrazi jenom u statusu Apache
aha; no ale ty si toto za cíl nekladou myslel jsem to spíše tak, že má-li se něco takového zavádět, nemusí to být nutně součástí systemd (ehm, tedy: naopak by to součástí systemd být nemělo) když se teď pracuje na kdbus, co takhle nad tím nadefinovat, jak by měli démoni informovat o svém stavu, přičemž to bude moci poslouchat kdokoli? - proč tady máme mít zase jenom bazmek specifický pro systemd?lépe než co?Lepe nez soucasne inity s kdysi vyznamou pozici v Linuxu*.
*) Musim stanovit podminky tak abych vyradil OpenRC, ktere sice plno veci "ma", ale nic poradne.
Genericky je stabilni interface.který je ovšem z hlediska monitoringu k ničemu, viz níže ...
nerozumím, jak z toho, že ti něco léta funguje, vyvozuješ, že výše uvedené dává nenulovou informaci o zdraví démona (pomineme-li to, že to dává informaci, že část posílající tyto zprávy žije, což je uživateli, který se nemůže dobouchat na svůj oblíbený web, k ničemu)hm, no tak sorry, ale to dává nulovou informaci o zdraví démonaNulovou - urcite ne. Dobre udelany monitovaci framework mi neselhal za posledni roky snad nikdy (pokud neslo do kytek cele CPU - treba nestabilni napajeni - ci cele jadro OS - a pak to resil HW watchdog ci host controller).
Ano, ale take se vam to zobrazi jenom u statusu Apacheno, takže jinými slovy říkáš, že to není univerzálně (tedy "genericky") použitelné - na druhém konci musí sedět opice s křišťálovou koulí, která vyčte, co tím chtěl Apache říci a jestli je potřeba ho restartovat nebo něco, a vedle toho jiná opice, která to samé bude dělat pro sshd, a vedle jiná opice pro xdm, atd. atd., namísto aby stačila jedna opice bez křišťálové koule, která bude reagovat na zprávy z nějakého setu sjednoceného přes všechny služby (které se mají monitorovat) hmpf .... Jiste, tohle je server specific, jiny server vam bude zobrazovat jiny status - jak to jeho autori implementuji.
Za prve, nahore si stezuji, ze u statusu je jen "running" a nic co by indikovalo cinnost od vlastni sluzby.pardon, trošku jsem se v tomto vlákně ztratil, mělo se to rozdělit do dvou větví, pak bych hned viděl, kde se bavíme o dostupnosti služby, a kde o poníkách
Ja k tomu dodavam, ze systemd umoznuje pres genericky stabilni interface nastavit promennou STATUS, ktera preda dalsi uzitecne udaje, ktere se pak zobrazi. Je na programatorech aplikace vratit neco, co umoznuje adminovi posoudit v jakem stavu sluzba je a naivne predpokladam, ze programatori postupne vyjdou adminum vstric.trošinku offtopic, ale nad tímto odstavečkem jsem se musel zasmát - argumentem Billa Nothinghama proti zachování kompatibility výstupu
service blabla status
bylo, že si stejně každá služba vypisuje co chce[*], a že takhle po novu je to krásně přehledné a jednotné ... načež je obhajována možnost, aby si každá služba psala co chce, príma Interface, vcetne zminenych promennych, je genericky, lze ho implementovat u vsech sluzeb, a bude bez vetsich uprav chodit ve vsech distribucich pouzivajicich systemd, coz krome Ubuntu jsou dnes vsechny vyznamne distribuce. Vidim v tom pokrok.já v tom vidím krok do prdele, jak jsem již naznačil výše pokud "ho lze implementovat", tzn. zatím implementován není (až na ten Apache?
Konec, diskuze o systemd me uz *********.tohle bych si měl zabookmarkovat a při nejbližší příležitosti (hádám max tři dny) použít
Není to tak jednoduché, do doby systemd totiž nešlo stav procesu zjišťovat jinak než existencí pid souboruSnad nechceš tvrdit, že byl systemd prvním správcem služeb? Pokud vím, tak nebyl ani prvním, který byl schopný sledovat forkované procesy.
Systemd právě řeší ty problémy co nikdy nikdo neřešil.Takhle nějak se to bude učit ve školách, stejně jako že Edison vynalezl žárovku.
Díky tomu totiž bude možné aby proces sám od sebe notifikoval svůj stav směrem k init systémuVe skutečnosti je to směrem ke správci služeb. Že je v systemd správce totožný s initem, je jen implementační detail. Jsi si jistý, že před systemd nikdo nikdy nepoužíval komunikaci mezi službou a správcem služby? Jak to funguje v Upstartu? Jak to funguje v launchd? Jak ve Windows? Zásluha systemd je především v některých v popularizaci (aka vnucení) a v některých technických detailech. Ale hádám, že už moje děti se budou ve škole učit, že Linus Torvalds napsal jádro a Lennart Poettering k němu dodal zbytek operačního systému :D.
Debian u MySQL má po mysqld hned mysqlcheck, jenže v Redhatu je to taky tak?testuje se to pomocí mysqladmin
Ano. Ma uzasnu schopnost argumentacie. Zapliest tam vec co s tym vobec nesuvisi. Je to o kontrole processu a nie kompletom monitoringu aplikacie.souvisí, jak již je diskutováno okolo, a jak ještě rozeberu níže
Urcite ten rozdiel chape ale ked sa jedna o systemd tak racionalita ide stranou.já to vidím naopak, snažil jsem se vnést trošku racionality do toho blábolu od zakladatele threadu jednak, jak už jsem odpovídal kolegovi, jde v tomto konkrétním případě o bug, a nikoli vlastnost initsystému a jednak je toto uměle vykonstruovaný příklad, jako admina mě uživatelé bombardují nadávkami "nejde ti web!" a nikoli "neběží ti proces `cat /var/run/httpd/pid`!" takže pokud bych řešil monitoring, tak ho postavím nad dostupností služby, a nikoli nad výstupem "service httpd status"
Kavol ale nepsal o kontrole běhu procesu, nýbrž o schopnosti vyřídit HTTP request. Tipuju, že dobře ví, proč to formuloval zrovna takto...ano, děkuji ti náčelníku ... zrovna slowloris jsem na mysli neměl, nicméně řekl bych, že většina CVEček, co mi v poslední době prošlo rukama, byly nějaký denial-of-service, takže si dovedu představit, že zákazníka zajímá spíše jestli služba funguje, a ne jestli to adminovi hlásí, že běží (kromě toho příklad výše je jasným porušením standardu, případ mrtvého démona a existujícího PIDfile má dokonce nadefinovaný zvláštní chybový kód ve statusu, tzn. šlo o bug a ne o featuru, tedy je nefér používat to pro tvrzení, že initskripty jsou konkrétně v tomto oproti systemd principiálně špatné)
Třeba z takového Gentoo si moc dobře pamatuji jak skvěle funguje "/etc/init.d/apache2 status". Asi tak, že když existuje pid soubor, tak běží!Nedalo mi to a vyzkoušel jsem:
# /etc/init.d/apache2 status * status: started # killall apache2 # /etc/init.d/apache2 status * status: crashedDělám něco špatně?
Goliath ~ # /etc/init.d/apache2 status * status: started Goliath ~ # ps ax|grep -i apache 5222 pts/0 S+ 0:00 grep --colour=auto -i apache 6642 ? Ss 0:00 /usr/sbin/apache2 -D DEFAULT_VHOST -D PHP4CGI -D DAV -D DAV_FS -D SVN -D SVN_AUTHZ -D SSL -D NAGIOS -D PERL -D PHP5 -D SSL_DEFAULT_VHOST -D PROXY -d /usr/lib/apache2 -f /etc/apache2/httpd.conf -k start 6644 ? S 0:00 /usr/sbin/apache2 -D DEFAULT_VHOST -D PHP4CGI -D DAV -D DAV_FS -D SVN -D SVN_AUTHZ -D SSL -D NAGIOS -D PERL -D PHP5 -D SSL_DEFAULT_VHOST -D PROXY -d /usr/lib/apache2 -f /etc/apache2/httpd.conf -k start 24978 ? Sl 0:48 /usr/sbin/apache2 -D DEFAULT_VHOST -D PHP4CGI -D DAV -D DAV_FS -D SVN -D SVN_AUTHZ -D SSL -D NAGIOS -D PERL -D PHP5 -D SSL_DEFAULT_VHOST -D PROXY -d /usr/lib/apache2 -f /etc/apache2/httpd.conf -k start 25020 ? Sl 0:47 /usr/sbin/apache2 -D DEFAULT_VHOST -D PHP4CGI -D DAV -D DAV_FS -D SVN -D SVN_AUTHZ -D SSL -D NAGIOS -D PERL -D PHP5 -D SSL_DEFAULT_VHOST -D PROXY -d /usr/lib/apache2 -f /etc/apache2/httpd.conf -k start Goliath ~ # killall -9 apache2 Goliath ~ # /etc/init.d/apache2 status * status: started Goliath ~ # ps ax|grep -i apache 5253 pts/0 S+ 0:00 grep --colour=auto -i apache Goliath ~ # /etc/init.d/apache2 start * WARNING: apache2 has already been started. Goliath ~ # /etc/init.d/apache2 stop * Stopping apache2 ... httpd (pid 6642?) not running [ ok ] Goliath ~ # /etc/init.d/apache2 start * Starting apache2 ... [ ok ] Goliath ~ #
hlavně jsem myslel, že už tam bude OpenRC, ale není...Což ovšem, vzhledem k známé vazbě OpenRC a Gentoo, docela dost mění původní vyznění. Inu inu...
Prostředí, kde každá věc na serveru (init, mdadm, ...) reportuje problémy separátně na vlastní triko je při větším počtu systéů neudržitelná...Jako bych slyšel Lennarta při návrhu journald ;).
Mě v produkci v 99% případů proces lehl kvůli nějakému specifickému požadavku nebo shodě náhod a v takových případech když se proces znovu spustí, tak vše bez problémů funguje dál - dokud nenastanou opět dané podmínky. Je mi milejší aby se proces zkusil znovu spustit a v případě, že bude stále havarovat, tak mu dát tři pokusy a dost, než aby hned po prvním problémů byl proces mrtvý a čekal na admina a pro uživatele se to tvářilo nedostupné po delší dobu.Jenze pad procesu muze mit i vazne priciny a restartovanim se tvarit, ze je vlastne vsechno ok je zametani pod koberec a koledovani si o pruser. Tohle je mozna jeste ok u desktopu v kiosk modu, ale jinde je to spis projev ignoranstvi.
Zrovna nedávno jsem přemýšlel nad tím, kolik vlastních supervizorů se mohlo ušetřit, kdyby s námi byl systemd už před lety.Na to ti rád odpovím, bylo by jich úplně stejně. Zato kdyby se uchytil multiplatformní service manager nebo ještě lépe obecné service manager API třeba i s více implementacemi, byla by situace značně odlišná. V ideálním případě by šlo používat takový service manager bez závislosti na zadrátování do základu systému, jako tomu bylo u předchozích pokusů.
Zato kdyby se uchytil multiplatformní service manager nebo ještě lépe obecné service manager API třeba i s více implementacemi, byla by situace značně odlišná. V ideálním případě by šlo používat takový service manager bez závislosti na zadrátování do základu systému, jako tomu bylo u předchozích pokusů.Tohoto keby sa niekto s RH chytil a vedel o tom pekne pútavo porozprávať, ale to sa asi nestane. Osobne tieto dva riadky pokladám za väčší prínos ako tisíce riadkov kódu dnešných implementácií.
potřebovali bychom někoho, kdo by udělal tu špinavou práci politikaJj je škoda, že kopu dobrých nápadov zapadne len preto že sa okolo nich nespraví dostatočná propagácia.
RH ešte nikto neukázal, že to ide robiť aj dobreWe are hiring!
Zato kdyby se uchytil multiplatformní service manager nebo ještě lépe obecné service manager API třeba i s více implementacemi, byla by situace značně odlišná. V ideálním případě by šlo používat takový service manager bez závislosti na zadrátování do základu systému, jako tomu bylo u předchozích pokusů.Pěkný nápad. Takové rozhraní by klidně mohlo být vytesáno do kamene v rámci nějakého standardu. Imho by to ale klidně mohlo vzniknout nějakou abstrakcí systemd, je možné, že to tak i dopadne. Ono koneckonců historicky tyhle standardy vznikaly afaik právě tímhle způsobem, totiž že se šlo směrem: jedna nebo vícero ne moc přenosných, nekompatibilních implementací → abstrakce rozhraní a standardizace → lepší přenositelnost, nahraditelnost jedné implementace jinou. Teoreticky je možné začít tím prostředním krokem, v praxi to ale většinou imho nedopadne.
man inittab
.
Až na to, že to naneštěstí v sysvinit nebylo moc dobře použitelné, protože do té definice na jeden řádek (id:runlevels:action:process
) se všechno potřebné pro supervizi procesu nevejde. Každopádně i ten jednoduchý init řeší přesně restart služeb.
diskutuju s předřečníkem, který si stěžoval, že init nemá (nesmí) dělat supervizi.Jde o to, zda to interpretuješ tak, že ji nesmí dělat vůbec, nebo že se o ni má starat v rámci možností co nejméně. Ne vždy se člověk vyjádří úplně tak, jak by chtěl.
Já zase v jednom supervizoru, který je dobře implementovaný v PID 1, vidím tu výhodu, že jej lidi (upstream, distribuce) začne masivněji používat, a poněkud to zlepší stav Linuxových distribucí.Já jsem spíše zastáncem prosazování projektů na základě technických vlastností než politického sjednocování čistě za účelem sjednocování. Ale jak už jsem psal výše, mně nevadí nutně to sloučení s initem, pokud to není jediná možnost. Spíš bych rád viděl, jak si můžu toho správce služeb samostatně testovat a spouštět nad/pod jiným správcem služeb.
Per 6.3.2, I use my casting vote to choose D as the winner. Therefore, the resolution reads: We exercise our power to decide in cases of overlapping jurisdiction (6.1.2) by asserting that the default init system for Linux architectures in jessie should be systemd. Should the project pass a General Resolution before the release of "jessie" asserting a "position statement about issues of the day" on init systems, that position replaces the outcome of this vote and is adopted by the Technical Committee as its own decision. BdaleV následujících dnech očekávám asi tak deset až dvacet návrhů na GR :).
Systemd hateři asi měli moc práce na fórech, a na návrat k sysvinitu nenašli čas.+1
A navíc, když se v openSUSE 12.3 podpora sysvinit rozbila, tak si toho, že se systém po přepnutí do sysvinit ani nenabootuje, nikdo nevšiml celého půl roku.Ale no tak, pozor! Mne je jasne, ze Michal Kubecek to vedel, ale jen si rikal "Dobre vam tak, ted vam to s tim systemd nandam!"
Nechápu, jak je možné, že vůbec někdo rozhoduje o „jednom jediném správném“ init systému, na který se má hned povinně přejít. Stačí se podívat do nedávné historie a poučit se z distribucí, které (narozdíl od Debianu) dávají aspoň trochu smysl.
Není důvod mít za každou cenu pouze jeden init systém. Jak nás učí nedávná historie, ArchLinux měl víc než rok dva init systémy. Uživatel mohl mít zároveň nainstalovaný systemd i původní sysvinit skripty. Pro systemd existovaly doplňky, které zajistily bezproblémovou kompatibilitu s původními init skripty — pro starší balíčky, které ještě neměly unit soubory. Při každém startu systému si mohl uživatel jednoduše kernelovým optionem zvolit, zda chce nabootovat pomocí sysvinit nebo systemd. Později mohl (mohl, ale nemusel) zvolit systemd za implicitní init systém.
Pokud vím, nikdo nestanovil předem, že systemd bude nakonec jediným init systémem. Šlo o dlouhodobý proces. Všechno se postupně vyvíjelo. Během cca roku všechny balíčky s démony postupně získaly kromě init skriptů navíc taky unit soubory pro systemd. Jakmile měli všichni démoni init skripty i systemd units, bylo možné (nikoliv povinné) odinstalovat zpětnou kompatibilitu pro init skripty v systemd a používat už výhradně systemd. Teprve když se systemd celkově osvědčil, po nějaké delší době bylo rozhodnuto o trvalejším začlenění systemd, tedy units se staly povinnou součástí balíčků. Teprve několik měsíců poté byla ukončena podpora pro sysvinit a s ní i povinnost poskytovat init skripty v balíčcích.
Pointa: Vše proběhlo hladce, v rámci rolling updates, žádný infarkt se nekonal a každý uživatel měl minimálně rok na přechod na systemd; mohl se sám rozhodnout, kdy přesně na systemd přejde a zda to už má v jeho případě smysl. A co je nejdůležitější — systemd velmi dlouho podporoval původní init skripty a dal se kdykoliv nezávazně vyzkoušet bez přeinstalování systému a bez zásahů nad rámec běžné instalace balíčků. Kdyby se ukázalo, že systemd je špatná volba, pravděpodobně by nakonec k jeho trvalému začlenění nedošlo.
Přechod na systemd nemusí být problém. Jenže pro Debian je všechno problém. Ze zásady.
Release jsou výborný námět na exponát do Národního technického muzea. Je to takový pozůstatek z dob, kdy se něco posílalo na disketách poštou. Dnes už jsou release absurdní nesmysl, který vede k těm 32768 klíčům v OpenSSL a podobným průšvihům.
Buzzword „produkční prostředí“ mě pokaždé pobaví naprosto spolehlivě. Každý po něm sáhne v okamžiku, kdy nemá absolutně žádné argumenty pro svá tvrzení. Prostředím, za která jsem zodpovědný, ze zásady neříkám „produkční“, protože nemám rád módní prázdná slova bez významu. (Navíc nemám potřebu se kasat vším možným, za co (ne)zodpovídám.) Ovšem jedno vím jistě: V žádném z prostředí, za která jsem zodpovědný, nechci mít ani 32768 klíčů v OpenSSL, ani Debian, ani jiný škodlivý software, který se z principu nedá aktualizovat.
Nedovedu si představit, že po upgradu všech serverů na nový stable se jednorázově kompletně změní init proces a upravené či nedistribuční init skripty přestanou správcům fungovat.máš dosti chabou představivost, protože tak to nejspíše bude - jak jsme již viděli mnohokrát, proč mrhat třemi dny času vývojáře na nějaké pokusy o kompatibilitu a usnadnění, když si to může přeci každý admin/uživatel spravit/obejít sám; co na tom, že v důsledku to bude stát mnoho člověkolet času, z toho netriviální část bude investovat ta samá firma, ale hlavněže ušetřila čas toho vývojáře, resp. hlavněže on ušetřil čas
Proto celou dobu mluvím o přechody mezi stable verzemi debianu.nevidím podrobně do vývoje Debianu, ale pochybuju, že má sílu jít proti upstreamu
Fedora je přece úplně jiný svět s naprosto odlišnými cíly, jaký má smysl to s ní srovnávat?nevím, o jaké konkrétní odlišnosti cílů je zde řeč, ale hlavním cílem je dělat linuxové distro, což znamená, že to má mnoho softwaru společného, a ten software se bere ve stejných upstreamech a jenom se přebaluje (byť tam může být nějaký průnik mezi množinami vývojářů) pochopitelně, software se dá různě patchovat, nicméně jaksi není prací balíčkáře, aby vlastními patchi polovinu funkcionality dodal a druhou polovinu přepsal v konkrétním Dejvově příkladu tedy chyběl modul systemd, který by uměl načíst/zkonvertovat starou konfiguraci - dobrá, Debian si jej může dopsat, ale není to jediná věc; uváděl jsem třeba příklad se změnou výstupu
service
(*), která nám rozbila skripty, a pochybuju, že si Debian bude udržovat vlastní fork, který se bude chovat konzistentně se starou verzí, už třeba jen proto, že by byl z druhé strany bit, že se to chová jinak než u ostatních
(*) pozn. nevím (a nehodlám zjišťovat, je to jen na ilustraci principu), jestli zrovna service
v Debianu vůbec je
Nedovedu si představit, že by mezi verzemi udělali tlustou čáru a řekli "vaše init skripty od další verze přestanou fungovat, předělejte si je dopředu na systemd a až po upgradu si je budete moci otestovat, zda jste se trefili".ehm, Debian nelze nainstalovat v jiné verzi než stable?
To by si zadělali na problémy hlavně sami sobě. Takže jsem přesvědčený, že přechod bude pozvolný (i třeba tak, že nové řešení bude nasazené, ale bude zpětně podporovat staré věci) a bude trvat pár let.v některých případech je ta podpora složitá až "nemožná"[*], opravdu má Debian tolik lidí/času? [*] technicky jde ledacos, ale prakticky - viz příklad výše, opravdu by Debian chtěl, aby se věci po opatchování chovaly zásadně jinak než v ostatních distrech?
Na produkčním serveru se testing ani unstable standardně neprovozují, protože nikdy nevíš, zda se ti po apt-get upgrade nerozsypou.stejně tak se na produkčním serveru neupgraduje mezi releasy, protože nikdy nevíš, zda se ti to nerozsype; pokud životnost serveru přesahuje životnost distribuce, tak se upgrade nejprve otestuje mimo produkci
No nevím, debian používám na produkci od verze potato (2001) a takové zkušenosti s ním nemám.To není možné, takhle dlouho bez systemd nelze fungovat ..
systemd dnes podporuje zpětně /etc/init.d/ skripty
Init systemu muzete mit kolik chcete, jen to nekdo musi udrzovat.ale no tak, o tom už jsme se taky bavili asi stokrát - ono by nebylo potřeba to příliš udržovat, kdyby tomu někdo neházel klacky pod nohy, že ...
Já nevím co tady zase všichni fňukáte. Systemd bude výchozí, ale rozhodně to neznamená, že by debian nešel používat bez něj.To bych poprosil písemně a podepsané pravým jménem, ať si nad to můžem za nějakou dobu sednout a zasmát se tomu.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.