abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 04:44 | Nová verze

Byla vydána verze 0.7.0 debugovacího nástroje cgdb. Mezi novinky patří například zvýrazňování syntaxe jazyka Rust. Podrobnosti v poznámkách o vydání.

Neel | Komentářů: 0
25.3. 22:00 | Komunita

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 (podcast) detailní výsledky průzkumu. Průzkumu se letos zúčastnilo více než 64 tisíc vývojářů. Jejich nejmilovanější platformou je linuxový desktop. Ten je také druhou nejpoužívanější platformou vývojářů.

Ladislav Hagara | Komentářů: 3
24.3. 11:55 | Komunita

Vývojový tým OpenSSL ve spolupráci s iniciativou Core Infrastructure konsorcia Linux Foundation spustil proces přelicencování této kryptografické knihovny ze současné licence na licenci Apache Licence v 2.0 (ASLv2). Nová licence usnadní začleňování OpenSSL do dalších svobodných a open source projektů. Všichni dosavadní vývojáři OpenSSL (Authors) obdrží v následujících dnech email s prosbou o souhlas se změnou licence.

Ladislav Hagara | Komentářů: 24
24.3. 01:11 | Komunita

Před třemi týdny Mozilla.cz představila projekt Photon, jehož cílem je návrh a implementace nového vzhledu Firefoxu. Včera zveřejnila první náhled vzhledu Photon. Práce na projektu Photon jsou rozděleny do pěti týmů, které celkem čítají 19 lidí. Zaměřují se na zlepšení prvního spuštění Firefoxu a zaujetí nových uživatelů, celkovou úpravu vzhledu, zlepšení animací, zrychlení odezvy uživatelského rozhraní a také upravení nabídek. Vývoj lze sledovat v Bugzille.

Ladislav Hagara | Komentářů: 44
23.3. 20:00 | Komunita

OneDrive pro firmy je již ve webových prohlížečích na Linuxu stejně rychlý jako na Windows. Microsoft opravil chybu z listopadu loňského roku. OneDrive pro firmy běžel na Linuxu mnohem pomaleji než na Windows. V popisu chyby bylo uvedeno, že stačilo v prohlížeči na Linuxu nastavit v user-agentu Windows a vše se zrychlilo. Odpovědí Microsoftu bylo (Internet Archive: Wayback Machine), že Linux není podporován. Po bouřlivých diskusích na redditu i Hacker News byla chyba nalezena a opravena.

Ladislav Hagara | Komentářů: 6
23.3. 19:00 | Zajímavý projekt

Byla vyhlášena soutěž Hackaday Prize 2017. Soutěž je určena vývojářům open source hardwaru. Pro výherce je připraveno celkově 250 tisíc dolarů. Každý ze 120 finalistů získá tisíc dolarů. Nejlepší pak navíc 50, 30, 20, 15, 10 a 5 tisíc dolarů. Jedná se již o čtvrtý ročník soutěže. V roce 2014 zvítězil projekt globální sítě open source pozemních satelitních stanic SatNOGS. V roce 2015 zvítězil open source systém pro řízení elektrických invalidních vozíků pohybem očí Eyedriveomatic. V roce 2016 zvítězil modulární robot Dtto.

Ladislav Hagara | Komentářů: 0
23.3. 15:00 | Bezpečnostní upozornění

Byla vydána Samba ve verzích 4.6.1, 4.5.7 a 4.4.12. Řešen je bezpečnostní problém CVE-2017-2619. Pomocí symbolických odkazů a souběhu (symlink race) lze "teoreticky" získat přístup k souborům, které nejsou sdíleny. Linuxové distribuce jsou postupně aktualizovány (Debian).

Ladislav Hagara | Komentářů: 0
23.3. 07:43 | Nová verze

Na Steamu se objevil port hry Arma: Cold War Assault (Operation Flashpoint) pro Mac a Linux. … více »

creon | Komentářů: 30
23.3. 05:55 | Nová verze

Po 18 měsících od vydání verze 8.0 byla vydána verze 9.0 open source alternativy GitHubu, tj. softwarového nástroje s webovým rozhraním umožňujícího spolupráci na zdrojových kódech, GitLab. Představení nových vlastností v příspěvku na blogu a na YouTube.

Ladislav Hagara | Komentářů: 0
23.3. 03:33 | Komunita

Platnost posledního patentu souvisejícího s Dolby Digital (AC-3) vypršela. Po MP3 se tak do Fedory oficiálně dostane také kodek AC-3.

Ladislav Hagara | Komentářů: 5
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (14%)
 (2%)
 (71%)
 (3%)
 (10%)
Celkem 940 hlasů
 Komentářů: 72, poslední 1.3. 11:16
    Rozcestník

    Dotaz: python a ... zase disky

    23.7.2014 12:12 Milan
    python a ... zase disky
    Přečteno: 415×

    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í " :-D ) tak snad jste to pochopili,

    předem díky za nápovědu.

    Milan


    Řešení dotazu:


    Odpovědi

    23.7.2014 14:42 Sten
    Rozbalit Rozbalit vše Re: python a ... zase disky
    Otázka je, jestli opravdu potřebujete zjistit, že je to CD-ROM, nebo stačí zjistit, že tam není médium (můj odhad, proč to padá).

    To první lze zjistit tak, že tomu zařízení pošlete nějaký příkaz pro CD-ROM (doporučuji nějaký informační příkaz, třeba 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).
    23.7.2014 20:44 Milan Uhrák | skóre: 25 | blog: milan_at_ABC
    Rozbalit Rozbalit vše Re: python a ... zase disky
    Aha, no ono to právě kiksuje, když je zasunutý disk .. jinak ta enumerace mechaniku přeskočí. To jsem měl napsat ..

    V pylibparted jsem nenašel žádnou funkci, která by mi řekla : toto je harddisk, toto je CD ... toto je páska a podobně. Atributy major minor jména zařízení by mi to řeklo, ale nevím, jak je získat.
    23.7.2014 15:26 graviton
    Rozbalit Rozbalit vše Re: python a ... zase disky
    Takhle?

    os.stat("/dev/sr0").st_rdev >> 8
    23.7.2014 21:06 Milan Uhrák | skóre: 25 | blog: milan_at_ABC
    Rozbalit Rozbalit vše Re: python a ... zase disky
    ááááá ... teď jste mne dostal ...

    st_rdev je ta kouzelná formulka .. jak jsem to mohl přehlídnout, když jsem koukal na os.stat .. nechápu a vám díky ..

    Milan
    24.7.2014 10:47 graviton
    Rozbalit Rozbalit vše Re: python a ... zase disky
    Ono to ve výsledku z os.stat na rozdíl od ostatních věcí není vidět jako datová položka (asi metoda?), člověk musí zabloudit do dokumentace, aby se dozvěděl, na co že se to má zeptat.
    29.7.2014 14:45 Milan Uhrák | skóre: 25 | blog: milan_at_ABC
    Rozbalit Rozbalit vše Re: python a ... zase disky
    Nakonec jsem to zmastil takto :
    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
    

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.