Evropská komise (EK) navrhuje zavést plošný poplatek ve výši dvou eur (zhruba 50 Kč) za každý malý balík vstupující do Evropské unie. Poplatek se má týkat balíků v hodnotě do 150 eur (zhruba 3700 Kč), které v EU nepodléhají clu. V loňském roce bylo do EU doručeno kolem 4,6 miliardy takovýchto balíků. Poplatek má krýt náklady na kontroly rostoucího počtu zásilek levného zboží, které pochází především z Číny.
Dnes a zítra probíhá vývojářská konference Google I/O 2025. Sledovat lze na YouTube a na síti 𝕏 (#GoogleIO).
V Bostonu probíhá konference Red Hat Summit 2025. Vybrané přednášky lze sledovat na YouTube. Dění lze sledovat na síti 𝕏 (#RHSummit).
Společnost Red Hat oficiálně oznámila vydání Red Hat Enterprise Linuxu 10. Vedle nových vlastností přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Podrobnosti v poznámkách k vydání.
Tuto sobotu 24. května se koná historicky první komunitní den projektu Home Assistant. Zváni jsou všichni příznivci, nadšenci a uživatelé tohoto projektu. Pro účast je potřebná registrace. Odkazy na akce v Praze a v Bratislavě.
Troy Hunt představil Have I Been Pwned 2.0, tj. nový vylepšený web služby, kde si uživatelé mohou zkontrolovat, zda se jejich hesla a osobní údaje neobjevily v únicích dat a případně se nechat na další úniky upozorňovat.
Microsoft představil open source textový editor Edit bežící v terminálu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.
V Seattlu a také online probíhá konference Microsoft Build 2025. Microsoft představuje své novinky. Windows Subsystem for Linux je nově open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.
Z příspěvku Turris Sentinel – co přinesl rok 2024 na blogu CZ.NIC: "Za poslední rok (únor 2024 – únor 2025) jsme zachytili 8,3 miliardy incidentů a to z 232 zemí a z jejich závislých území. Tyto útoky přišly od 6,2 milionu útočníků (respektive unikátních adres). SMTP minipot je stále nejlákavější pastí, zhruba 79 % útoků bylo směřováno na tento minipot, 16 % útoků směřovalo na minipot Telnet, 3 % útoků směřovaly na minipot HTTP a 2 % na minipot FTP. Dále jsme zaznamenali 3,2 milionu unikátních hesel a 318 tisíc unikátních loginů, které útočníci zkoušeli."
Byla vydána (Mastodon, 𝕏) nová verze 3.0.4 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP je již k dispozici také na Flathubu.
O Solarisu jste už určitě slyšeli, je to UNIX z dílny SUN Microsystems a funguje na platformě SPARC a x86/x86_64. Spolu s novou verzí tohoto operačního systému (verze 10, vyšla oficiálně na začátku 2005) nám firma SUN Microsystems připravila i některá zajímavá vylepšení jako je nástroj dtrace, SMF nebo třeba podpora pro zóny. Tento článek je právě o konfiguraci a používání zón v Solarisu 10 případně OpenSolarisu.
Máme dva druhy zón. Globální zóna může být pouze jedna a je to vlastní bežící operační systém. Dále máme lokální zóny (non-global zone), kterých je možné v globální zóně provozovat až 8192. Počet lokálních zón je limitován použitým hardwarem. Minimální nároky na jednu lokální zónu jsou 40MiB RAM a 320MiB volného prostoru na pevném disku. Každá zóna má oddělený systém uživatelských účtů (samostatný /etc/passwd
a pod.), samostatný souborový systém, vlastní nastavení sítě a přidělené systémové prostředky. Lokální zóna je vlastně takový virtuální počítač, lze ji zapnout, vypnout, restartovat a překonfigurovat nezávisle na dalších zónách.
Instalaci popisovanou v článku jsem prováděl na počítači Ultra 10 s procesorem UltraSPARC IIi 440MHz a 384 MiB RAM. Solaris pro x86 podporuje zóny úplně stejně jako varianta pro SPARC, takže si to můžete zkusit i sami na svém počítači. Pokud nechcete instalovat Solaris přímo na pevný disk, lze použít například virtuální stroj VMWare, ale doporučuji nějakou poslední verzi. Pro VMWare je dostupná zkušební licence na 30 dní. Pro Solaris doporučuji minimálně 256MiB RAM, ale pokud můžete, dejte mu víc, zvlášť v grafickém prostředí je to znát.
Informace o použitém operačním systému:
root@draslik:~# uname -a SunOS draslik 5.10 Generic_118822-02 sun4u sparc SUNW,Ultra-5_10
Informace o nastavení sítě systému, ve kterém budeme vytvářet zónu.
root@draslik:~# ifconfig -a lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1 inet 127.0.0.1 netmask ff000000 hme0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2 inet 192.168.0.14 netmask ffffff00 broadcast 192.168.0.255 ether 8:0:20:c6:8e:9f
Vytvoříme si adresář /zones
, do kterého budeme zóny umísťovat. V adresáři /zones
je třeba zajistit dostatek místa, zónu lze udělat třeba 500MiB velikou nebo může mít také několik GiB.
Ověříme, v jakém stavu jsou zóny v systému, všechny si vypíšeme:
root@draslik:~# zoneadm list -vc ID NAME STATUS PATH 0 global running /
Jak je vidět z výpisu, v systému existuje jen jedna globální zóna a to vlastní operační systém.
Zóna, kterou si tu vytvoříme jako vzorovou, se jmenuje appserv (poběží v ní aplikační server). K nastavení parametrů zóny slouží program zonecfg
.
Příkaz create -b
slouží k vytvoření čisté konfigurace bez předvoleb. Pokud nepoužijete parametr -b
, tak se vytvoří zóna, kde budou některé adresáře sdílené s hlavním OS. Zónu umístíme do adresáře /zones/appserv/
a nastavíme autoboot.
Další krok je přiřazení síťového rozhraní. Na mém počítači se síťovka jmenuje hme0. Na x86 počítači to bude pravděpodobně pcn0, přesný název zjistíte z výpisu ifconfig -a. Zóna může síťové rozhraní sdílet s nějakou jinou zónou nebo ho může mít pouze pro sebe.
Rozhodl jsem se, že adresáře /opt/sfw
a /platform
můžu v zóně appserv sdílet s globální zónou. V zóně appserv jsou sdílené adresáře přístupné pouze pro čtení.
Nakonec zkontrolujeme parametry zóny, uložíme a ještě si vypíšeme celou konfiguraci. Stiskem ctrl-d
ukončíme práci.
Pokud potřebujete založit více zón, je možné sepsat všechny příkazy do souborů a ty pak zpracovat například ve skriptu pomocí zoneadm -f soubor-s-prikazy
.
root@draslik:~# zonecfg -z appserv zonecfg:appserv> create -b zonecfg:appserv> set zonepath=/zones/appserv zonecfg:appserv> set autoboot=true zonecfg:appserv> add net zonecfg:appserv:net> set address=192.168.0.100 zonecfg:appserv:net> set physical=hme0 zonecfg:appserv:net> end zonecfg:appserv> add inherit-pkg-dir zonecfg:appserv:inherit-pkg-dir> set dir=/opt/sfw zonecfg:appserv:inherit-pkg-dir> end zonecfg:appserv> add inherit-pkg-dir zonecfg:appserv:inherit-pkg-dir> set dir=/platform zonecfg:appserv:inherit-pkg-dir> end zonecfg:appserv> verify zonecfg:appserv> commit zonecfg:appserv> info zonepath: /zones/appserv autoboot: true pool: inherit-pkg-dir: dir: /opt/sfw inherit-pkg-dir: dir: /platform net: address: 192.168.0.100 physical: hme0 zonecfg:appserv> ^d
Zóna je nakonfigurovaná a připravená k instalaci:
root@draslik:~# zoneadm list -vc ID NAME STATUS PATH 0 global running / - appserv configured /zones/appserv
Provedeme instalaci zóny, v závislosti na nastavení a rychlosti počítače to může trvat až půl hodiny.
root@draslik:~# zoneadm -z appserv install
Programem zoneadm můžete zónu také odinstalovat (uninstall), restartovat (reboot) nebo třeba nabootovat (boot)
Zónu po nainstalování poprvé nastartujeme.
root@draslik:~# zoneadm -z appserv boot
První připojení do zóny slouží k jejímu nastavení, nastavuje se typ terminálu, časová zóna a heslo roota zóny. Nastavením vás provede sada textových dialogů. Pro připojení do lokální zóny z globální se používá program zlogin s parametrem -C
v interaktivním režimu pro práci na konzoli.
zlogin -C appserv
"Proklikáme" se přes základní nastavovací dialogy, přihlásíme se do zóny a vytvoříme si uživatele, abychom se mohli připojit přes ssh (nebo si povolíme přihlášení roota v konfiguraci ssh).
Pokud se k zóně přihlásíte klasickým způsobem přes zlogin, tak ve výchozí konfiguraci se z zloginu dostanete pomocí kombinace kláves ~. (vlnovka a tečka), v případě, že jste přihlášeni na server přes ssh, je třeba zmáčknout ~ dvakrát, první stisk totiž odchytí ssh.
root@draslik:~# zlogin -C appserv [Connected to zone 'appserv' console] appserv console login: ~. [Connection to zone 'appserv' console closed]
Také si vlnovku můžete přemapovat třeba na zavináč pomocí parametru -e
.
zlogin -C -e\@ appserv
Zlogin umí pracovat i v neinteraktivním režimu, například se tak dá velmi jednoduše zóna korektně vypnout.
zlogin appserv shutdown -y -i0 -g0
Z globální zóny můžete získat informace o procesech v jednotlivých lokálních zónách. Pro výpis všech procesů v počítači a také pro informace o celkové spotřebě paměti a procesorového času jednotlivých zón lze použít příkaz
prstat -Z
Samozřejmě si můžete vypsat pouze procesy konkrétní zóny pomocí příkazu ps -fz nazev-zony
případně použít prstaz -z nazev-zony
. Do jednotlivých zón je možné vstoupit i na úrovni filesystému z globální zóny; stačí, když se podíváte do adresáře /zones/nazev_zony/root/
.
Pro porovnání s normálním stavem ukážu, jak vypadá konfigurace sítě v zóně global při nabootované zóně:
root@draslik:~# ifconfig -a lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1 inet 127.0.0.1 netmask ff000000 lo0:1: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1 zone appserv inet 127.0.0.1 netmask ff000000 hme0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2 inet 192.168.0.14 netmask ffffff00 broadcast 192.168.0.255 ether 8:0:20:c6:8e:9f hme0:1: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2 zone appserv inet 192.168.0.100 netmask ffffff00 broadcast 192.168.0.255
takto vypadá to samé nastavení při pohledu z lokální zóny appserv:
bash-3.00# ifconfig -a lo0:1: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1 inet 127.0.0.1 netmask ff000000 hme0:1: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2 inet 192.168.0.100 netmask ffffff00 broadcast 192.168.0.255
Na testovacím počítači jsem neměl dostatek místa na disku, tak jsem se rozhodl umístit zónu na NFS. Má to některé výhody. Použitá Ultra 10 je relativně pomalý počítač ohledně přístupu k disku (je v ní ATA33 disk), a tak 100Mbps síť bude docela dobrou náhradou za tento disk.
Zóny zatím nejde umístit přímo na NFS, zóna se odmítne nainstalovat. Proto jsem použil jednoduchou fintu.
NFS jsem namountoval do adresáře /.zones/
.
Vytvořil jsem si pomocí programu dd na NFS serveru 10GiB soubor.
dd if=/dev/null of=/.zones/zony.img bs=1k count=1 seek=10485760
Na tomto souboru jsem vyrobil souborový systém.
newfs /.zones/zony.img
a tento soubor jsem namountoval do adresáře /zones/
.
mount `lofiadm -a /.zones/zony.img` /zones
Výpis připojeného souboru:
root@draslik:/# df -h /.zones /zones Filesystem size used avail capacity Mounted on tsunami:/export/hosts/draslik 10.0G 4.3G 5.7G 43% /.zones /dev/lofi/1 9.8G 3.0G 6.7G 31% /zones
Potom je možné normálně nainstalovat zónu a přitom ji mít na NFS.
Škoda, že zóny nejdou používat i v Linuxu. Myslím, že chroot je docela dobrá věc, ale bohužel není tak propracovaný jako systém zón na Solarisu. User Mode Linux je zase složitější na správu a také má větší HW nároky, na druhou stranu je UML samostatně běžící jádro pod neprivilegovaným uživatelem a to zóny v Solarisu neumožňují.
Systém zón a jejich snadná správa je ideální pro vývojáře. Různé vývojářské týmy mohou efektivně sdílet jeden server, aniž by se navzájem ovlivňovaly. Zóny také umožňují lepší zabezpečení systémů, kde na jednom serveru běží více služeb a potřebujete je nějak navzájem izolovat.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
Rád bych upozornil na projekt Linux VServer, který (pokud mi nic neuniklo) umožňuje vše výše popsané. Jedná se o patch do jádra + user-space utilitky. Rychlý přehled, jak se s tím zachází můžete získat např. na gentoo.org
Osobně vservery provozuji právě na gentoo na domácím serveru/routeru a v praxi to funguje výborně.
cela tato diskuse neobsahuje zakladni predpoklad - cil a ucel pro nasazeni zon.Velmi vhodne je nasadit zony napriklad pri vyvoji, kdy lze snadno a rychle na jedinem HW ziskat oddelena vyvojova prostredi. Kazdy vyvojar (nabo tym vyvojaru) dostane vlastni zonu k praci aniz by mel moznost ponicit ostatni zony.
zona, stejne jako jail nebo user-mode-linux je prilis overkill na lepsi chrootovani daemonu... k tomu nepotrebuji XYZ mb..., ale stejne jako v chrootu nakopiruji prislusne soubory. a umi solaris manualni vytvareni zon? na fbsd si udelam jail, nebo skript na urcity jail, pro urciteho daemona, nebo pouziji nullfs/unionfs.chroot lze vyuzit i v Solarisu, tam omezeni neni. Konfigurace (lokalni) zony je ulozena v xml souborech. V globalni zone jsou vyditelne FS vsech lokalnich zon, takze lze velmi snadno vytvaret zony s konkretnim nastavenim i konfiguraci, pripadne menit, migrovat pomoci jednoduchych prikazu ci skriptu.
v pripada virtual serveru jsou zone/jail ok. ale tipuji, ze v solarisu, stejne jako ve freebsd, neni mozne mountovat v zone/jailu, takze je to v urcitych situacich naprd... napr. primountovavani homu pri loginu atd. (sifrovanej home)V (lokalni) zone mountovani neni omezeno, samozrejme je dostupny fs jen te konkretni zony, pripadne sitovy FS pres NFS apod.