Začal semestr, začal i podzim a kromě hub rostou jako po dešti i veřejné dílny v Praze. Nedávno strahováci referovali o hackerspacu Bordel, nyní se otevřela dílna Dejvice Lab jen kousek od ČVUT. Na blížící Virtuální Bastlírně tak uslyšíte nejen report z návštěvy dílny HWLab, ale i řadu novinek, událostí a úsměvných momentů, které se za poslední měsíc ve světě techniky, ale i vědy udály. Připojte se tedy již v úterý 13.10. od 20:00 a zapojte se do
… více »Byl vydán LineageOS 24 (Mastodon). LineageOS (Wikipedie) je svobodný operační systém pro chytré telefony, tablety a set-top boxy založený na Androidu. Jedná se o nástupce CyanogenModu. LineageOS 24 je založený na Androidu 17.
Společnost Valve publikovala na svém GitLabu nákresy a schémata zapojení headsetu Steam Frame. Pro nekomerční účely.
Soutěž Pwn2Own Ireland 2026 skončila 9. října. Bezpečnostní výzkumníci získali celkem 1 262 000 dolarů na odměnách. Během soutěže bylo předvedeno zneužití 98 zero-day zranitelností. Testování zahrnovalo různé kategorie zařízení a software. Výzkumníci předváděli prakticky fungující útoky podle pravidel soutěže. Výsledky následně slouží výrobcům při přípravě oprav. Mezi pokořenými jsou: Samsung Galaxy S26, OpenAI Codex, Oracle Autonomous AI Database, Google Pixel 10, u iPhone 17 neuspěli.
Programovací jazyk Python byl vydán v nové verzi 3.15.0. Podrobný přehled novinek v aktualizované dokumentaci.
BIGWORDS.PAGE je open-source webová aplikace, která po otevření odkazu v prohlížeči vykreslí přes celou obrazovku jednoduché informační sdělení. Zpráva i její nastavení jsou uložené v části URL za znakem #, například odkaz https://bigwords.page/#abclinuxu zobrazí jako velký bílý nápis 'abclinuxu' na černém pozadí. Obsah odkazu lze upravovat i vestavěným editorem, ten umožňuje nastavovat formátování a vizuální efekty textu, časovače, QR kódy a obrázky. Zdrojový kód je dostupný pod licencí MIT na GitHubu.
V neděli 11. října proběhne rotace klíče kořenové zóny. Podruhé v historii. Ondřej Filip na blogu CZ.NIC: "Pokud je pro Vás DNS protokol spíše výzva, ale přesto spravujete nějakou síť či DNS resolver, zkuste si jednoduchý test, který připravila firma Cloudflare na této adrese. Obzvláště zbystřit byste měli, pokud uvidíte nějaká červená políčka."
Vláda Spojených států se rozhodla vyřadit americkou softwarovou společnost Microsoft a několik dalších velkých technologických podniků z programu, který umožňuje kvalifikovaným zahraničním pracovníkům získat povolení k trvalému pobytu. Oznámila to včera administrativa amerického prezidenta Donalda Trumpa. Opatření zdůvodnila rozsáhlým zneužíváním programu, který je dlouhodobě terčem kritiky ze strany Trumpových příznivců, neboť prý znevýhodňuje americké pracovníky.
Datové centrum největší ruské technologické společnosti Jandex v Rjazaňské oblasti se stalo cílem dronového útoku a zastavilo provoz. Jandexu se někdy přezdívá „ruský Google“. Provozuje nejoblíbenější internetový vyhledávač v Rusku nebo aplikace pro objednávky jídla a taxi. Využívají jej desítky milionů lidí v rusky mluvících zemích.
Francouzská společnost Mistral AI představila Mistral Large 4 (interně přezdívaný 'le Chonk', volně přeloženo 'pořádný macek'), 'open-weight multimodální hybridní instruct-and-reasoning model s architekturou granulárního MoE, nativně podporující více jak 160 jazyků'. Model má přes jeden bilión parametrů, z nichž při práci využívá 49 miliard, kontextové okno o délce milion tokenů a obrazový enkodér o 1,6 miliardách parametrů.
… více »Článek jsem se snažil napsat tak, aby byl k něčemu především začátečníkovi. Za zjednodušení, případné nepřesnosti a jiné vady na kráse mne tedy prosím nekamenujte. Dále jsem zvolil princip více praxe, méně teorie. Pokud bude návod fungovat, není nutné znát více, ačkoli je podle mého názoru užitečné znát problematiku poněkud do hloubky. Pokud je na některém místě použito fixme, pak to znamená, že v této oblasti nejsem příliš kovaný a uvítám odezvu publika.
Následující postup byl odzkoušen na distribucích SuSE 7.3 a Mandrake 8.2. U SuSE jsem použil jádro 2.4.18 a 2.2.20, u Mandrake jádro přímo z distribuce(2.4.18-6mdk).
Známe to všichni. Výrobce přijde s nějakým kusem železa, vychvaluje jeho vlastnosti, prodá nám jej za výhodnou cenu, ale jaksi se nezmíní, že jeho zařízení je podporováno pouze pod WIN OS, a podporu Linuxu rozhodně rozjíždět nehodlá. Zařízení funguje pod WIN díky proprietárním ovladačům, a dokud se nějaký machr nerozhodne vyrobit ovladač pod Linux, máme prostě smůlu. Tohle se týká v poslední době hlavně interních Winmodemů, ale také mnoha USB zařízení. Externí USB modemy a ISDN T/A bohužel nejsou výjimkou.
Naštěstí existuje specifikace USB CDC ACM (Universal Serial Bus Communication Device Class Abstract Control Model), kterou některé modemy používají pro komunikaci s USB rozhraním. Ty pak pod Linuxem fungují bez problémů. (fixme: Jestli se nepletu, tyto modemy bez problémů běhají i pod Macy) Proto doporučuji před nákupem takového zařízení ověřit na stránkách výrobce, či u prodejce, zda-li je ACM kompatibilní.
Linux je velice variabilním operačním systémem. V praxi to znamená, že konkrétní postup nemusí fungovat ve všech případech stejně. Proto si nejdříve ze všeho musíme o svém Linuxu zjistit tyto informace:
localhost:~ # mount |grep devfs
devfs on /dev type devfs(rw)
Vypsala se řádka s devfs, takze systém používá devfs.
localhost:~ # ls /etc/hotplug
. .. blacklist net.agent pci.rc usb.distmap usb.rc
hotplug.functions pci.agent usb.agent usb.handmap usb.usermap
Vidíme, že je hotplug nainstalován. Pokud ne, objeví se nám toto:
localhost:~ # ls /etc/hotplug
ls: /etc/hotplug: není souborem ani adresářem
Na jedné konzoli budeme kontrolovat systémová hlášení(jako root), a to příkazem
localhost:~ # tail -f /var/log/messages
Teď odpojíme modem z USB portu.
Tato část je pro starší distribuce Linuxu, předpokládám, že jich bude méně. Ti, kteří mají hotplug,
přeskakují na Zapojení modemu. Na druhé konzoli přejdeme do režimu superuživatele (root). Nejdříve zjistíme,
zda-li je nahrán nějaký z následujících modulů: uhci, usb-uhci, nebo usb-ohci.
localhost:~ # lsmod
uhci 24160 0 (unused)
Máme nahraný modul uhci.
Pokud nic nahráno není, tak postupně zkusíme nějaký z modulů uhci, usb-uhci, nebo usb-ohci
nahrát příkazem modprobe:
localhost:~ # modprobe uhci
Jakmile se nahraje bez chybových hlášení nějaký z nich, poznamenáme si, který to byl a pokračujeme.
Dále nahrajeme moduly usbcore a acm těmito příkazy:
localhost:~ # modprobe usbcore
localhost:~ # modprobe acm
Na konzoli, kde sledujeme systémová hlášení, si ověříme, jak to zafungovalo. Mělo by se objevit něco jako:
acm.c: v0.21:USB Abstract Control Model driver for USB modems and ISDN adapters
Doposud bychom neměli narazit na problém.
Modem zapojíme do USB portu. Nyní pečlivě sledujeme konzoli se systémovými hlášeními. Pokud se objeví něco jako:
hub.c: USB new device connect on bus2/2, assigned device number 5
ttyACM0: USB ACM device
máme vyhráno. Modul acm právě rozpoznal náš modem jako ACM kompatibilní a umí s ním komunikovat.
Pokud se objeví v logu pouze něco jako:
hub.c: USB new device connect on bus2/2, assigned device number 2
usb.c: USB device 2 (vend/prod 0x7b0/0x3) is not claimed by any active driver.
tak zkontrolujeme, zda je aktivní modul acm příkazem:
localhost:~ # lsmod | grep acm
acm 5216 0 (unused)
Pokud se nic nevypíše, příkazem:
localhost:~ # modprobe acm
nahrajeme potřebný modul. Teď by se mělo objevit to hledané
ttyACM0: USB ACM device
Pokud se nic neobjeví, znamená to že patříme mezi méně šťastné jedince. Modem není ACM kompatibilní a tento článek bohužel nepomůže.
Těm, kteří pokračují ve čtení, se jejich postup bude lišit podle toho, jestli používají devfs.
Modul acm nám nyní vytvořil zařízení v /dev/usb/acm, a to s čísly 0, 1 nebo 2. Převedeno do
češtiny to znamená, že pokud používáme jeden USB modem, mělo by existovat zařízení /dev/usb/acm/0.
localhost:~ # ls -l /dev/usb/acm/
crw-r--r-- 1 root root 166, 0 Apr 1 10:49 /dev/usb/acm/0
Toto zařízení pak používáme pro komunikaci s modemem. Pro zjednodušení si můžeme si vytvořit symlink příkazem:
localhost:~ # ln -s /dev/usb/acm/0 /dev/modem
Dále se budeme odkazovat pouze na /dev/modem.
(fixme: Vzhledem k tomu, že devfs nepoužívám, bych prosil někoho se zkušenostmi, jak tento
link zachovat i po restartu počítače, případně jestli to daná distribuce dělá automaticky.)
Abychom mohli používat modem, musíme mít (nejlépe v adresáři /dev)
speciální soubor, který na modem odkazuje.
U SuSE Linuxu 7.3, je již předem vytvořen /dev/ttyACM0. Pokud jej nemáme, podíváme se
ještě, jestli náhodou neexistuje /dev/usb/ttyACM0.
localhost:~ # ls /dev/ttyACM*"
crw-rw---- 1 root uucp 166, 0 říj 8 2001 /dev/ttyACM0
crw-rw---- 1 root uucp 166, 1 říj 8 2001 /dev/ttyACM1
crw-rw---- 1 root uucp 166, 2 říj 8 2001 /dev/ttyACM2
crw-rw---- 1 root uucp 166, 3 říj 8 2001 /dev/ttyACM3
localhost:~ # ls /dev/usb/ttyACM*
ls: /dev/usb/ttyACM*: není souborem ani adresářem
Pokud nic nenajdeme, musíme speciální soubor vytvořit. To uděláme příkazem:
localhost:~ # mknod /dev/ttyACM0 c 166 0.
localhost:~ # chgrp uucp /dev/ttyACM0.
Pak, abychom si věci trochu zjednodušili, vytvoříme symlink
localhost:~ # ln -s /dev/ttyACM0 /dev/modem
Dále se budeme odkazovat pouze na /dev/modem.
V souboru /etc/group pak do skupiny uucp přidáme všechny uživatele, kteří mají mít přístup k modemu.
Konkrétní řádek ze souboru /etc/group pak bude vypadat např. takto:
uucp:x:14:uucp,fax,root,fnet,milan,marika
Nyní máme modem funkční, takže věc je stejná, jako s modemem připojovaným k sériovému portu.
Zadáme pouze kde se modem nachází, tj. /dev/modem, /dev/usb/acm/0 nebo /dev/ttyACM0.
Pak už nám nic nebrání modem používat. I když...
Modemy pro svá nastavení používají tzv. AT příkazy. Ve zkratce: potřebujeme zinicializovat modem tak,
abychom se mohli připojit (více informací o modemech najdeme
tady).
Je to smutné, ale nejvíce se mi osvědčilo tyto příkazy zkopírovat z logu, který vytvářejí WIN při
komunikaci s konkrétním modemem. Pod W98 jej najdeme tady:
Modemy->vlastnosti->připojení->upřesnit->zobrazit protokol.
Ty řetězce začínají slovy "Send: ATxxxxxxxxxxxx". Většinou bývají 2-3.
Je to jednoduché, rychlé a funkční.
Druhá možnost pro odvážné je: zjistit si kompletní seznam AT příkazů od výrobce, a nastavit modem sám. (fixme: další způsoby, jako extrakce z .inf souborů, očekávám v diskusi.)
(fixme: Tady to není moje parketa, prosím o případné doplnění.) Do souboru "/etc/modules.conf" přidáme následující řádky:
alias char-major-166 acm
pre-install acm /sbin/modprobe "usbcore"
pre-install usbcore /sbin/modprobe "uhci"
Modul uhci nahradíme modulem, který jsme si poznamenali v sekci Nemáme hotplug helper.
V konzoli spustíme:
localhost:~ # depmod
Nyní, kdykoli se nějaký program pokusí komunikovat se zařízením /dev/ttyACM*, nahrají se moduly
potřebné pro komunikaci s modemem.
V souboru /etc/hotplug/usb.distmap by měl být řádek začínající slovem acm. Pokud tam není,
přidáme jej:
acm 0x0070 0x0000 0x0000 0x0000 0x0000 0x02 0x00 0x00
To nám zajistí, že při připojení modemu do USB portu se automaticky nahraje potřebný modul.
Snažil jsem se pokrýt všechny oblasti, kde bychom mohli narazit na problém. Doufám, že se ozvete v diskusi, opravíte chyby a doplníte informace. Můj modem je Diva 852 T/A od firmy Eicon, funguje bezproblémově. Pokud vím, tak zase USB modemy a T/A od Microcomu problémové jsou.
Doufám, že jsem čtenářům pomohl a všem vám přeju hodně zábavy s Linuxem.
/usr/src/Linux/Documentation/usb/acm.txt
/usr/src/Linux/Documentation/filesystems/devfs/README
man 5 modules.conf
man 1 mknod
http://Linux-hotplug.sourceforge.net
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
- sledovani "/var/log/messages"
- kontrola a pripadna modifikace souboru v "/etc/hotplug/"
- uplatneni ruznych postupu pro devfs a specialni zarizeni v adresari "/dev/"
Samozrejme pri pouziti jineho hardware je nutne nejak zjistit, jaky modul je potreba - napr. na www.linux-usb.org, nebo od vyrobce(kdyz ma clovek kliku), pripadne z dokumentace k jadru.
((.
Jinak clanek je pekny a poucny.