Dne 1. 9. 2014 v 14:22 Dan Lukes napsal(a):
On 09/01/14 13:30, Miroslav Lachman:

To vim, kdy nemuze necitelny soubor zasahnout. To kdyz mas velikost
fragmentu vetsi nez jeden sektor (coz neni neobvykle) a poskozeny je
nektery ze sektoru fragmentu, ktery uz neni pouzity pro ulozeni dat.

Takovy sektor neni volny (protoze nejmensi alokacni jednotkou je
fragment) a "zaplnenim disku" ho netrefis.

Nemusi ho ale najit ani precteni vsech souboru, protoze tenhle konkretni
sektor je sice soucasti fragmentu, ktery patri do nejakeho souboru, ale
neni sektorem ve kterem jsou ulozena nejaka data toho souboru.

No, ale kdyz nad timhle tak nejak premyslim, tak tohle by mi v podstate nemelo tak nejak vadit - vadny sektor je v miste, kde nic neni. Az se tam neco bude chtit zapsat, tak se "opravi".

Muj vadny sektor musi byt nekde v datech, protoze mi na konzole skacou chyby cteni. kdyby byla chyba ve volnem miste, tak by to, predpokladam, nic nechtelo cist.


Dale si nejsem jisty, jestli "cteci" metoda spolehlive trefi sektor,
ktery patri do nejake (drive velke, dnes ale prevazne nepouzivane)
adresarove struktury (soubor typu 'd'). Ze ho netrefi metoda
"zaplnovaci" je jasny.

No, to je taky otazka - co kdyz je vadny sektor v adresarove strukture? Kdy mi takhle nahlasi chybu cteni?



Takze nakonec jsem si napsal vlastni utilitu, ktera cte cely disk po
relativne velkych blocich (takze pomerne rychle) a kdyz se konkretni
blok nepovede, tak to pulenim intervalu upresni az na uroven jednoho
sektoru - a prepise jen ten. Navic za "problem" nepovazuju jen to, ze se
dany blok nepodarilo precist vubec, ale i to, ze jeho cteni trvalo
"nejak podezrele dlouho". V takovem pripad predpokladam, ze blok
obsahuje sektor s "mekkou vadou", ktery sel precist jen zasluhou L2
samoopravnych mechanismu (ktere ale trvaji dele) - a pro jistotu ho
prepisu taky (dokud z nej jeste mam kompletni a spravna data). Nic
horsiho, nez to, ze jsem ho prepsal zbytecne se nestane.

Zeptam se dost netaktne - nedala by se ta utilita nejak nekde najit / ziskat / upiratit ;-) ? Je mozne ji pustit za chodu systemu nebo musi pri jejim behu byt system mimo provoz? Predpokladam, ze se ctenim problem nebude - cist muzu kdykoli cokoli. Co se ale stane pri pokusu o zapis? ...a dozvim se pri pouziti tehle utility ktery soubor / adresarova struktura byla zasazena?


Mimochodem - porad nejak proste nechapu, ze muze byt takovy problem zjistit, ktery sektor patri kteremu souboru. System nema problem s tim, ze kdyz chce neco precist nebo neco zapsat, aby spravne sektory nasel a prcetl / zapsal a udelal o tom zaznam do alokacnich tabulek... Kdyz se to neda dopocitat od sektoru k souboru, co kdyby se na to slo proste jen naopak? Vzit adresarovou strukturu "/" a jet cely disk adresar po adresari, soubor po souboru a cist jen sektory, kde dana struktura / soubor lezi. To by mohla byt vicemene celkem rychla operace (jasne, v zavislosti na poctu adresaru), cetly by se "jen" alokacni tabulky". A netlucte mne, jsem si vedom toho, ze se mi o tom strasne snadno mluvi, kdyz o tom vim tak akorat velky ne prilis vonavy. A stejne si to nenaprogramuju. Treba to ale neni uplne debilni napad a nekdo to naprogramovat zkusi, protoze se mu to bude hodit.

Zbynek
--
FreeBSD mailing list ([email protected])
http://www.freebsd.cz/listserv/listinfo/users-l

Odpovedet emailem