Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.
Byla vydána nová verze 6.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.14.
Byla vydána nová verze 30.0.0 frameworku pro vývoj multiplatformních desktopových aplikací pomocí JavaScriptu, HTML a CSS Electron (Wikipedie, GitHub). Chromium bylo aktualizováno na verzi 124.0.6367.49, V8 na verzi 12.4 a Node.js na verzi 20.11.1. Electron byl původně vyvíjen pro editor Atom pod názvem Atom Shell. Dnes je na Electronu postavena celá řada dalších aplikací.
Byla vydána nová verze 9.0.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 220 vývojářů. Provedeno bylo více než 2 700 commitů. Přehled úprav a nových vlastností v seznamu změn.
Evropský parlament dnes přijal směrnici týkající se tzv. práva spotřebitele na opravu. Poslanci ji podpořili 584 hlasy (3 bylo proti a 14 se zdrželo hlasování). Směrnice ujasňuje povinnosti výrobců opravovat zboží a motivovat spotřebitele k tomu, aby si výrobky nechávali opravit a prodloužili tak jejich životnost.
Bylo oznámeno (cs) vydání Fedora Linuxu 40. Přehled novinek ve Fedora Workstation 40 a Fedora KDE 40 na stránkách Fedora Magazinu. Současně byl oznámen notebook Slimbook Fedora 2.
ČTK (Česká tisková kancelář) upozorňuje (X), že na jejím zpravodajském webu České noviny byly dnes dopoledne neznámým útočníkem umístěny dva smyšlené texty, které nepocházejí z její produkce. Jde o text s titulkem „BIS zabránila pokusu o atentát na nově zvoleného slovenského prezidenta Petra Pelligriniho“ a o údajné mimořádné prohlášení ministra Lipavského k témuž. Tyto dezinformace byly útočníky zveřejněny i s příslušnými notifikacemi v mobilní aplikaci Českých novin. ČTK ve svém zpravodajském servisu žádnou informaci v tomto znění nevydala.
Byla založena nadace Open Home Foundation zastřešující více než 240 projektů, standardů, ovladačů a knihoven (Home Assistant, ESPHome, Zigpy, Piper, Improv Wi-Fi, Wyoming, …) pro otevřenou chytrou domácnost s důrazem na soukromí, možnost výběru a udržitelnost.
Společnost Meta otevírá svůj operační systém Meta Horizon OS pro headsety pro virtuální a rozšířenou realitu. Vedle Meta Quest se bude používat i v připravovaných headsetech od Asusu a Lenova.
Společnost Espressif (ESP8266, ESP32, …) získala většinový podíl ve společnosti M5Stack, čímž posiluje ekosystém AIoT.
Jak zapsat něco takového?:
SERVERS=()
SERVERS[ftb][name]='Name'
SERVERS[ftb][service]='abc.jar'
SERVERS[ftb][dir]='/var/abc'
SERVERS[van][name]='Van'
SERVERS[van][service]='van.jar'
SERVERS[van][dir]='/var/van'
Řešení dotazu:
public class TestServers { private HashMap< String, Map< String, Object>> servers; protected HashMap< String, Map< String, Object>> getServers() { if (servers == null) servers = new HashMap< String, Map< String,Object>>(); return servers; } public Object getValue(String server,String key){ return getServers().get(server).get(key); } public void putValue(String server,String key,Object value){ getServers().get(server).put(key, value); } }
SERVERS['ftb#name']='Name'
. Pochopitelně pak nejde jednoduše udělat nic jako SERVERS['ftb']
.
Resp. ono není problém přejít na python :) Jen jak na to pole??
SERVERS = { 'ftb': { 'name': 'Name', 'service': 'abc.jar', 'dir': '/var/abc', }, 'van': { 'name': 'Van', 'service': 'van.jar', 'dir': '/var/van', }, }Můžeš to klidně plnit i postupně nebo jakkoli...
Když jsme u toho. Půjde vůbec použít v konzoli. -> příkaz /var/script start ....? Jak zachytim to slovo start.
No když mám bash script, tak mohu volat /var/script start. Zachtim si slovo start a případně i nějaké argumenty. Jak toto udělat u toho pythonu?
nefunguje.
NameError: name 'argv' is not defined
Joo už to mám díky. :)
Ano jedná se o bash, viz štítek.
Jde o to, že mám script na spuštění serveru a tyto proměnné jsou potřeba pro server. Aktuálně mám dva.
Proto jsem chtěl toto pole a pak to projet přes 'foreach' a spustit po nastartování serveru.
Samozřejmě mám pak nějaké funkce jako restart stop, které chci pouštět pomocí restart name, tedy: restart van nebo restart ftb
Jak v python spustit tyto příkazy:
pgrep -u root -f $SERVICE > /dev/null
ps ax | grep -v grep | grep -v -i SCREEN | grep $SERVERJAR
Pořád to u pomlček řve něco o mezerách :/
from __subprocess__ import print_function import subprocess import re SERVICE="foobar" NULL=open("/dev/null", "wb") #pgrep -u root -f $SERVICE > /dev/null subprocess.call(["pgrep", "-u", "root", "-f", SERVICE], stdout=NULL) #ps ax | grep -v grep | grep -v -i SCREEN | grep $SERVERJAR # ^^^ neni lepsi pgrep screen? SERVERJAR="hamspam" for line in subprocess.check_output(["ps", "ax"]): if re.search(SERVERJAR, line): print(line, end='')jinak viz dokumentace
from __future__ import print_function
Díky. Ale to zapisování v pthon je nějak divné-
Potřebuji spustit tennto příkaz:
'cd ' + getServer()['dir'] + ' && screen -dmS ' + getServer()['screen'] + ' java -Xms512M -Xmx2048M -XX:MaxPermSize=1024M -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalPacing -XX:ParallelGCThreads=2 -XX:+AggressiveOpts -jar ' + getServer()['service'] + ' nogui'
Díky za rady :)
Ještě jedna věc. Jak spustit příkaz s parametrem po přihlášení?
Potřebuji spustit soubor /etc/init.d/minecraft startAll
systemctl enable
.
Pokud neexistuje, vytvořit systemd unitu. Vyžaduje přepsat ten minecraft skript -- který zjevně ani nefunguje s normálním SysV start/stop, ale potřebuje jakési speciální příkazy -- do něčeho použitelnějšího.
Pokud není ochota cokoli udělat pořádně, tak to fakenout (a nedivit se, že je to rozbité):
[Unit] Description=Whatever # Put dependences here. [Service] Type=oneshot RemainAfterExit=yes ExecStart=/etc/init.d/minecraft startAllnebo tak něco.
Tiskni Sdílej: