Artikli ID: 320081 - Vaadake tooteid, millega see artikkel seostub.

Et saada ka edaspidi Windows XP turbevärskendusi, veenduge, et teil on Windows XP hoolduspakett SP3. Lisateabe saamiseks vaadake seda Microsofti veebilehte: Mõne Windowsi versiooni tugi hakkab lõppema

Laienda kõik | Ahenda kõik

Sellel veebilehel

SISSEJUHATUS

Selles artiklis kirjeldatakse, miks vahel ei saa NTFS-failisüsteemiga draivilt mõnda faili või kausta kustutada, ja pakutakse mitmesugustele põhjustele vastavaid lahendusi.

LISATEAVE

Märkus. NTFS-failisüsteemis käsitletakse kausta erilise failitüübina. Seega võib sõna "fail" tähistada selles artiklis nii faili kui ka kausta.

1. põhjus: fail kasutab pääsuloendit

Faili ei pruugi saada kustutada juhul, kui see fail on seotud pääsureguleerimisloendiga (ACL ? Access Control List). Selle probleemi lahendamiseks tuleb muuta failikasutusõigusi. Õiguste muutmiseks peate saama selliste failide omanikuks.

Administraatorid saavad enda omandusse võtta kõiki faile; seda ka juhul, kui neile pole mõne failiga seoses otseselt mingeid õigusi antud. Failiomanikud saavad failide kasutusõigusi muuta ka siis, kui neile pole konkreetsete failidega seoses mingeid õigusi antud. Seega tuleb teil esmalt saada vastava faili omanikuks, anda endale selle kustutamise õigus ja seejärel fail kustutada.

Õiguste muutmiseks ja kuvamiseks ei saa teatud turbetööriistu kasutada, kuna faili pääsureguleerimisloend pole kanooniline ACL

Selle probleemi lahendamiseks kasutage mõnda muud tööriista (nt tööriista Cacls.exe mõnda uuemat järku).

Pääsureguleerimisloendi juurdepääsukirjetel (ACE ? Access Control Entries) on teatud eelistatud järjestus, mis sõltub nende tüübist. Näiteks asuvad pääsuõigusi keelavad ACE-d juurdepääsu lubavatest ACE-dest eespool. Samas pole mõnel programmil keelatud kirjutada sellist pääsureguleerimisloendit, mille kirjed on suvalises järjestuses. Windowsi varasemates versioonides on ilmnenud tõrkeid siis, kui Microsoft Windows on proovinud selliseid mittekanoonilisi pääsureguleerimisloendeid lugeda. Mõnikord ei saa selliseid pääsureguleerimisloendeid Microsoft Windows Exploreri graafilise turberedaktori abil muuta. Windowsi uuemates versioonides on see probleem lahendatud. Selle probleemi ilmnemisel kasutage tööriista Cacls.exe uusimat versiooni. Ka juhul, kui te ei saa olemasolevat pääsureguleerimisloendit kuvada ega redigeerida, saate kirjutada uue pääsureguleerimisloendi, mille abil pääsete probleemsele failile juurde.

2. põhjus: fail on kasutusel

Faili ei saa kustutada võib-olla seetõttu, et see fail on parajasti kasutusel. Selle probleemi lahendamiseks leidke avatud failipidemega protsess ja sulgege see.

Sõltuvalt faili avamise viisist (nt on fail avatud eksklusiivselt, mitte ühiselt kasutatavana) võib kasutuseloleva faili kustutamine nurjuda. Avatud pidemetega protsesside määratlemiseks saate kasutada mitmeid tööriistu. Avatud failipidemetega protsesside leidmiseks kasutatavate tööriistade kohta lisateabe saamiseks klõpsake Microsofti teabebaasi (Knowledge Base) artiklite kuvamiseks järgmisi artiklinumbreid:
242131 Avatud failidega protsesside loendi kuvamine (selle artikli sisu võib olla ingliskeelne)
172710 Windows NT 4.0 ressursikomplekti tööriista OH kasutamine (selle artikli sisu võib olla ingliskeelne)
Selle probleemi korral ilmnevad tunnused võivad varieeruda. Võimalik, et saate faili kustutamiseks kasutada käsku Delete (Kustuta), kuid faili ei kustutata seni, kuni selle faili avanud protsess faili vabastab. Lisaks ei pruugi olla võimalik avada kustutamise ootel oleva faili dialoogiboksi Security (Turvalisus). Selle probleemi lahendamiseks leidke avatud failipidemega protsess ja siis sulgege see.

3. põhjus: kahjustatud failisüsteem takistab failile juurdepääsu

Kui failisüsteem on kahjustatud, võib faili kustutamine nurjuda. Selle probleemi lahendamiseks käivitage kettadraivi võimalike probleemi parandamiseks utiliit Chkdsk.

Ketta vigased sektorid, muu probleemne riistvara või tarkvara programmivead võivad failisüsteemi rikkuda ja failides probleeme tekitada. Tavalisemad toimingud võivad nurjuda mitmel põhjusel. Kui failisüsteem tuvastab rikutuse, kantakse see sündmus sündmustelogisse ja tavaliselt kuvatakse ka teade, milles soovitatakse käivitada utiliit Chkdsk. Sõltuvalt rikutuse olemusest võib juhtuda, et Chkdsk saab faili andmed taastada. Chkdsk taastab failisüsteemi stabiilsesse olekusse. Utiliidi Chkdsk kasutamise kohta lisateabe saamiseks klõpsake vastavate Microsofti teabebaasi (Knowledge Base) artiklite vaatamiseks järgmisi artiklinumbreid:
176646 Tõrketeade: fail või kaust on rikutud (selle artikli sisu võib olla ingliskeelne)
187941 Utiliidi CHKDSK ning uute võtmete /C ja /I ülevaade (selle artikli sisu võib olla ingliskeelne)

4. põhjus: Failid asuvad süsteemis liiga sügaval, mistõttu nende teed on lubatud märkide arvust (MAX_PATH) pikemad

Kui seoses faili teega ilmneb probleeme, võib faili avamine, redigeerimine või kustutamine nurjuda.

1. lahendus: kasutage failile juurdepääsemiseks automaatselt genereeritud 8.3-nime

Selle probleemi lahendamiseks ja failile juurdepääsemiseks saate kasutada automaatselt genereeritud 8.3-nime. Kui tee on sügav, kuna kaustade nimed on liiga pikad, on see probleemile kõige lihtsam lahendus. Kui ka 8.3-tee on liiga pikk või kui 8.3-nimed on sellel draivil keelatud, jätkake 2. lahendusega. Lisateabe saamiseks 8.3-failinimede keelamise kohta NTFS-draividel klõpsake Microsofti teabebaasi (Knowledge Base) artikli kuvamiseks järgmist artiklinumbrit:
121007 8.3-nimede loomise keelamine NTFS-partitsioonidel (selle artikli sisu võib olla ingliskeelne)

2. lahendus: nimetage sügav kaust ümber või muutke selle asukohta

Nimetage kaust ümber nii, et sihtfailid ei asuks sügavamal kui suurima lubatud tee pikkus (MAX_PATH). Seda tehes alustage juurkaustast (või mõnest muust sobivast kohast) ja pange kaustadele lühemad nimed. Kui sellest juhisest pole abi (nt kui faili sügavus on enam kui 128 kausta), jätkake 4. lahendusega.

3. lahendus: vastendage draiv mõne teestruktuuri kaustaga

Vastendage draiv mõne kaustaga, mis asub sihtfaili või -kausta teestruktuuris. Nii saate lühendada virtuaalset teed.

Oletame näiteks, et teil on järgmise struktuuriga tee:
\\Serverinimi\Alamkaustanimi1\Alamkaustanimi2\Alamkaustanimi3\Alamkaustanimi4\...
Selles tees on kokku üle 255 märgi. Selle tee lühendamiseks saaksite draivi vastendada kaustaga Alamkaustanimi4.

4. lahendus: kasutage võrgukohta, mis on sama sügav kui kaust

Kui lahendused 1, 2 ja 3 ei sobi või probleem ei lahene, looge võrgukoht, mis oleks kaustapuus võimalikult sügaval, ja nimetage siis kaustad võrgukoha kaudu ümber.

5. lahendus: kasutage tööriista, mis suudab läbida sügavaid teid

Paljud Windowsi programmid eeldavad, et pikim tee on lühem kui 255 märki. Seega eraldavad need programmid vaid nii palju sisemist mälumahtu, kui selliste tüüpiliste teede töötlemiseks vaja läheb. NTFS-il sellist piirangut pole ja seal võib olla palju sügavamaid teid.

See probleem võib ilmneda siis, kui loote võrgukoha mõnes kaustastruktuuri punktis, mis on juba küllaltki sügaval, ja loote siis võrgukoha kaudu sellest punktist edasi ulatuva sügava struktuuri. Mõne kaustapuus toimiva tööriistaga ei pruugi olla võimalik kogu puud juurest alates läbida. Võimalik, et võrgukoha läbimiseks tuleb neid tööriistu kasutada teatud viisil. (CreateFile API dokumentatsioonis kirjeldatakse meetodit, kuidas sellises olukorras saab siiski kogu puu läbida.)

Üldiselt saab faile hallata sama tarkvaraga, millega need on loodud. Kui teil on selline programm, millega saab luua faile, mis asuvad sügavamal kui MAX_PATH, peaks sama programmi abil olema võimalik neid faile kustutada ja hallata. Tavaliselt saab mõnes võrgukohas loodud faile sama võrgukoha kaudu ka kustutada.

5. põhjus: faili nimi sisaldab Win32-nimeruumis reserveeritud nime

Kui faili nimi sisaldab Win32-nimeruumis reserveeritud nime (nt "lpt1"), võib faili kustutamine nurjuda. Probleemi lahendamiseks saate faili ümbernimetamiseks kasutada mõnda mitte-Win32 programmi. Saate kasutada POSIX-tööriista või mõnda muud tööriista, mille sisemine süntaks sobib selle faili kasutamiseks.

Samuti saate tavaliste Win32 reserveeritud nimede kontrolli vältimiseks kasutada mõnda sisekäsku, kasutades faili tee määratlemiseks kindlat süntaksit. Näiteks kui kasutate Windows XP-s käsku Del, saate faili nimega "lpt1" kustutada siis, kui määratlete faili täieliku tee järgmise süntaksi abil:
del \\?\c:\faili_tee\lpt1
Opsüsteemides Windows NT ja Windows 2000 reserveeritud nimedega failide kustutamise kohta lisateabe saamiseks klõpsake selle artikli Microsofti teabebaasis (Knowledge Base) vaatamiseks järgmist artiklinumbrit:
120716 Reserveeritud nimedega failide kustutamine Windowsis (selle artikli sisu võib olla ingliskeelne)
Opsüsteemis Windows XP reserveeritud nimedega failide kustutamise kohta lisateabe saamiseks klõpsake selle artikli Microsofti teabebaasis (Knowledge Base) vaatamiseks järgmist artiklinumbrit:
315226 Reserveeritud nimedega failide kustutamine opsüsteemis Windows XP (selle artikli sisu võib olla ingliskeelne)
kui kasutate faili pideme avamiseks tüüpilist Win32 CreateFile-meetodit, on teatud failinimed reserveeritud vanematele DOS-i seadmetele. Tagasiühilduvuse tagamiseks pole nende failinimede kasutamine lubatud ning neid ei saa tüüpiliste Win32 failikutsete abil luua. Seda probleemi aga NTFS-süsteemis ei esine.

Võimalik, et saate mõne Win32 programmi abil faili loomisel (või kustutamisel) sooritatavaid tavaliste nimede kontrolle vältida sama meetodi abil, mida saab kasutada nende kaustadeni jõudmiseks, mis asuvad sügavamal, kui suurim lubatud tee pikkus (MAX_PATH). Samuti ei soorita neid kontrolli mõned POSIX-tööriistad.

6. põhjus: faili nimi sisaldab Win32-nimeruumis sobimatut nime

Faili kustutamine võib nurjuda siis, kui faili nimi sisaldab sobimatut nime (nt kui faili nime lõpus on tühik või punkt või kui faili nimi sisaldab ainult tühikut). Kasutage selle probleemi lahendamiseks mõnda tööriista, mis kasutab selle faili kustutamiseks sobivat süntaksit. Mõne tööriista puhul saate nende failidega töötamiseks kasutada süntaksit "\\?\". Näide:
del "\\?\c:\selle faili tee, mille lõpus on tühik.txt "
Selle probleemi põhjus sarnaneb 4. põhjusega. Kui kasutate tühiku või punktiga lõppeva nimega faili avamiseks tüüpilist Win32 süntaksit, eemaldatakse nime lõpus olevad tühikud või punktid enne faili avamist. Seega, kui teil on samas kaustas failid nimega "AFile.txt" ja "AFile.txt " (teise faili nime lõpus on tühik) ning proovite tavalise Win32 kutse abil avada teist faili, avatakse hoopis esimene fail. Kui proovite tavalise Win32 kutse abil avada faili nimega " " (tühik), avatakse selle asemel selle faili emakaust. Kui proovite sellises olukorras muuta nende failide turbesätteid, siis see kas nurjub või muudetakse mõne muu faili sätteid. Sel juhul võib teile tunduda, et teil on mõne sellise faili kasutusõigus, millel on tegelikult piirav pääsuloend.

Põhjuste kombinatsioonid

Mõnikord võivad need põhjused ilmneda koos ning see teeb faili kustutamise veelgi keerulisemaks. Näiteks kui logite arvutisse sisse administraatorina, võivad koos ilmneda 1. põhjus (teil pole selle faili kustutusõigust) ja 6. põhjus (faili nime lõpus on tühik, mis suunab faili juurdepääsu mõnele muule või olematule failile) ning faili kustutamine võib nurjuda. Kui omastate 1. põhjuse lahendamiseks faili ja lisate sellele õigusi, võib faili kustutamine endiselt nurjuda, kuna kasutajaliidese pääsuloendiredaktor ei pääse 6. põhjuse tõttu õigele failile juurde.

Sel juhul saab kasutada utiliiti Subinacl koos võtmega /onlyfile (see utiliit on olemas ressursikomplektis) ning muuta sellise faili kuuluvust ja õigusi, millele muidu juurde ei pääse. Näide:
subinacl /onlyfile "\\?\c:\probleemse faili tee" /setowner=domeen\administraator /grant=domeen\administraator=F
Märkus. See käsk koosneb ühest käsureast ning on loetavuse hõlbustamiseks mähitud.

Näites olev käsurida muudab tühikuga lõppevat faili C:\probleemse faili tee nii, et selle omanik on nüüd konto domeen\administraator ning sellel kontol on failile kõik õigused. Nüüd saab selle faili kustutamiseks kasutada käsku Del süntaksis "\\?\".

VIITED

Lisateabe saamiseks klõpsake Microsofti teabebaasi (Knowledge Base) artikli kuvamiseks järgmist artiklinumbrit:
319368 Ühendatud draivil asuvate kaustade kustutamisel kuvatakse tõrketeade "Access Denied" (Juurdepääs on keelatud) (selle artikli sisu võib olla ingliskeelne)

Atribuudid

Artikli ID: 320081 - Viimati läbi vaadatud: 24. september 2010 - Redaktsioon: 7.4
KEHTIB JÄRGMISE LÕIGU KOHTA:
  • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
  • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows Server 2003 Standard Edition
  • Microsoft Windows Server 2003 Datacenter Edition
  • Microsoft Windows Server 2003 Enterprise Edition
  • Microsoft Windows Server 2003 Web Edition
  • Microsoft Windows Small Business Server 2003 Premium Edition
  • Microsoft Windows Small Business Server 2003 Standard Edition
  • Microsoft Windows XP Professional
  • Microsoft Windows XP Home Edition
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows Advanced Server, Limited Edition
  • Microsoft Windows Datacenter Server Limited Edition
Märksõnad: 
kbfilesystems kbinfo KB320081

Andke tagasisidet

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com