Open source modální textový editor Helix, inspirovaný editory Vim, Neovim či Kakoune, byl vydán ve verzi 25.07. Přehled novinek se záznamy terminálových sezení v asciinema v oznámení na webu. Detailně v CHANGELOGu na GitHubu.
Americký výrobce čipů Nvidia získal od vlády prezidenta Donalda Trumpa souhlas s prodejem svých pokročilých počítačových čipů používaných k vývoji umělé inteligence (AI) H20 do Číny. Prodej těchto čipů speciálně upravených pro čínský trh by tak mohl být brzy obnoven, uvedla firma na svém blogu. Americká vláda zakázala prodej v dubnu, v době eskalace obchodního sporu mezi oběma zeměmi. Tehdy to zdůvodnila obavami, že by čipy mohla využívat čínská armáda.
3D software Blender byl vydán ve verzi 4.5 s prodlouženou podporou. Podrobnosti v poznámkách k vydání. Videopředstavení na YouTube.
Open source webový aplikační framework Django slaví 20. narozeniny.
V Brestu dnes začala konference vývojářů a uživatelů linuxové distribuce Debian DebConf25. Na programu je řada zajímavých přednášek. Sledovat je lze online.
Před 30 lety, tj. 14. července 1995, se začala používat přípona .mp3 pro soubory s hudbou komprimovanou pomocí MPEG-2 Audio Layer 3.
Výroba 8bitových domácích počítačů Commodore 64 byla ukončena v dubnu 1994. Po více než 30 letech byl představen nový oficiální Commodore 64 Ultimate (YouTube). S deskou postavenou na FPGA. Ve 3 edicích v ceně od 299 dolarů a plánovaným dodáním v říjnu a listopadu letošního roku.
Společnost Hugging Face ve spolupráci se společností Pollen Robotics představila open source robota Reachy Mini (YouTube). Předobjednat lze lite verzi za 299 dolarů a wireless verzi s Raspberry Pi 5 za 449 dolarů.
Dnes v 17:30 bude oficiálně vydána open source počítačová hra DOGWALK vytvořena v 3D softwaru Blender a herním enginu Godot. Release party proběhne na YouTube od 17:00.
McDonald's se spojil se společností Paradox a pracovníky nabírá také pomocí AI řešení s virtuální asistentkou Olivii běžící na webu McHire. Ian Carroll a Sam Curry se na toto AI řešení blíže podívali a opravdu je překvapilo, že se mohli přihlásit pomocí jména 123456 a hesla 123456 a získat přístup k údajům o 64 milionech uchazečů o práci.
dobrý den, mám dotaz
zadal jsem do cronu příkaz na spuštění
00 16 * * * root lynx -dump http://www.xyz.ccz/platba.php
a bohuzel uvnitř tohoto php kodu je systemovy přikaz
system(´iptables -t nat .....´)
který se me pohužel nespustí, nevíte prosím radu?
dekuji david
iptables
na serveru, musí webserver běžet pod root
em.
jak prosím se sudo?
muze me nekdo prosim prelozit do s tim prikazem sudo.
moc se v linuxu nevyznam, potrebuji prave na jednom serveru zprovoznit pravidelné spousteni toho skriptu
tento prikaz nejde
$shellOutput = system('iptables -t nat -I PREROUTING -p tcp --dport 80 -s ${'.trim($row_usr["ip_1"]).'} -j DNAT --to-destination 10.0.0.1', $retval);
uživatel ktery spousti webserver je www-data
dekuji moc
příkaz z cronu se vykoná, protože vykonává další činnosti které pak vidim v logu, tak usuzuji ze to bězi správně, krom tedy toho iptables, to se nespusti.
root
a. Nejlepší bude použít pro spuštění sudo
, také byste mohl spuštění iptables
delegovat do nějakého externího procesu, který by se spouštěl z binárky se suid
bitem, nebo v nejhorším případě provozovat celý web server pod root
em.
tak jsem vlozil do sudoers
www-data ALL=(ALL) NOPASSWD: /sbin/iptables
a upravil prikaz v php kodu
$shellOutput = system('sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -s ${'.trim($row_usr["ip_1"]).'} -j DNAT --to-destination 10.0.0.1', $retval);
a stale nic.
tak jsem jeste kouknul do error logu apache a tam vylezlo toto
sh: ${172.20.13.20}: bad substitution
tak jsem z toho uz magor, prosiiim help, dekuji moc.
david
$shellOutput = system('sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -s '.trim($row_usr["ip_1"]).' -j DNAT --to-destination 10.0.0.1', $retval);
tak super uz jsem zase dále
>>> sudoers file: syntax error, line 18 <<<
sudo: parse error in /etc/sudoers near line 18
obsah sudoers
# /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset
# Host alias specification
# User alias specification
# Cmnd alias specification
# User privilege specification
root ALL=(ALL) ALL
www-data ALL=(ALL) NOPASSWD: /sbin/iptables
Manuálová stránka sudoers je poměrně nepřehledná, ale na webu jsou mraky návodů, např. http://www.cyberciti.biz/tips/allow-a-normal-user-to-run-commands-as-root.html . Pokud neumíš anglicky, zkus některý z překladových nástrojů, např. Google Translate Firefox extension, která vrátí http://translate.google.com/translate?hl=en&sl=en&tl=cs&u=http://www.cyberciti.biz/tips/allow-a-normal-user-to-run-commands-as-root.html
Řekl bych, že na posledním řádku nemá být (ALL) za rovnítkem.
root
a od toho serveru sháněl těžko...
takže tim myslite ze se to nepovede rozebehnout?
sudo
.
Proč by to nešlo, když nastavíš ty sudoers? Samozřejmě že uživatel, pod kterým běží www klient, je nepodstatný, ten jen po síti iniciuje tu akci. Klíčový je uživatel, pod kterým běží www server. Pokud mu přes sudo umožníš provádět danou akci pod rootem, musí to fungovat.
Nejlepší je sudo testovat rovnou pod daným uživatelem. Až to rozchodíš, můžeš to ladit v PHP. V ubuntu se přepni na roota přes
sudo -i
Pak se přepni na www-data přes
su www-data
A můžeš testovat konfigurace sudoers. Je to jednoduché, není důvod to vzdát.
tak pánové všem děkuji za tipy, už se povedlo,
vše už bylo ok, jen to stačilo otevrit pres visudo a ulozit.
nechapu ale funguje
díky všem za ochotu a dobré rady. david
Vazeni stale se me nedari
spoustim z cronu skript ve kterem je prikaz
$shellOutput = system('sudo /sbin/iptables -t nat -D PREROUTING -p tcp --dport 80 -s '.trim($row_usr["ip_1"]).' -j DNAT --to-destination 10.0.0.1', $retval);
v error.logu apache2 me to napise at se kouknu na iptables -h
jinou hlasku ne.
a kdyz si spustim skript z prikazove radky tak to napise
BAD ARGUMENT 'DNAT' BAD ARGUMENT 'DNAT'
Přitom samotný příkaz když si pustim tak funguje v pořadku, nevite prosim radu.
dekuji david
Ten příkaz si naformátuj předem mimo volání system() a vypiš přes print. Uvidíš tak, co se opravdu volá, můžeš si jej i zkusit spustit bokem. Složitější skládání příkazu a jeho spuštění bez předchozí bez kontroly (navíc pod rootem !!) není úplně nejlepší cesta.
Tiskni
Sdílej: