Byl vydán Debian 13.6, tj. šestá opravná verze Debianu 13 s kódovým názvem Trixie a Debian 12.15, tj. poslední patnáctá opravná verze Debianu 12 s kódovým názvem Bookworm, k dispozici je LTS. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 a Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.
V jádře Linux byla nalezena a v upstreamu již byla opravena kritická zranitelnost GhostLock aneb CVE-2026-43499. Lokálnímu uživateli umožňuje získat práva roota a také obejít kontejnerovou izolaci. Zranitelnost existovala v Linuxu 15 let, tj. od roku 2011, od Linuxu verze 2.6.39.
Evropská komise předběžně shledala, že návykový design aplikací Instagram a Facebook od americké společnosti Meta porušuje unijní nařízení o digitálních službách (DSA). Návykový design zahrnuje například takzvané nekonečné posouvání, automatické přehrávání videí, tzv. push notifikace, kdy aplikace uživatele vybízí k návratu do jejího prostředí, či vysoce personalizovaný algoritmus, který rychle pozná, co uživatele baví a snaží
… více »Byla vydána verze 1.97.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.
Švýcarská společnost Punkt. má nově v nabídce telefon Punkt. MC03. Telefon byl navržen ve Švýcarsku s důrazem na soukromí a digitální suverenitu a vyroben v Německu. V telefonu běží operační systém AphyOS (Apostrophy OS) založený na AOSP (Android Open Source Project) 15. Cena telefonu je 745 eur.
TypeScript (Wikipedie), tj. JavaScript rozšířený o statické typování a další atributy, byl vydán v nové verzi 7.0. Kompilátor byl kvůli výkonu přepsán z TypeScriptu do Go.
Europarlament podpořil pozměněnou verzi výjimky známé jako „chat control 1.0“ umožňující firmám skenovat soukromou komunikaci na internetu kvůli ochraně dětí před zneužitím. Pozměňovací návrhy přijaté europoslanci však počítají s tím, že z výjimky bude vyřazena šifrovaná komunikace. Výjimka přestala platit začátkem dubna poté, co se Evropský parlament a Rada EU nedokázaly shodnout na jejím prodloužení. Rada následně přijala
… více »Nejnovější X.Org X server 21.1.24 a Xwayland 24.1.13 řeší 2 bezpečnostní chyby.
Clement "Clem" Lefebvre publikoval souhrn dění v Linux Mintu za červen 2026. Vypíchnuta je vylepšená podpora Waylandu. Už není považována za experimentální. V příští verzi Linux Mintu, plánována je na Vánoce, bude běh Cinnamonu plně podporován na X11 i Waylandu. V květnu na vývoj Linux Mintu přispělo 611 dárců celkovou částkou 19 612 dolarů. Dalších 2 326 patronů přispělo na Patreonu celkovou částkou 5 334 dolarů.
V Linuxu v KVM byla nalezena a v upstreamu již byla opravena kritická zranitelnost Januscape aneb CVE-2026-53359. Root na hostovaném počítači (virtuální stroj) může obejít izolaci a získat plnou kontrolu nad hostitelským systémem (DoS útok nebo vzdálené spuštění kódu s právy roota). Na obou hlavních architekturách – Intel i AMD. Zranitelnost v Linuxu existovala téměř 16 let (od srpna 2010 do června 2026).
Zdravím všechny ..
nedávno jsem se tady dotazoval, jak oddělím zrno od plév (soubory a /*teď už vím, že se to jmenuje */ nody ). Dalším googlením jsem se dostal až ke knihovně pylibparted (stará, neudržovaná, ale dobře se s tím pracuje, no, a hlavně, je v opensuse repu.
Nicméně ... knihovna má problém ( spíše to bude vlastnost ) s CDROMkou, některé funkce na tom padají, a pro mnou zamýšlený program stejně o práci s CDROMkou neuvažuju.
Ok, takže zase odděluji zrno od plév. Otázka zní, jak poznám, že nod patří CDROMce ?.
Jedna možnost se nabízí načíst si /proc/partitions a pylibparted se dotázat na path (pylibparted.PedDevice.getPath() ) k zařízení a tuto cestu najít v partitions, kde máme major minor, podle http://lxr.free-electrons.com/source/include/uapi/linux/major.h?v=3.14 tohoto nějak určit, že dané zařízení je CD, a loopnout se na další zařízení v pořadí (tj, nepokračovat dalším očucháváním CDčka ).
Tato konstrukce může fungovat, ale pak jsem si uvědomil, že mc a dokonce i ls -l mi prásknou major minor u nodu, tak proč to takto zdaleka obcházet?
Hm, ale teď nemůžu přijít na to, jak se k major minor v pythonu dostanu.
os.stat sice vrací st_dev, ale u těch nodů je to míněno asi jako device, kde leží (možná ani to ne, protože to, co se mi vrací, není stejné číslo jako v partitions ... moc o tom nevím).
Prolézal jsem další možnosti, zkusil jsem googlit, ale rozmanitost ( a nepoužitelnost ) nalezených výsledků mne opět zahnala tam "kde mi rozumějí "
) tak snad jste to pochopili,
předem díky za nápovědu.
Milan
Řešení dotazu:
CDROM_GET_CAPABILITY). Pokud to CD-ROM není, tak řekne, že to neumí.
To druhé je ještě jednodušší. Při pokusu to zařízení otevřít dostanete chybu “No medium found” (ENOMEDIUM).
import pylibparted, os (a možná ještě něco)
def collect_disks( ):
result = { }
devs = pylibparted.probeAllDevices()
for p in devs :
# Device
d = pylibparted.PedDevice(p)
devpath = d.getPath()
devpath_stat = os.stat(devpath)
d_mode = devpath_stat.st_mode
if ( d_mode & 24576 <> 24576 ) :
#print 'Device:', devpath, ' is not block'
continue
d_major = devpath_stat.st_rdev >> 8
#print d_major
if ( not d_major in (8, 3, 22 ) ):
#print "Device ", devpath, ' is not a disk'
continue
result[ devpath ] = {}
model = d.getModel()
#print 'Model: ', model
result[ devpath ][ 'model' ] = model
result[ devpath ][ 'type' ] = 'D'
#print 'Device type :', d.getType()
size = d.getLength()
#print 'Size:', size
result[ devpath ][ 'size' ] = size
ssize = d.getSectorSize()
#print 'Sector size: ', ssize
result[ devpath ][ 'ssize' ] = ssize
disktype = d.diskProbe()
subtype = disktype.getName()
#print'Name: ', subtype
result[ devpath ][ 'subtype' ] = subtype
c,h,s = d.getBiosCHS()
chs = str(c) + '/' + str(h) + '/' + str(s)
#print 'BIOS CHS:', chs
c,h,s = d.getHwCHS()
chs = str(c) + '/' + str(h) + '/' + str(s)
#print 'HW CHS:', chs
# Partition table
pt = d.diskNew()
parts = pt.getPartitions()
for part in parts :
if part.isActive() :
part_path = part.getPath()
#print ' Partition:', part_path
result[ part_path ] = {}
result[ part_path ]['type'] = 'P'
parttype = part.getTypeName()
#print ' Type Name:', parttype
#print ' ID:', part.getId()
result[ part_path ][ 'model' ] = parttype
geom = part.getGeometry()
#print ' Start:', geom.getStart()
#print ' End:', geom.getEnd()
size = geom.getLength()
#print ' Length:', size
result[ part_path ][ 'ssize' ] = ssize
result[ part_path ][ 'size' ] = size
fs = part.getFsType()
if fs :
#print ' FS:', fs.getName()
result[ part_path ]['subtype'] = fs.getName()
# parts
# devs
return result
Tiskni
Sdílej: