IBM kupuje společnost HashiCorp za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.
Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.
Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.
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.
Možná už jste někdy dumali nad tím, jak si na serveru zprovoznit službu, která vytváří náhledy webových stránek. V poradně je několik dotazů na toto téma, ale žádná kloudná odpověď. S radostí vám tedy můžu oznámit, že jsem na to konečně přišel.
Problém je ten, že potřebujete nějakou paměť, do které se ta stránka bude vykreslovat. Tuto paměť obvykle zprostředkovává X server, ale provozovat na serveru třeba Xorg je trochu zbytečné. Naštěstí existuje X server Xvfb, který je velice jednoduchý a všechno si vykresluje pouze do paměti. Minimálně v distribucích založených na Debianu je jako balíček, takže instalace je v pohodě.
Jak pustit Xvfb
? Nejlépe pomocí startx
:
startx -- /usr/bin/Xvfb :10 -screen 0 1600x1200x24
Tato řádka pustí Xvfb
jako display 10 v rozlišení 1600x1200x24.
Hned si to vyzkoušíme a pustíme si v našem virtuálním framebufferu Firefox s ABCLinuxu.cz:
DISPLAY=:10 firefox www.abclinuxu.cz
Nikde nic bohužel nejde vidět, tak si budeme muset udělat screenshot:
DISPLAY=:10 import -window root obrazovka.png
A výsledný screenshot vypadá takto:
Jak vidíte Firefox se pustil do správné obrazovky, ale nebude asi vhodným prohlížečem pro dělání náhledů stránek, přinášelo by to jen samé problémy. Napíšeme si tedy prohlížeč vlastní! Bude jednoduchý a bude dělat přesně to co chceme. Použijeme jazyk Python a komponentu gtkmozembed
. Prohlížeč se také sám postará o vygenerování náhledu. Bude možné jich spustit více najednou a urychlit tak generování většího počtu náhledů. Tady je kód, jak vidíte, je to velmi jednoduché:
#!/usr/bin/env python
import sys
import gtk
import gobject
import gtkmozembed
if len(sys.argv) == 2:
print "Bad count of arguments."
if len(sys.argv) < 3:
print "Usage: webshot.py URL output_file.png"
sys.exit()
def on_net_stop(caller_widget):
gobject.timeout_add(10000, take_shot)
def take_shot():
(width, height) = window.get_size()
pixbuf = gtk.gdk.Pixbuf(gtk.gdk.COLORSPACE_RGB, False, 8, width - 16, height - 15)
pixbuf.get_from_drawable(browser.window, browser.get_colormap(), 0, 0, 0, 0, width - 16, height - 15)
pixbuf.save(sys.argv[2], "png")
gtk.main_quit()
return False;
gtkmozembed.set_profile_path("/tmp", "webshot")
browser = gtkmozembed.MozEmbed()
browser.connect("net_stop", on_net_stop)
browser.set_size_request(1024, 768)
browser.show()
browser.load_url(sys.argv[1])
window = gtk.Window()
window.add(browser)
window.show()
gtk.main()
Jak program funguje? Na vstupu má dva parametry - webovou adresu a jméno výstupního souboru náhledu. Prohlížeč je okno pouze s jedním widgetem zobrazujícím stránku. Po načtení stránky se chvilku počká a obraz widgetu uloží do souboru. Velikost okna a čas na vykreslení je v programu natvrdo, ale není problém je parametrizovat.
A to je vše! Není to jednoduché? Ještě malá ukázka použití:
DISPLAY=:10 ./webshot.py abclinuxu.cz abclinuxu.png
Výstup:
Tiskni Sdílej:
firefox -screenshot http://abclinuxu.cz/ > obrazovka.pnga musí kvůli tomu člověk dělat takové ptákoviny jako spouštět speciální X server. Pro Konqueror něco takového bylo, ale nepodařilo se mi to tehdy zkompilovat.
root
em, tak má jen stejná práva, jako kterýkoli uživatel toho počítače. K čemu bude soubor /etc/passwd
někomu dobrý?
/etc/passwd
není žádná katastrofa – třeba na různých školních unixových nebo linuxových strojích mohou mít účet stovky nebo tisíce studentů, všichni vidí /etc/passwd
, a žádný problém v tom není. Samozřejmě pokud máte server, klientům tam povolíte přístup jenom přes scp
a předpokládáte tak, že nikdo kromě vás nemůže lokálně nic spustit, a pak necháte v systému takovouhle díru, je to problém – minimálně proto, že je to zjevně místo, které je zabezpečené viditelně míň, než zbytek systému, pravděpodobně tedy uniklo pozornosti správce a je vhodné pátrat tímto směrem po dalších slabinách.
všichni vidí /etc/passwd, a žádný problém v tom není.V tom máš pravdu, to bychom se museli pohybovat někde na poli špionáže, aby měla nějakou hodnotu informace, že uživatel xabcd123 má účet na daném stroji. Je to taky výhoda unixových systémů, účet může dostat širší okruh lidí, než třeba u Windows. (ale přesto, podle principu minimálních práv, není dobré vystavovat veřejně nějaká data, pokud to není potřeba)
if URL[:5] == "file:" :
print "Ani ..cu!"
return 1
if sys.argv[1][:5] ...
javascript:window.open("file://…")
?
http
z nějaké jiné domény, stejně to nepůjde číst.
Ale ono je problém i to obyčejné http. Když si tam někdo nechá zobrazit stránku s nějakým Flashem, přesměrováním sem tam nebo dlouhotrvajícím javascriptem, jenom to vytíží počítač a tu službu třeba nebude moci využít někdo jiný. Ale pokud máte nějaké limity na přenesená data a někdo si tam nechá stáhnout pár obrazů DVD, může s tím být už skutečný problém.
Ten výběr data JS je blokován ještě jinak – JS nesmí přistupovat k dokumentu, který je nahrán z jiné domény. Tj. i kdyby v tom framu byl jiná adresa s http
z nějaké jiné domény, stejně to nepůjde číst.
To jsem nevěděl. Dobrá informace.
Ale ono je problém i to obyčejné http. Když si tam někdo nechá zobrazit stránku s nějakým Flashem, přesměrováním sem tam nebo dlouhotrvajícím javascriptem, jenom to vytíží počítač a tu službu třeba nebude moci využít někdo jiný. Ale pokud máte nějaké limity na přenesená data a někdo si tam nechá stáhnout pár obrazů DVD, může s tím být už skutečný problém.Je to složitější než jsem si myslel. Pokud si člověk bude dělat obrázky jenom pro sebe, tak to není takový problém, ale jako veřejná služba je to hodně náročné na zabezpečení. Zajímalo by mě, jak jsou chráněny podobné existující služby, třeba český http://www.thumbnails.cz/.
URL[:5] != "http:"
když už teda takhle. Stejně bych ale přidal ještě tu virtualizaci, AppArmor a hodně přísně nastavený firewall (povolit jen 80 a zakázat připojení na všechny vnitrofiremní servery).
Ahoj, zajímavý článek..
Mam však problém, že mi první varianta s firefoxem funguje, ale pythoní skriptík už dělá problémy. Obrázek se udělá, ale ten je zdeformovaný. Pruh vpravu a dole je jakoby posunutý kus odněkud jinud.
Zkouším to v ubuntu s naběhnutým systémem.. ale to by snad vliv mít nemělo ne... ?
Nějaké nápady? změna velikosti nebo rozlišení nepomohla..
A teď mě tak napadlo, na serveru nemusí být grafická karta, že?
Bude to fungovat i bez ní ?