Byla vydána (𝕏) nová verze 24.7 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na FreeBSD. Kódový název OPNsense 24.7 je Thriving Tiger. Přehled novinek v příspěvku na fóru.
Binarly REsearch upozorňuje na bezpečnostní problém PKFail (YouTube) v ekosystému UEFI. Stovky modelů zařízení používají pro Secure Boot testovací Platform Key vygenerovaný American Megatrends International (AMI) a jeho privátní část byla při úniku dat prozrazena. Do milionů zařízení (seznam v pdf) po celém světě tak útočníci mohou do Secure Bootu vložit podepsaný malware. Otestovat firmware si lze na stránce pk.fail. Ukázka PoC na Linuxu na Windows na YouTube.
Mobilní operační systém /e/OS (Wikipedie) založený na Androidu / LineageOS, ale bez aplikací a služeb od Googlu, byl vydán ve verzi 2.2 (Mastodon, 𝕏). Přehled novinek na GitLabu. Vypíchnuta je rodičovská kontrola.
Společnost OpenAI představila vyhledávač SearchGPT propojující OpenAI modely umělé inteligence a informace z webů v reálném čase. Zatím jako prototyp pro vybrané uživatele. Zapsat se lze do pořadníku čekatelů.
Distribuce Linux Mint 22 „Wilma“ byla vydána. Je založená na Ubuntu 24.04 LTS, ale s desktopovým prostředím Cinnamon (aktuálně verze 6.2), příp. MATE nebo Xfce, balíkem aplikací XApp, integrací balíčků Flatpak a dalšími změnami. Více v přehledu novinek a poznámkách k vydání.
Příspěvek na blogu Truffle Security: Kdokoli může přistupovat ke smazaným a privátním repozitářům na GitHubu.
Byla vydána nová verze 14 integrovaného vývojového prostředí (IDE) Qt Creator. Podrobný přehled novinek v cgitu. Vypíchnout lze podporu rozšíření v Lua.
Byla vydána verze 1.80.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.
Apple oznámil, že v beta verzi spustil své Apple Maps na webu. Podporován je také webový prohlížeč Chrome. Ne však na Linuxu.
Portál Stack Overflow po roce opět vyzpovídal své uživatele, jedná se především o vývojáře softwaru, a zveřejnil detailní výsledky průzkumu. Průzkumu se letos zúčastnilo více než 65 tisíc vývojářů. Z Česka jich bylo 710. Ze Slovenska 246.
Zdravím,
stavím si takové malé liveCD na slackwaru, plánuji použít doupravené linux-live skripty ("upstream" verze je skutečně už hodně tlustá), nikdy jsem nepřišel na chuť initial ramdiskům, tak se to pokouším napravit teď.
Nakonfiguroval jsem si vlastní minimální kernel (1.1MB + 16MB moduly), filesystem drivery hodil (spolu s ATA/SATA/etc) jako moduly s tím, že je budu načítat v initrd (což je ta pointa, pokud jsem to dobře pochopil). Na samotné liveCD to asi potřeba nebude, ale rád bych byl schopen bootovat třeba z USB.
Tudíž jsem se pustil do - alespoň pro začátek - zkoušení initrd za pomoci qemu emulace. Velkou škodou je, že qemu neumí tak snadno "copy & paste", takže většinu z toho zde musím přepsat ručně (vím, jde to přes txt soubor a loop mount, ale z napůl funkčního busyboxu stěží).
lspci
mi jako IDE vyhodil
00:01.1 IDE interface: Intal Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
a po rychlém find
u v /lib/modules/
jsem usoudil, že piix.ko
modul bude ten pravý. Samotný filesystém je ext2, logicky jsem proto zkusil něco jako
mkinitrd -c -m ext2:piix -k 2.6.29.6 -o /boot/custom/initrd.gz
moduly byly přidány, lilo proběhlo úspěšně a já restartoval.
Po rebootu na nový kernel na mě čekal můj milý ash shell a busybox:
mount: mounting /dev/hda1 on /mnt failed: No such device or address
Tento error nevidím poprvé, měl jsem s ním problémy na debianu, když jsem se pokoušel udělat raid1 dualboot přes lilo (automatické nabootování z 2. disku, pokud je první kaput, bez diskety), nepamatuji si, jak jsem to tehdy vyřešil, ale příčina nalezena nebyla.
Trochu jsem se rozhlížel a vypadá to, že tenhle initrd používá mdev -s
na vytvoření blokových zařízení v /dev/
. Ten pravděpodobně prohledává /sys/block/
a vytváří zařízení podle toho, což je pěkná věc, dala by se použít jako odlehčená verze udevu na ostrém systému (/proc/sys/kernel/hotplug
), nejprve jsem myslel, že /dev/hda (3,0)
a /dev/hda1 (3,1)
má na svědomí on, ale vypadá to, že tyto zařízení tam nacpal už slackwarácký mkinitrd
("init" - který je použit místo linuxrc - je nevytváří a mdev také ne).
Příčina toho všeho je asi v neexistujícím hda/hda1 v /sys/block/
, resp. /sys/devices/virtual/block/
, v /sys/bus/ide/devices/
však obě zařízení jsou, po modprobe piix
při startu vypsal kernel dvě daná IDE zařízení (podle /sys/bus/ide/devices/*/model
jde o QEMU HARDDISK
a QEMU CD-ROM
, drivername
sedí - hda
a hdc
, modalias
je ide:m-disk
.
Nicméně ať se snažím sebevíc, kernel je prostě nedetekuje jako bloková zařízení (asi) a symlinky v /sys/block/
nevytvoří.
Stejnou chybovou hlášku (no such device or address) hází na předvytvořené /dev/hda
samozřejmě i jiné nástroje, jako hdparm
, cat
, apod. Zkusil jsem do initrd přidat další moduly, které by snad něco s IDE/ATA mohly mít společného, ale nic nepomohlo.
Tak se obracím na vás, je možné, že má chorá mysl něco triviálního zkonila, ale hledal jsem tady i na Googlu a o podobném problému se toho moc nepíše. Tutoriály o vytváření initrd jsou, vesměs typu "mkinitramfs -o /boot/initrd.gz 2.6.x.y
a je to hotovo", případně popisují tvorbu malého initial ramdisku ručně, bez modulů a mountování "skutečného" filesystému.
Tak jsem problém snad vyřešil. Byla to celkem nešťastná shoda více okolností - jednak jsem přesně nepochopil podstatu mdev z busyboxu, jednak "mkinitrd" ze Slackware nevytváří initrd, ale initramfs (tedy tmpfs), navíc tam cpe všechno tak nešikovně, ani modules.dep nevygeneruje / nepřekopíruje. To mělo za následek situaci, kdy qemu harddisk potřeboval "ide:m-disk", což je alias pro ide-disk, který je opět aliasem pro skutečný modul ide_gd_mod. To ale mdev díky chybějícímu modules.dep nemohl tušit a tak neudělal nic.
Ono by to až tak nevadilo, kdybych si tyto aliasy vygrepoval sám a přidal ide_gd_mod do initrd spolu s ext2 a piix. Totiž samotný ide_gd_mod toho moc neudělá, v tomto případě je potřeba i modul piix (což byla jedna z těch nepříjemných shod okolností, testoval jsem jednou samotný piix, pak samotný ide-disk, atp.).
Jsem rád, že mám tento případ za sebou, pro liveCD si stejně musím vytvořit initramfs "from scratch", tam by podobná situace neměla nastat.
... snad
Tiskni
Sdílej: