..\..\..\..\..\_vti_bin/shtml.exe/Pcworld/PCW93-
98/SITE/HOC_TAP/05_97/9705_084.HTM/map ..\..\..\..\..\_vti_bin/shtml.exe/Pcworld/PCW9
3-98/SITE/HOC_TAP/05_97/9705_084.HTM/map
Khưi phc nhanh dûä liïåu bõ mêët
Trong mưåt thïë giúái chûa thêåt sûå hoân thiïån, cêìn phẫi hiïíu àûúåc nhûäng ngun
nhên gêy ra lưỵi cho àơa cûáng ca bẩn vâ cấch khùỉc phc chng
ưå phêån nâo àấng giấ nhêët trong mấy tđnh ca bẩn? Àố khưng lâ CPU, àêìu àổc
CD-ROM, mân hònh hay ưí àơa, mâ lâ dûä liïåu vâ chûúng trònh ghi trïn àơa. Khi àưåt
nhiïn dûä liïåu nâo àố biïën mêët hóåc khưng truy cêåp àûúåc nûäa, ngûúâi ta cố cẫm
giấc nhû àấnh rúi mưåt chiïëc cưëc pha lï qu giấ. Nhûng ai cng biïët rùçng àố chó
lâ cẫm giấc thoấng qua vò khưi phc lẩi têåp tin dïỵ hún nhiïìu, vúái àiïìu kiïån lâ
bẩn cố trong tay cưng c thđch húåp vâ kiïën thûác cêìn thiïët.
Cấch tưët nhêët àïí lêëy lẩi nhûäng gò àậ mêët lâ thûúâng xun sao lûu hïå thưëng. Chi
phđ cho hïå thưëng sao lûu lâ rêët nhỗ so vúái dûä liïåu q giấ, do àố bẩn khưng nïn
tiïëc tiïìn àêìu tû cho ưí bùng hóåc ưí Zip. Nhûng ngay cẫ khi khưng cố bẫn lûu múái
nhêët, vêỵn cố thïí khưi phc àûúåc têåp tin, vâ àố lâ ch àïì ca bâi nây.
Cấch tưí chûác trïn àơa
Àún võ nhúá cú bẫn trïn àơa lâ cung (sector), thûúâng vúái kđch cúä 512 byte, nhûng
khưng nhêët thiïët phẫi nhû vêåy. Nhiïìu àơa RAM vâ thiïët bõ nhúá dng sector cúä 256
byte. Mưỵi cung cố sưë hiïåu riïng, thåc mùåt (head) àơa nâo vâ rậnh (tûâ tr) nâo.
Vđ d, àơa mïìm 3,5 inch cố 2 mùåt, 80 rậnh, 18 cung/rậnh vâ 512 byte/cung, do àố
ghi àûúåc 1474560 (tûác 1440KB) àún võ thưng tin.
Quấ trònh chín bõ àơa àïí cố khẫ nùng ghi àûúåc dûä liïåu àûúåc gổi lâ àõnh dẩng
mûác thêëp. Têët cẫ cấc ưí IDE, rêët phưí dng hiïån nay, àïìu àûúåc àõnh dẩng sùén tẩi
núi sẫn xët ra chng. Dng phêìn mïìm khưng thđch húåp àïí lâm àiïìu àố cố thïí
lâm cho àơa IDE hóåc EIDE (Enhanced IDE) khưng côn dng àûúåc nûäa.
Bûúác thûá hai phẫi lâm vúái mưåt àơa múái lâ dng trònh FDISK.EXE ca DOS àïí
chia nưåi dung ca nố thânh cấc vng lån l gổi lâ cấc phên hoẩch (partitions).
Fdisk xûã l dûä liïåu trong phêìn àơa gổi lâ bẫng phên hoẩch hóåc lâ master boot
record (MBR). Mưỵi vng DOS mâ bẩn tẩo trúã thânh ưí lån l riïng biïåt khi boot
mấy. Vđ d, àơa cung cố thïí chia thânh 3 ưí lån l lâ C, D vâ E. Nïëu bẩn tẩo
cấc phên hoẩch cho OS/2, Linux, Windows NT hóåc cấc hïå àiïìu hânh khấc (sûã
dng cấc phiïn bẫn thđch ûáng ca Fdisk), cấc vng "ngoẩi lai" thûúâng khưng nhòn
thêëy àûúåc khi bẩn boot vâo DOS hóåc Win95.
Thûåc hiïån lïånh FORMAT.COM trong mưỵi vng phên hoẩch lâ bûúác thûá 3 ca viïåc
chín bõ àơa cûáng. Format tẩo boot record mang thưng tin vïì cấc àùåc tđnh ca phên
hoẩch; 2 phiïn bẫn ca bẫng FAT (File Allocation Table), vng dng àïí theo dội cấc
phêìn àơa êën àõnh cho cấc têåp tin, thû mc gưëc mâ tûâ àố tẩo ra cấc thû mc con.
Dng lïånh Format IS sệ lâm cho àơa cố thïí boot àûúåc (àơa hïå thưëng).
Cấc sector àêìu tiïn trïn àơa dng cho mc àđch hïå thưëng. Cung àêìu tiïn lâ bẫng phên
hoẩch. Sau boot record lâ bẫng FAT. Cố 2 bẫng FAT lâ àïí khi cêìn thiïët cố àơa thay
thïë cho nhau. DOS khưng cố tiïån đch sao chếp bẫng FAT nây sang bẫng FAT kia, do
àố vúái phêìn lúán chng ta, bẫng thûá hai lâ dû thûâa. Sau bẫng FAT lâ thû mc
gưëc chûáa tûâng àêìu mc (entry) cho mưỵi têåp tin thåc thû mc gưëc vâ cho mưỵi thû
mc con mûác 1. Thû mc gưëc bõ hẩn chïë vïì dung lûúång, mâ dung lûúång nây ph
thåc vâo loẩi àơa c thïí. Àơa mïìm khưng cố bẫng phên hoẩch, phêìn côn lẩi cố
cêëu trc nhû ca àơa cûáng.
Thïë giúái ca cấc liïn cung
Phêìn dûä liïåu ca àơa lâ núi ngûúâi dng quan têm nhêët. Nố chia thânh cấc liïn cung
(cluster). Mưỵi liïn cung bao gưìm mưåt sưë lûúång xấc àõnh cấc cung liïn tiïëp. Sưë
cung/cluster ph thåc vâo dung lûúång àơa, bao giúâ cng lâ ly thûâa ca 2. Mưỵi
liïn cung trïn àơa mïìm thûúâng chó gưìm 1 sector, tûác 512 byte. ƯÍ àơa lúán cố thïí dng
liïn cung vúái 128 sector tûác 64 KB/cluster. Liïn cung nhỗ sệ tiïët kiïåm àûúåc nhiïìu bưå
nhúá hún vò liïn cung cëi cng ca têåp tin chó cố đt phêìn nhúá dng vư đch. Liïn
cung lúán hún sệ àẫm bẫo tưëc àưå truy xët cao hún.
Mưỵi àêìu mc trong bẫng FAT àẩi diïån cho 1 liïn cung ca vng dûä liïåu. FAT cố
thïí dng 12 hóåc 16 bit cho mưỵi àêìu mc. Mûúâi hai bit à àïí ghi sưë tûâ 0 àïën 4095,
côn 16 bit túái 65535. Phêìn lúán àơa mïìm dng cluster vúái 1 sector vâ bẫng FAT 12
bit. Mưåt sưë phiïn bẫn OEM múái nhêët ca Win95 cố thïí dng FAT 32 bit àïí cố
àûúåc cluster nhỗ trïn ưí àơa cûåc lúán.
Khi DOS cêëp phất bưå nhúá cho têåp tin, hïå ghi sưë hiïåu ca liïn cung àêìu tiïn vâo
àêìu mc ca têåp tin. Sau àố sûã dng FAT àïí theo dội cấc cluster bưí sung. Vđ d,
giẫ sûã têåp tin àûúåc cêëp phất liïn cung thûá 2, 4 vâ 5 trïn àơa. Àêìu mc cho biïët têåp
tin bùỉt àêìu tûâ liïn cung sưë 2. Dông thûá 2 ca bẫng FAT cho thêëy têåp tin tiïëp tc
úã liïn cung 4. Dông thûá 4 ca FAT chó ra rùçng têåp tin côn cố dûä liïåu trong liïn
cung 5. Dông thûá 5 ca FAT côn cố dêëu hiïåu cëi têåp tin (EOF) bấo rùçng khưng
cố liïn cung tiïëp theo nâo nûäa (ta giẫ thiïët rùçng têåp tin khấc sûã dng liïn cung 3).
Bẫng FAT côn àấnh dêëu liïn cung nâo "bõ hỗng", khưng côn tin cêåy àïí cêëp phất
nûäa.
Àïí xốa bỗ têåp tin, DOS thay k tûå àêìu tiïn trong tïn têåp tin bùçng k tûå àùåc biïåt,
tiïëp theo sûãa bẫng FAT àïí giẫi phống cấc liïn cung tûúng ûáng cho têåp tin khấc.
Phêìn côn lẩi ca àêìu mc khưng thay àưíi vâ tưìn tẩi trïn àơa cho àïën khi têåp tin
múái ghi àê lïn.
Hïå thưëng FAT khấ hiïåu quẫ vúái cấc àơa mïìm vâ àơa cûáng cúä 10-20 MB, ngây
nay khưng côn hûäu hiïåu cho àơa cûáng dung lûúång cao nûäa, do àố OS/2 vâ Windows
NT sûã dng hïå thưëng tưí chûác têåp tin thđch húåp hún.
Giẫi quët sûå cưë
Sûå cưë cố thïí xẫy ra do virus, do khưng àống têåp tin hóåc hïå thưëng bõ treo trûúác
khi DOS hoân têët cêåp nhêåt cấc thû mc vâ bẫng FAT.
Vêën àïì #1: Bẫng phên hoẩch bõ hỗng
Mấy ca bẩn khưng thïí boot àûúåc nûäa do bẫng phên hoẩch hóåc MBR bõ hỗng.
Cố thïí khi câi àơa múái hóåc phên hoẩch lẩi àơa cûáng bẩn qụn àấnh dêëu mưåt
vng phên hoẩch trïn ưí C lâ "active". Nïn xem trûúác trẩng thấi phên hoẩch bùçng
lïånh FDISK /STATUS. Trûúác àố phẫi boot bùçng àơa mïìm. Dng lïånh FDISK /MBR
àïí tẩo lẩi bẫng phên hoẩch.
Bẩn cố thïí àõnh dẩng lẩi ưí C àïí tẩo lẩi boot record hóåc thûåc hiïån lïånh SYS C:
tẩi dêëu nhùỉc A:\> ca DOS. Trònh SYS.COM ghi lẩi boot record vâ sao chếp mưåt
sưë têåp tin hïå thưëng tûâ àơa mïìm lïn ưí C.
Ch rùçng àïí tẩo àơa mïìm hïå thưëng (cố khẫ nùng boot àûúåc), cêìn lùỉp àơa múái
vâo ưí A vâ àõnh dẩng nố bùçng lïånh FORMAT A:/S. Tiïëp theo chếp FDISK.EXE,
SYS.COM vâ cấc tiïån đch khấc tûâ thû mc \DOS hóåc, nïëu bẩn lâm viïåc trong
Win95, tûâ \WINDOWS\COMMAND.
Vêën àïì #2: Mêët cấc àún võ cêëp phất
Àïí trấnh nhûäng rùỉc rưëi vúái cấc àêìu mc vâ bẫng FAT, nïn chẩy phêìn mïìm
quết àơa ca Microsoft lâ SCANDISK.EXE hóåc ngûúâi anh em c k hún lâ
CHKDSK.EXE. Nïn lâm cưng viïåc nhû vêåy mưỵi tìn mưåt lêìn, ngay sau khi àõnh dẩng
àơa hóåc nến àơa bùçng DBLSPACE.EXE, bùçng DRVSPACE.EXE hóåc trònh thûá ba
ca Stac Electronics. Trònh ScanDisk cố tûâ DOS 6.2x vâ trong Win95, hậy dng nố
thay cho Chkdsk. Phêìn lúán lưỵi mâ bẩn gùåp thûúâng lâ "lost allocations units" hóåc
"lost chains". Mêët mưåt sưë liïn cung cố thïí do tùỉt mấy giûäa chûâng, reboot lẩi mấy
khi mấy treo hóåc rt àơa mïìm khi DOS àang lâm viïåc vúái chđnh àơa nây.
Chkdsk khùỉc phc nhûäng lưỵi nhû vêåy bùçng cấch tẩo ra cấc têåp tin FILEnnnn.CHK
trong thû mc gưëc, chûáa cấc chỵi liïn cung bõ mêët ca têåp tin. ScanDisk cng lâm
nhû vêåy, nhûng côn cố thïm tđnh nùng "undo". Nïëu bẩn thûåc hiïån lïånh
SCANDISK /UNDO A: , thưng tin undo àûúåc ghi ra àơa mïìm sệ àûúåc sûã dng àïí khưi
phc lẩi trẩng thấi àơa nhû trûúác khi ScanDisk sûãa chûäa. Têët nhiïn, kïí tûâ lêìn quết
àơa gêìn nhêët bẩn khưng àûúåc xốa, tẩo múái, hay nến bêët k têåp tin nâo, vò nhû
vêåy bẩn àậ thay àưíi bẫng FAT, vâ thưng tin "undo" khưng côn giấ trõ nûäa.
Cố thïí dng mưåt trònh soẩn thẫo, lïånh Type, tiïån đch Debug àïí xem cấc têåp tin
*.CHK. Thån lúåi nhêët lâ nhûäng gò àậ mêët úã dûúái dẩng vùn bẫn, côn dẩng nhõ
phên thò chùèng gip đch gò nhiïìu.
Vêën àïì #3: Cấc têåp tin chêåp chếo nhau.
Hiïån tûúång chêåp chếo nhau (cross-linked files) nghơa lâ khi hai têåp tin, vò l do nâo
àố, cng chung chỵi liïn cung ưí cëi, vđ d têåp tin A dng cấc liïn cung 2, 3, 4, 5
vâ têåp tin B nùçm trïn 6, 7, 4 vâ 5. Cấc liïn cung 4, 5 cng chung cẫ hai têåp tin. Vúái
nhûäng trûúâng húåp nhû vêåy, tưët nhêët hậy khưi phc cẫ A lêỵn B tûâ cấc bẫn lûu.
Nïëu khưng àûúåc nhû vêåy, bùçng Chkdsk hậy theo cấc bûúác sau:
1. Khưi phc têët cẫ cấc àún võ cêëp phất bõ mêët, sau àố thoất khỗi Chkdsk.
2. Tẩo cấc bẫn sao ca A vâ B vúái cấc tïn múái khưng côn chêåp chếo nhau nûäa
nhûng chûáa nhûäng dûä liïåu giưëng nhau.
3. Xốa bỗ A vâ B àïí lâm sẩch bẫng FAT.
4. Dng ûáng dng tẩo ra cấc têåp tin kïí trïn àïí xem nưåi dung trong cấc bẫn sao ca
chng. Nhûäng gò khưng cêìn thiïët (thûâa), mẩnh dẩn loẩi bỗ.
5. Xem tûâng têåp tin FILEnnnn.CHK trong thû mc gưëc àïí tòm nhûäng gò bõ mêët ca
cấc têåp tin hỗng. Dng ûáng dng tûúng ûáng àïí cùỉt/dấn vúái mc àđch tu chónh
lẩi cấc bẫn sao ca A vâ B cho thđch húåp.
6. Àưíi tïn cấc bẫn sao ca A vâ B vïì cấc tïn ban àêìu. Loẩi bỗ cấc têåp tin *.CHK
khưng côn cêìn thiïët nûäa.
ScanDisk mẩnh hún vò thûåc hiïån cấc bûúác 2, 3 cho bẩn. Rộ râng lâ khưi phc cấc
têåp tin vùn bẫn thò dïỵ dâng hún so vúái têåp tin ẫnh, êm thanh hóåc cấc chûúng trònh.
Vêën àïì #4: Lưỵi cêëp phất
Nïëu chỵi FAT dâi hún hóåc ngùỉn hún chó àõnh trong àêìu thû mc ca têåp tin,
bẩn gùåp lưỵi "allocation error". Cẫ Chkdsk lêỵn ScanDisk àïìu thay àưíi kđch cúä têåp tin
cho thđch húåp. Nïëu chỵi FAT quấ dâi, têåp tin sệ chûáa dûä liïåu khưng cêìn thiïët,
côn trûúâng húåp quấ ngùỉn, phêìn cëi bõ gẩt mêët. Bẩn cố thïí tòm thêëy nhûäng gò
bõ mêët trong cấc liïn cung chûa cêëp phất cho têåp tin nâo cẫ.
Vêën àïì #5: Cấc àún võ cêëp phất bõ hỗng
Àố lâ lưỵi "Invalid allocation units", xẫy ra khi mưåt phêìn bẫng FAT chûáa sưë 0 (liïn
cung chûa cêëp phất), sưë 1 (liïn cung khưng tưìn tẩi) hóåc dêëu hiïåu liïn cung hỗng.
Hai tiïån đch trïn àïìu àấnh dêëu liïn cung cëi cng côn tưët chûáa dêëu hiïåu kïët thc
file.
Vêën àïì #6: Cung hïå thưëng hỗng
Cẫ Chkdsk vâ ScanDisk àïìu phất hiïån vêën àïì xẫy ra vúái vng hïå thưëng trïn àơa.
Chkdsk àún giẫn lâ àûa ra thưng bấo "Bad sector in FAT" hóåc "Probably non-DOS
disk". ScanDisk côn chó chđnh xấc lưỵi úã àêu. Cẫ hai trònh àïìu khưng chûâa vng hïå
thưëng. Bẩn cố thïí dng SYS.COM àïí ghi lẩi vng hïå thưëng hóåc àõnh dẩng lẩi
àơa (trûúác àố cêìn sao chếp dûä liïåu ra àơa mïìm).
Nhûäng cưng c cao cêëp
Chkdsk vâ ScanDisk rêët thđch húåp àïí tòm lẩi nhûäng liïn cung bõ mêët, trong àố
ScanDisk đt gêy sûå cưë hún do àûúåc thûã rêët k câng vâ cố khẫ nùng tẩo têåp tin
undo. Cố mưåt sưë tiïån đch côn tiïn tiïën hún nûäa. Trûúác hïët phẫi kïí àïën Norton
Utilities (79 USD). Vúái Disk Editor trong bưå phêìn mïìm nây, bẩn cố thïí xem vâ
chónh l tûâng sector mưåt theo nhiïìu cấch. Bẩn cố thïí tûå sûãa bẫng FAT àïí thđ
nghiïåm vâ thûã khẫ nùng ca cấc trònh khưi phc thûá ba.
Dng SpinRite (89 USD) ca Gibson Research Corp àïí quết àơa cng lâ mưåt
tûúãng hay.
Cëi cng, giẫi phấp tưët nhêët àïí àẫm bẫo an toân cho dûä liïåu ca bẩn lẩi
khưng úã cấc tiïån đch siïu viïåt mâ chó úã chïë àưå sao lûu thûúâng xun mưåt cấch
nghiïm chónh. Trong khi àưìng nghiïåp phẫi vùỉt ốc trûúác nhûäng thưng bấo àûa ra búãi
Chkdsk, ScanDisk hóåc cấc tiïån đch khấc, bẩn chó mêët vâi giêy àïí sao chếp lẩi
nhûäng gò bõ hỗng hay thêët lẩc.
Tư Tën
DosWorld 3/1997
Hònh 1: ScanDisk trïn Win 95 cho phếp chổn mûác àưå kiïím tra, úã chïë àưå chín hóåc
kiïím tra ln cẫ phêìn dûä liïåu vâ hïå thưëng cng nhû thao tấc ghi vâ sûãa nhûäng
sector hỗng trong cấc file êín vâ file hïå thưëng
Hònh 2: Chkdsk hiïín thõ nhûäng thưng tin hûäu đch nhûng khưng àêìy à vâ an toân nhû
ScanDisk, nïn chẩy trònh nây àêìu tiïn khưng cố thưng sưë /F àïí biïët nhûäng cưng viïåc
cêìn lâm
Hònh 3: Norton Disk Doctor sệ thûåc hiïån viïåc kiïím tra hoân toân àơa cûáng, tûâ bẫng
phên vng vâ boot record cng nhû bïì mùåt ca àơa
Trúã vïì àêìu trang