Před 70 lety, 7. června 1954, ve věku 41 let, zemřel Alan Turing, britský matematik, logik, kryptoanalytik a zakladatel moderní informatiky.
NiceGUI umožňuje používat webový prohlížeč jako frontend pro kód v Pythonu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána ve verzi 2024.6. Z novinek lze vypíchnout lepší integraci LLM (OpenAI, Google AI, Ollama) nebo podporu Matter 1.3.
IKEA ve Spojeném království hledá zaměstnance do své nové pobočky. Do pobočky v počítačové hře Roblox. Nástupní mzda je 13,15 liber na hodinu.
Alyssa Rosenzweig se v příspěvku na svém blogu Vulkan 1.3 na M1 za 1 měsíc rozepsala o novém Vulkan 1.3 ovladači Honeykrisp pro Apple M1 splňujícím specifikaci Khronosu. Vychází z ovladače NVK pro GPU od Nvidie. V plánu je dále rozchodit DXVK a vkd3d-proton a tím pádem Direct3D, aby na Apple M1 s Asahi Linuxem běžely hry pro Microsoft Windows.
Byla vydána (𝕏) květnová aktualizace aneb nová verze 1.90 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.90 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Byla vydána (Mastodon, 𝕏) nová verze 2024.2 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení.
Počítačová hra Tetris slaví 40 let. Alexej Pažitnov dokončil první hratelnou verzi 6. června 1984. Mezitím vznikla celá řada variant. Například Peklo nebo Nebe. Loni měl premiéru film Tetris.
MicroPython (Wikipedie), tj. implementace Pythonu 3 optimalizovaná pro jednočipové počítače, byl vydán ve verzi 1.23.0. V přehledu novinek je vypíchnuta podpora dynamických USB zařízení nebo nové moduly openamp, tls a vfs.
Canonical vydal Ubuntu Core 24. Představení na YouTube. Nová verze Ubuntu Core vychází z Ubuntu 24.04 LTS a podporována bude 12 let. Ubuntu Core je určeno pro IoT (internet věcí) a vestavěné systémy.
Nic víc, než seznam příkazů pro zmiňovaný úkol: připojení obrazu disku, který obsahuje LVM.
Všechno je vykonáváno pod rootem.
Nalezení volného loop zařízení.
losetup -f
Připojení celého obrazu (první volné zařízení bylo /dev/loop0
).
losetup /dev/loop0 disk.img
Prozkoumání, co na disku vlastně je.
fdisk -l /dev/loop0
Disk /dev/loop0: 10.7 GB, 10738466816 bytes 255 heads, 63 sectors/track, 1305 cylinders, total 20973568 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00064320 Device Boot Start End Blocks Id System /dev/loop0p1 * 63 208844 104391 83 Linux /dev/loop0p2 208845 20964824 10377990 8e Linux LVM
Připojení prvního oddílu: je nutné spočítat offset a použít další volné zařízení (/dev/loop1
). Offset je Start
krát Units
, čili 63*512, což je 32256.
losetup /dev/loop1 -o32256 disk.img
Vlastní přimountování je pak už standardní.
mount /dev/loop1 /mnt/part1
Na dalším je už LVM. Je potřeba najít další volný loopback (/dev/loop2
), spočítat offset a připojit.
losetup /dev/loop2 -o106928640 disk.img
Nyní lze zjistit, co jsme vlastně připojili.
lvm pvscan
PV /dev/loop1 VG VolGroup00 lvm2 [9,88 GiB / 32,00 MiB free] Total: 1 [9,88 GiB] / in use: 1 [9,88 GiB] / in no VG: 0 [0 ]
O něco detailnější informace pak vypíše.
lvm lvs
LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert LogVol00 VolGroup00 -wi----- 9,31g LogVol01 VolGroup00 -wi----- 544,00m
Svazek je pak nutné zpřístupnit (available=yes).
lvm vgchange -ay
A nyní je možné ho normálně připojit.
mount /dev/VolGroup00/LogVol00 /mnt/lvm0
Úklid má několik kroků.
1. normální odpojení.
umount /mnt/lvm0 umount /mnt/part1
2. odpojení LVM svazku.
lvm vgchange -an
3. odpojení loopbacku (lze použít losetup -D
pro odpojení všeho).
losetup -d /dev/loop2 losetup -d /dev/loop1 losetup -d /dev/loop0
Ještě obligátní "detaily najdete v manuálových stránkách". Snad jsem nepomotal terminologii, berte to hlavně jako přehled, jak postupovat.
Tiskni Sdílej:
~ # losetup /dev/loop0 disk.img ~ # kpartx -a /dev/loop0 ~ # ls -lh /dev/mapper/loop0p* brw------- 1 root root 254, 6 6. srp 13.37 /dev/mapper/loop0p1 brw------- 1 root root 254, 7 6. srp 13.37 /dev/mapper/loop0p2Po dokončení práce se pak mapování "oddílů" ukončuje pomocí
~ # kpartx -d /dev/loop0Mně osobně to přijde jednodušší...
Tohle jsem neznal... já jsem to vždycky dělal tak, že jsem dal modulu loop parametr max_part (výchozí hodnota je 0).
# partx -a -n 2 disk.imgpripoji druhou partition z toho image jako loop. Chodi to i bez device-mapperu (ale pochopitelne pokud tam je jeste LVM tak je lepsi kpartx). Dalsi moznosti losetup --partscan (kernel >= 3.2, util-linux >= 2.21), kernel pak udela automaticky /dev/loopNpN devices pro *vsechny* partitions (partx umoznuje vybrat si).
parted /dev/sda "unit B print"A vytvořit loop zařízení a použít offset umí i samotný mount (stejnojmenné volby).