JuiceFS dospěl do verze 1.0. Jedná se o distribuovaný souborový systém kompatibilní s POSIX, HDFS a S3. Architektura JuiceFS sestává ze 3 částí: JuiceFS Client, Data Storage (S3, Azure Blob, OpenStack Swift, Ceph, MinIO, …) a Metadata Engine (Redis, TiKV, MySQL/MariaDB, PostgreSQL, SQLite, …). Zdrojové kódy JuiceFS jsou k dispozici na GitHubu pod licencí Apache 2.0.
O víkendu probíhá online The Raku Conference 2022, tj. konference věnovaná programovacímu jazyku Raku.
Včera skončila bezpečnostní konference Black Hat USA 2022 (Twitter) a začala bezpečnostní konference DEF CON 30 (Twitter). V rámci Black Hat byly vyhlášeny výsledky letošní Pwnie Awards (Twitter). Pwnie Awards oceňují to nejlepší, ale i to nejhorší z IT bezpečnosti (bezpečnostní Oscar a Malina v jednom).
Vývojáři PostgreSQL oznámili vydání verzí 14.5, 13.8, 12.12, 11.17, 10.22 a 15 Beta 3. Opraveno je více než 40 chyb a také zranitelnost CVE-2022-2625. Upstream podpora verze 10 končí 10. listopadu letošního roku.
Byla vydána verze 1.63.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
Bylo vydáno Ubuntu 22.04.1 LTS, tj. první opravné vydání Ubuntu 22.04 LTS s kódovým názvem Jammy Jellyfish.
Microsoft Fluent Emoji jsou nově k dispozici na GitHubu pod licencí MIT. Více v článku na Medium.
O víkendu proběhla v Kolíně nad Rýnem demopárty Evoke 2022. Publikována byla prezentovaná dema. Upozornit lze na Area 5150 (YouTube) běžící na IBM PC s procesorem Intel 8088 běžícím na 4,77 MHz a CGA.
smenu, nástroj pro příkazový řádek pro generování možností a potvrzení výběru, dospěl do verze 1.0.0.
Byla potvrzena zranitelnost CVE-2021-46778 aneb SQUIP (Scheduler Queue Usage via Interference Probing) v procesorech AMD s mikroarchitekturou Zen 1, Zen 2 a Zen 3. Detaily v publikovaném paperu.
/proc
. Primárne bol vyvinutý na správu procesov, ale Linux z neho urobil veľmi použiteľný nástroj na správu systému.Prvú implementáciu procfs napísal Tom J. Killian pre UNIX 8th Edition. Cieľom bolo vytvorenie prirodzeného kontrolného rozhrania pre procesy v systéme. Procfs mal slúžiť len programátorom.
V mnohých unixových systémoch bol /proc
vždy využívaný na
kontrolu bežiacich programov a nebol pre užívateľa nijak použiteľným.
Procfs je virtuálny súborový systém. To znamená, že žiaden súbor sa nenachádza na vašom disku, ale všetko je v pamäti. Takýto súborový systém zaberá len málo operačnej pamäte a je veľmi dynamický.
Na Linuxe nie je procfs používaný len na správu procesov. Vývojári Linuxu postupom času pridávali do štruktúry procfs mnoho rôznych informácií. Zásadným rozdielom od iných unixových systémov je, že každý súbor je textový a užívateľ dokáže prečítať jeho obsah.
Štruktúra procfs sa časom dostala do nekonzistentného stavu, pretože na začiatku neexistovali žiadne pravidlá, podľa ktorých by bol procfs organizovaný.
Teraz sa procfs delí na viacero rozumne usporiadaných stromov, ktoré sú však rozhádzané v základnom strome.
/proc
V hlavnom adresáti procfs sa nachádzajú:
/proc/ |-- 1/ |-- 2/ |-- 3/ |-- 4/ |-- 18/ |-- 20/ |-- 110/ |-- 6203/ |-- 6204/ | |-- auxv | |-- cmdline | |-- cwd -> / | |-- environ | |-- exe -> /usr/sbin/metalog | |-- fd/ | | |-- 0 -> /dev/pts/4 | | |-- 1 -> /dev/pts/4 | | `-- 2 -> /dev/pts/4 | . | . | . | |-- status | |-- task/ | `-- wchan |-- 7009/ . . . |-- acpi/ |-- asound/ |-- buddyinfo |-- bus/ |-- cmdline |-- cpuinfo . . . |-- swaps |-- sys/ |-- sysvipc/ |-- tty/ |-- uptime |-- version `-- vmstat
Ukážka štruktúry adresára /proc
.
Adresáre sú vyznačené hrubým písmom. Podčiarknuté kurzíva označujú symbolické linky. Symbolická linka je súbor obsahujúci len meno iného súboru, ktorú keď otvoríte, správa sa ako súbor na ktorý sa odkazuje.
Tieto adresáre spoznáte podľa toho, že ich meno je len číslo. Toto číslo je identifikátor procesu v systéme, nazývané PID (Process IDentifier).
Štruktúra týchto adresárov je rovnaká. Obsahujú rovnako nazvané súbory:
cwd
root
root
sa na tento adresár odkazuje. Pozri:
program chroot.cmdline
fd/
Najdôležitejšie položky adresára procesu.
Na iných unixových operačných systémoch sa s týmto typom položiek v procfs nestretnete. Je to vlastnosť Linuxu, ktorý robí procfs zaujímavým.
Pomocou súborov procfs sa exportujú užívateľského prostredia informácie z jadra. Pomocou nich môžeme zisťovať rôzne podrobnosti o systéme a niektorých druhoch hardvéru.
$ cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 15 model : 2 model name : Intel(R) Celeron(R) CPU 2.40GHz stepping : 9 cpu MHz : 2424.546 cache size : 128 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 2 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe cid xtpr bogomips : 4784.12
Výpis informácií o CPU.
V procfs sa podobných súborov nachádza veľké množstvo. Ich obsah môže, ale nemusí užívateľa zaujímať. Informácie, ktoré sa v nich nachádzajú, sú vždy aktuálne, pretože sa vzťahujú priamo na premenné v pamäti.
/proc/sys
Toto je pre administrátorov najzaujímavejšie miesto v procfs. Nachádzajú sa v ňom sysctl (System Control) súbory. Pomocou nich môžete meniť nastavenie jadra za behu a ovplyvňovať jeho správanie.
K tu ukrytým súborom má užívateľ root práva na zápis. Zmenu nastavenia uskutočnite jednoduchým zápisom novej hodnoty do súboru, ktorý reprezentuje premennú, ktorú chcete zmeniť.
# echo 1 > /proc/sys/dev/cdrom/autoeject
Nastavenie automatického otvárania CD mechaniky po odpojení.
Najdôležitejšie pre mnoho serverov je nastavenie siete. V adresári
/proc/sys/net/
sa nachádza mnoho parametrov pre rôzne
sieťové protokoly.
Program sysctl
je nástroj, ktorým si môžeme nastavovanie
uľahčiť. Sysctl vie vypísať a nastaviť všetky hodnoty súborov v adresári
/proc/sys
. Nastavenia majú rovnaký tvar ako cesta k ich
súborom relatívne od /proc/sys
, len lomítka '/' sú zamenené
bodkami.
Sysctl vie zaviesť nastavenia zo súboru /etc/sysctl.conf
,
v ktorom sa ich môže nachádzať viacero. Skoro všetky distribúcie využívajú
/etc/sysctl.conf
na konfiguráciu jadra pri zavádzaní
systému.
# Disables packet forwarding
#net.ipv4.ip_forward = 0
# Disables IP dynaddr
#net.ipv4.ip_dynaddr = 0
# Disable ECN
#net.ipv4.tcp_ecn = 0
# Enables source route verification
net.ipv4.conf.default.rp_filter = 1
# Enable reverse path
net.ipv4.conf.all.rp_filter = 1
Ukážka časti konfiguračného súboru /etc/sysctl.conf
.
Pozrite sa do /proc/sys
, kde nájdete mnoho užitočných
nastavení, a podľa uváženia ich nastavte v súbore
/etc/sysctl.conf
, aby vaša distribúcia nastavenia aplikovala
vždy po reštarte.
Všetky nižšie uvedené súbory sa dajú vypísať jednoduchým príkazom:
$ cat /proc/<súbor>
/proc/cpuinfo
/proc/version
/proc/sys/dev/cdrom/info
/proc/sys/dev/cdrom/autoclose
/proc/sys/dev/cdrom/autoeject
mount
) CDčka automaticky zavrie (ak bola otvorená). Hodnota
1 v súbore autoeject
CD mechaniku automaticky otvorí pri
odpojení média (umount
)./proc/sys/net/*
Documentation/networking/ip_sysctl.txt
, alebo na http://ipsysctl-tutorial.frozentux.net/ipsysctl-tutorial.html.Tieto jednotlivé súbory sú len ukážkou. Ak sa budete chcieť dozvedieť niečo viac o inom súbore z procfs, jednoducho ho aj s celou cesto vložte do Googla.
Ako som povedal na začiatku článku, prvú implementáciu procfs napísal Tom J. Killian pre UNIX 8th Edition v roku 1984. Pán Killian je autorom knihy "Processes as files", takže je vlastne autorom celej myšlienky.
V UNIX 8th Edition mal každý proces jeden súbor a procfs neexportoval žiadne ďalšie informácie do užívateľského prostredia.
Procfs bol portovaný pre SVR4 Rogerom Faulknerom a Ronom Gomesom v roku 1991.
4.4BSD ako prvý implementoval procfs s podadresármi.
Solaris 2.6 prevzal všetko dobré, čo bolo v procfs použité v iných systémoch, a urobil z neho hlavné rozhranie na prácu s procesmi v systéme.
Linux ako prvý použil ASCII formáty v súboroch procfs. Linux teda využíva procfs aj na exportovanie dát, ktoré sa procesov netýkajú, a na systémovú kontrolu.
Súborový systém procfs ponúka veľké množstvo informácií o systéme a o hardvére, ku ktorým sa užívatelia iných OS jednoducho nedostanú.
Často sa môžeme stretnúť s tvrdením, že sysfs má vytlačíť procfs z jadra. To však nie je pravda. Mnoho ľudí chce procfs prepracovať, lenže to je zložitejšia úloha a jadrá rady 2.8 žiadne zmeny pravdepodobne neprinesú.
Tony Lawrence sa na Developer tutorial vyjadril: "/proc by mal byť nazvaný /kernel
a proc by sa nachádzal v ňom. Už je neskoro, samozrejme, ..." V tomto
prípade by sa sysfs taktiež nachádzal v adresári /kernel
.
Procfs ešte nejakú tú chvíľu v Linuxe zostane a nie je na škodu pozoznamovať sa s jeho výhodami a nevýhodami.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
CONFIG_BSD_PROCESS_ACCT=y
/proc
chaos, když se tam nahodile bez ladu a skladu přidávaly soubory, z nichž většina byla sice hezky srozumitelná pro člověka, ale prakticky neparsovatelná programem. Tento nepořádek se teď postupně uklízí a ty nejhorší atavismy se postupně opatrně odbourávají (např. /proc/pci
). Kvůli utilitám, které mezitím stihly vzniknout a které parsují ty neparsovatelné interface, ale proces čištění neprobíhá příliš rychle…
Jsem dinosaurus a konkretne /proc/pci, /proc//interupts, /proc/irq apod. mi budou opravdu chybet, casto mi usetrily spoustu nervu...
Ale ty snahy celkem chapu a zacnu se ucit sysfs...
PS: Proc mi to hodilo "Re: Přetaktování procosoru"?
3 -> socket:[15133]
pod /proc/$PID/fd/
, podivejte se na sloupec inode
v /proc/net/tcp
.
užívateľ -a mn. -ia m. kto má niečo v užívaní: užívateľ bytu;...
používateľ -a mn. -ia m. kto niečo používa: používatelia jazykaTakze pravda je zrejme na Tvojej strane.