Společnost Espressif (ESP8266, ESP32, …) získala většinový podíl ve společnosti M5Stack, čímž posiluje ekosystém AIoT.
Byla vydána nová stabilní verze 3.5 svobodného multiplatformního softwaru pro editování a nahrávání zvukových souborů Audacity (Wikipedie). Přehled novinek také na YouTube. Nově lze využívat cloud (audio.com). Ke stažení je oficiální AppImage. Zatím starší verze Audacity lze instalovat také z Flathubu a Snapcraftu.
50 let operačního systému CP/M, článek na webu Computer History Museum věnovaný operačnímu systému CP/M. Gary Kildall z Digital Research jej vytvořil v roce 1974.
Byl zveřejněn program a spuštěna registrace na letošní konferenci Prague PostgreSQL Developer Day, která se koná 4. a 5. června. Na programu jsou 4 workshopy a 8 přednášek na různá témata o PostgreSQL, od konfigurace a zálohování po využití pro AI a vector search. Stejně jako v předchozích letech se konference koná v prostorách FIT ČVUT v Praze.
Po 48 letech Zilog končí s výrobou 8bitového mikroprocesoru Zilog Z80 (Z84C00 Z80). Mikroprocesor byl uveden na trh v červenci 1976. Poslední objednávky jsou přijímány do 14. června [pdf].
Ještě letos vyjde Kingdom Come: Deliverance II (YouTube), pokračování počítačové hry Kingdom Come: Deliverance (Wikipedie, ProtonDB Gold).
Thunderbird 128, příští major verze naplánovaná na červenec, přijde s nativní podporou Exchange napsanou v Rustu.
Byly vyhlášeny výsledky letošní volby vedoucího projektu Debian (DPL, Wikipedie). Novým vedoucím je Andreas Tille.
Po osmi měsících vývoje byla vydána nová verze 0.12.0 programovacího jazyka Zig (GitHub, Wikipedie). Přispělo 268 vývojářů. Přehled novinek v poznámkách k vydání.
Poslední měsíc byl plný zajímavých akcí, o kterých Vám bastlíři z projektu MacGyver mohou povědět, protože se na ně sami vydali. Kde všude byli, ptáte se? Objevili se na Installfestu, Arduino Day, Hackaday Europe a tajném srazu bastlířů z Twitteru. A z každé akce pro vás mají zajímavé poznatky.
… více »#!/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: