Byla vydána verze 9.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a informačním videu.
Firefox 151 podporuje Web Serial API. Pro komunikaci s různými mikrokontroléry připojenými přes USB nebo sériové porty už není nutné spouštět Chrome nebo na Chromiu postavené webové prohlížeče.
Byla vydána nová stabilní verze 8.0 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 148. Přehled novinek i s náhledy v příspěvku na blogu.
Ve FreeBSD byla nalezena a opravena zranitelnost FatGid aneb CVE-2026-45250. Jedná se o lokální eskalaci práv. Neprivilegovaný uživatel se může stát rootem.
Společnost Flipper Devices oznámila Flipper One. Zcela nový Flipper postavený od nuly. Jedná se o open-source linuxovou platformu založenou na čipu Rockchip RK3576. Hledají se dobrovolníci pro pomoc s dokončením vývoje (ovladače, testování, tvorba modulů).
Vývojáři Wine oznámili vydání verze 2.0 knihovny vkd3d pro překlad volání Direct3D na Vulkan. Přehled novinek na GitLabu.
Společnost Red Hat oznámila vydání Red Hat Enterprise Linuxu (RHEL) 10.2 a 9.8. Vedle nových vlastností a oprav chyb přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Vypíchnout lze CLI AI asistenta goose. Podrobnosti v poznámkách k vydání (10.2 a 9.8).
Organizace Apache Software Foundation (ASF) vydala verzi 30 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.
Byla vydána nová verze 7.0 svobodného open source redakčního systému WordPress. Kódové jméno Armstrong bylo vybráno na počest amerického jazzového trumpetisty a zpěváka Louise Armstronga (What A Wonderful World).
V Drupalu byla nalezena a opravena kritická zranitelnost SA-CORE-2026-004 (CVE-2026-9082). Útočník může provádět libovolné SQL dotazy na webech používajících databázi PostgreSQL.
Zdravim,
potreboval bych zporvoznit udev na embedded zarizeni bezici na kernelu verze 2.6.19.2. Zarizeni ma 2 USB porty, na ktere bych potreboval pripojit 2 USB gprs modemy. Problem je v tom, aby kazdy modem byl identifikovat podel pripojeni (port1 - zarizeni /dev/modem1, port2 - zarizen /dev/modem2). Pro tyto ucely jsem nastavil udev, pridal mu pravidla pro jednotlive modemy:
KERNELS=="1-1:1.0", SUBSYSTEM=="tty", SYMLINK+="modem1"
KERNELS=="1-2:1.0", SUBSYSTEM=="tty", SYMLINK+="modem2"
Udaje jsem opsal z vypisu udevinfo. Problem je, ze symlinky se nevytvori a dokonce udevtest na /class/tty/ttyACM0 nevypise nic, ze by provadel nejakou akci. Pokud do udev.rules pridama pravidlo:
KERNEL=="eth0", SYMLINK+="test_sit"
a spustim udevinfo /class/net/eth0 pak se vypise, ze by se vytvoril symlink test_sit, cili udev jako takovy funguje. Nemate nekdo tuseni, proc udev nefunguje na usb zarizeni, ale funguje na sit? Pripadne jak rozlisit 2 usb modemy podle toho, do jakeho portu jsou pripojeny?
KERNELS=="1-1:1.0" vs KERNEL=="1-1:1.0"?
Zkousel jsem i SUBSYSTEM=="usb", ale ani tak to nereagovalo. Nechapu, ze napr. pro sit to funguje, ale usb udev nejak odmita. Zkousel jsem vytvaret pravidla pro disk KERNEL=="hda1" (pripadne SUBSYSTEM=="block") a taky nic (i kdyz podle vypisu udevinfo by to melo byt spravne).
udevinfo vypisuje KERNELS, primo u zarizeni je KERNEL=="ttyACM0", ale z toho nejsem schopen rozpoznat, na ktery USB port je zarizeni propjeno. Prvnich nekolik zaznamu v udevinfo:
$ udevinfo -a -p /class/tty/ttyACM0
looking at device '/class/tty/ttyACM0':
KERNEL=="ttyACM0"
SUBSYSTEM=="tty"
DRIVER==""
ATTR{dev}=="166:0"
looking at parent device '/devices/pci0000:00/0000:00:0f.0/usb1/1-2/1-2:1.0':
KERNELS=="1-2:1.0"
SUBSYSTEMS=="usb"
DRIVERS=="cdc_acm"
ATTRS{modalias}=="usb:v0681p0034d0000dc02dsc00dp00ic02isc02ip01"
ATTRS{bInterfaceProtocol}=="01"
ATTRS{bInterfaceSubClass}=="02"
ATTRS{bInterfaceClass}=="02"
ATTRS{bNumEndpoints}=="01"
ATTRS{bAlternateSetting}==" 0"
ATTRS{bInterfaceNumber}=="00"
looking at parent device '/devices/pci0000:00/0000:00:0f.0/usb1/1-2':
KERNELS=="1-2"
SUBSYSTEMS=="usb"
DRIVERS=="usb"
ATTRS{product}=="MC75"
ATTRS{manufacturer}=="Siemens AG Wireless Modules"
ATTRS{maxchild}=="0"
ATTRS{version}==" 1.10"
ATTRS{devnum}=="12"
ATTRS{speed}=="12"
ATTRS{bMaxPacketSize0}=="8"
ATTRS{bNumConfigurations}=="1"
ATTRS{bDeviceProtocol}=="00"
ATTRS{bDeviceSubClass}=="00"
ATTRS{bDeviceClass}=="02"
ATTRS{bcdDevice}=="0000"
ATTRS{idProduct}=="0034"
ATTRS{idVendor}=="0681"
ATTRS{bMaxPower}==" 0mA"
ATTRS{bmAttributes}=="e0"
ATTRS{bConfigurationValue}=="1"
ATTRS{bNumInterfaces}==" 2"
ATTRS{configuration}==""
....
# USB device by USB bus
KERNEL=="sd?1", KERNELS=="3-3", ATTRS{busnum}=="3", SYMLINK+="usb_left"
KERNEL=="sd?1", KERNELS=="7-2", ATTRS{busnum}=="7", SYMLINK+="usb_right_top"
KERNEL=="sd?1", KERNELS=="7-1", ATTRS{busnum}=="7", SYMLINK+="usb_right_bottom
myslím že to funguje dobře. Ale busnum u vás nevidím...? Očekával bych to tam co KERNELS=="1-2" :(
SUBSYSTEM=="usb", ATTRS{serial}=="nejakyserial", SYMLINK+="modem1"
Ještě bych se podíval, jestli někde v jiných udev pravidlech není použita podmínka last_rule pro tento typ zařízení, to by pak tvoje další pravidla nebyla brána v potaz. Hledej něco jako (například):
KERNEL=="ttyACM[0-9]*", GROUP="modem", OPTIONS+="last_rule"
No on momentalne hlavni problem je ten, ze se na usb zarizeni neaplikuje zadne pravidlo (ani bez serioveho cisla). Ani s pravidlem:
SUBSYSTEM=="usb", SYMLINK+="modem1"
(coz by podle me melo platit pro vsechna usb zarizeni) se neprovede nic.
Pravidla popsana v puvodnim prispevku jsou jedina, co tam jsou, jine soubory s pravidly tam nemam.
Možná hloupá otázka, ale není ten udev na embedded routeru třeba nějaký ořezaný?
On to neni router. Ten udev jsem tam kopiroval rucne a je dost mozne, ze jsem neco vynechal. Nakopiroval jsem binarky udevd, udevinfo, udevtest, udevtrigger, udevmonitor a udevcontrol + knihovny nutne pro spusteni techto programu. V adresari /etc/udev/rules.d/ jsem vytvoril soubor s pravidlama, v kernelu je podpora pro sysfs, ktery se po nabootovani primountuje do /sys. Nevim, jestli nejsou pri prekladu kernelu nejake volby, ktere by mely zasadni vliv na funkci udev (krome hotplug).
Adresar /lib/udev tam mam, obsah je nasledujici:
-rwxr-xr-x 1 root root 7684 Apr 21 11:29 ata_id
-rwxr-xr-x 1 root root 7140 Apr 21 11:29 cdrom_id
-rwxr-xr-x 1 root root 499 Apr 21 11:29 check_driver
drwxr-xr-x 2 root root 1024 Apr 21 11:29 devices
-rwxr-xr-x 1 root root 9012 Apr 21 11:29 edd_id
-rwxr-xr-x 1 root root 496 Apr 21 11:29 firmware.agent
-rw-r--r-- 1 root root 3105 Apr 21 11:29 hotplug.functions
-rwxr-xr-x 1 root root 1259 Apr 21 11:29 ide-devfs.sh
-rwxr-xr-x 1 root root 688 Apr 21 11:29 ide.agent
-rwxr-xr-x 1 root root 614 Apr 21 11:29 logger.agent
-rwxr-xr-x 1 root root 2042 Apr 21 11:29 net.agent
-rwxr-xr-x 1 root root 11717 Apr 21 11:29 path_id
-rwxr-xr-x 1 root root 1298 Apr 21 11:29 raid-devfs.sh
-rwxr-xr-x 1 root root 1576 Apr 21 11:29 scsi-devfs.sh
-rwxr-xr-x 1 root root 559 Apr 21 11:29 scsi-re-add
-rwxr-xr-x 1 root root 20156 Apr 21 11:29 scsi_id
-rwxr-xr-x 1 root root 7412 Apr 21 11:29 udev_run_devd
-rwxr-xr-x 1 root root 7280 Apr 21 11:29 udev_run_hotplugd
-rwxr-xr-x 1 root root 13912 Apr 21 11:29 usb_id
-rwxr-xr-x 1 root root 14036 Apr 21 11:29 vol_id
-rwxr-xr-x 1 root root 2784 Apr 21 11:29 write_cd_rules
-rwxr-xr-x 1 root root 3477 Apr 21 11:29 write_net_rules
Tiskni
Sdílej: