Přímý přenos (YouTube) z konference LinuxDays 2024, jež probíhá tento víkend v Praze v prostorách Fakulty informačních technologií Českého vysokého učení v Praze (FIT ČVUT). Na programu je spousta zajímavých přednášek.
Elon Musk na akci We, Robot (YouTube, 𝕏) představil Robotaxi, Robovan a vylepšeného Tesla Bota (Optimus).
Internet Archive je offline (𝕏, Bluesky, Mastodon). Unikly údaje 31 milionů uživatelů. Probíhal / probíhá na něj DDoS útok.
Alyssa Rosenzweig se v příspěvku na svém blogu rozepsala o hraní AAA her na Asahi Linuxu. Na YouTube je záznam její včerejší přednášky na XDC 2024 (X.Org Developer's Conference).
Vláda schválila Národní polovodičovou strategii: Česká republika má velký potenciál stát se významným hráčem v oblasti výroby čipů, zejména v evropském měřítku. Využít tento potenciál je cílem Národní polovodičové strategie, kterou připravilo Ministerstvo průmyslu a obchodu ve spolupráci s experty, a která navazuje na evropský Akt o čipech.
V lete vyšiel Aeonwave 4.0, ktorý niekoľkonásobne menej vyťažuje procesor pri interpretácií priestorového zvuku než OpenAL Soft. Autor hľadá prispievateľov do knižnice libaaxopenal za účelom pridania ALC_EXT_EFX rozšírení využívaných napr. v hre Doom 3 cez port Dhewm3 v Linuxe.
Linuxová distribuce Ubuntu 24.10 „Oracular Oriole“ byla vydána. Jde o průběžné vydání s podporou 9 měsíců. Obsahuje mj. Linux 6.11 či GNOME 47 s několika odkazy na první vydání Ubuntu (4.10 „Warty Warthog“) před 20 lety. K dispozici jsou také oficiální deriváty s odlišnými výchozími desktopovými prostředími anebo balíky aplikací.
Deno (Wikipedie), běhové prostředí (runtime) pro JavaScript, TypeScript a WebAssembly, bylo vydáno v nové major verzi 2.0 (YouTube). Důležité změny v Migration Guide.
Apache Tomcat (Wikipedie) slaví 25 let. Při té příležitosti byla vydána nová verze 11.0. Přehled novinek v poznámkách k vydání.
Open source 3D herní a simulační engine Open 3D Engine (O3DE) byl vydán v nové verzi 24.09.0. Přehled novinek v poznámkách k vydání. O3DE má nového maskota: Odie.
#!/bin/bash if [ podminky ]; then echo "Server je jiz spusteni!" else PODMINKA NA SPUSTENI VE SCREENU S PRIRAZENYM PIDEMAsi bych si to predstavoval jako neco ve smyslu "screen -A -m -d -S `PRIKAZ`
ps
nebo /proc/<pid>/*. Nějak se ty aplikace nejspíš liší, tak se zamyslete čím a pak je podle toho rozlište v té vaší podmínce. Nejdříve si zjistěte pidof aplikace
, a pak pro získané pid
s zjistěte, jestli je to ta co myslíte, nebo není.
(Nevím bohužel co myslíte tím "jiný core" a "jiné umístění"). Pokud třeba startovací adresář tak to by snad šlo také zjistit z prostředí.
#!/bin/bash MANGOSDIR=/home/mangos/server if (ps -C mangos-worldd ) then echo "status : OK" else echo "status : DOWN" cd ${MANGOSDIR}/bin screen -d -m -S session_name ${MANGOSDIR}/bin/mangos-worldd fiObdobne i pro realmd, pokud take mrzne. A nakonec pridat zaznam do cronu aby to treba kazdou minutu kontroloval.
screen
je proč přesně? Aby docílil toho, co dělá nohup
? Nebo se ten server za běhu interaktivně ovládá a tak na to mám sezení, do kterého se mohu přihlásit?
Nicméně zpět k tazateli: když jste zmínil dvě různé cesty k binárce, tak to bude asi Vaše nejsnazší řešení. Když spustíte s plnou cestou a pak třeba i z ps
to vylámete snadno (ps -o cmd
).
Vaše konstrukce s podmínkou není problém, prostě si napíšete funkci bezi(identifikator_instance)
, která bude vracet true
/false
podle stavu dané instance a podmínka se podle toho zachová.
Pokud byste to mocí mermo chtěl řešit přes PID, musel byste si ho někam pro jednotlivé instance zapisovat při startu (zřejmě /var/run
a pak s ním pracovat).
screen
se v tomhle pripade pouziva proto, ze ten deamon funguje zaroven jako konzole (neni nutna, ale casto se tak vyuziva).
Kazdopadne zapisovani PID po startu by melo byt v tomto pripade samozrejmosti.
Ale nerozumim tomu proc tam mangos-worldd
bezi 2x, pokud na tom serveru jede jediny realm, tak neni duvod, aby tam ten proces byl vicekrat. Pokud je tak pojmenovan ten restartovaci skript, tak to je samozrejme chyba, ten by mel byt napr. mangos-restarter.sh
.
/proc/<pid>
obou procesů? Nenašel jste žádný rozdíl? Na pid se už vykašlete, tím "přiřadit asi nepude" jsem myslel "přiřadit určitě nepude".
nejak evidoval ten mangos-worldd ktery potrebuju
Jak jsem již řekl, zamyslete se a řekněte, jak rozlišujete vy ten magnos-worldd
který potřebujete.
Server je zkompilovaný na stejný verzi a jako /bin pro spusteni je mangos-worldd jenze ten se kompiluje u vsech verzi, tudiz v ps, top je 2x mangos-worldd
Liší se tedy poloha binárky? Může pomoct /proc/<pid>/exe
a podobně.
fork()
žádné parametry nemá.
Krom toho, že i kdyby to šlo, tak by to byl problém, protože dané pid byste také musel být schopen rezervovat, aby je náhodou nedostalo něco jiného.
Asi na to budete muset jít jinak. Napadají mě dvě varianty:
ps
nebo se pohrabat v /proc/<PID/>
.
lsof
nebo zahrabat v /proc/$$/fd/
.
Tiskni Sdílej: