Artikkelin tunnus: 320081 - Näytä tuotteet, joita tämä artikkeli koskee.
Ilmoitus
Lisätietoja yleisistä Windows 2000:een liittyvistä ongelmista löydät seuraavalta sivulta.

Windows 2000:n tuen päättymisen ratkaisukeskus.
Laajenna kaikki | Kutista kaikki

Tällä sivulla

ESITTELY

Tässä artikkelissa kerrotaan, miksi NTFS-tiedostojärjestelmää käyttävän aseman tiedostoa tai kansiota ei välttämättä voi poistaa ja miten tämä ongelma ratkaistaan korjaamalla sen eri aiheuttajat.

Enemmän tietoa

Huomautus NTFS-tiedostojärjestelmä käsittelee sisäisesti kansioita erikoistiedostotyyppinä. Tämän vuoksi, kun tässä artikkelissa puhutaan "tiedostoista", tarkoitetaan joko tiedostoa tai kansiota.

Syy 1: Tiedosto käyttää käyttöoikeusluetteloa

Et välttämättä pysty poistamaan tiedostoa, jos se käyttää käyttöoikeusluetteloa (Access Control List). Voit ratkaista tämän ongelman muuttamalla tiedoston käyttöoikeuksia. Saatat joutua ottamaan tiedostot omistukseesi, jotta pystyt muuttamaan käyttöoikeuksia.

Järjestelmänvalvojat pystyvät ottamaan minkä tahansa tiedoston omistukseensa implisiittisesti, vaikka heille ei olisi myönnetty tiedoston oikeuksia eksplisiittisesti. Tiedoston omistajat pystyvät implisiittisesti muokkaamaan tiedoston käyttöoikeuksia, vaikka heille ei olisi myönnetty tiedoston oikeuksia eksplisiittisesti. Tämän vuoksi saatat joutua ottamaan tiedoston omistukseesi, antamaan itsellesi oikeudet poistaa tiedoston ja poistaa tiedoston sitten.

Et pysty käyttämään tiettyjä suojaustyökaluja käyttöoikeuksien näyttämiseen tai muokkaamiseen, koska tiedostolla ei ole säännönmukaista käyttöoikeusluetteloa

Voit kiertää tämän ongelman käyttämällä jotakin muuta työkalua (kuten Cacls.exe-ohjelman myöhempää koontikäännöstä).

Käyttöoikeusluettelon käyttöoikeusmerkinnöillä (Access Control Entry) on tietty ensisijainen jakso niiden tyypistä riippuen. Esimerkiksi käytön estävät käyttöoikeusmerkinnät ovat yleensä ennen käytön myöntäviä käyttöoikeusmerkintöjä. Mikään ei kuitenkaan estä ohjelmaa kirjoittamasta käyttöoikeusluetteloa, jonka käyttöoikeusmerkinnät ovat missä tahansa järjestyksessä. Joissakin aiemmissa Windowsin versioissa ilmeni ongelmia, kun Microsoft Windows yritti lukea näitä muita kuin säännönmukaisia käyttöoikeusluetteloita. Joskus näitä käyttöoikeusluetteloita ei voi muokata oikein Resurssienhallinnan graafisen suojauseditorin avulla. Tämä ongelma on korjattu Windowsin uudemmissa versioissa. Jos tämä ongelma ilmenee kohdallasi, käytä Cacls.exe-apuohjelman uusinta versiota. Vaikka et pystyisi tarkastelemaan tai muokkaamaan käyttöoikeusluetteloa sen sijainnissa, voit kirjoittaa uuden käyttöoikeusluettelon, joka antaa sinun käyttää tiedostoa.

Syy 2: Tiedosto on käytössä

Et välttämättä pysty poistamaan tiedostoa, jos se on käytössä. Voit ratkaista tämän ongelman selvittämällä prosessin, jolla avoin kahva on, ja sulkemalla sitten kyseisen prosessin.

Tiedoston avaamistavasta (se voi ehkä olla avattu yksinoikeudella jaetun käytön sijaan) riippuen et välttämättä pysty poistamaan käytössä olevaa tiedostoa. Voit selvittää tiedostojen avoimet kahvat omistavat prosessit useiden eri työkalujen avulla. Saat lisätietoja työkaluista, joiden avulla voidaan selvittää tiedostojen avoimia kahvoja omistavat prosessit, napsauttamalla seuraavia artikkelien numeroita, jolloin pääset lukemaan artikkelit Microsoft Knowledge Base -tietokannassa:
242131 Niiden prosessien luettelon tuominen näyttöön, joilla on tiedostoja avoinna (tämä artikkeli saattaa olla englanninkielinen)
172710 Windows NT 4.0 Resource Kitin OH-työkalun käyttäminen (tämä artikkeli saattaa olla englanninkielinen)
Tämä ongelman oireet saattavat vaihdella. Saatat pystyä poistamaan tiedoston Poista-komennon avulla, mutta tiedostoa ei todellisuudessa poisteta, ennen kuin prosessi, jolla tiedosto on avoinna, vapauttaa tiedoston. Lisäksi et välttämättä pysty käyttämään poistamista odottavan tiedoston Suojaus-valintaikkunaa. Voit ratkaista tämän ongelman selvittämällä prosessin, jolla avoin kahva on, ja sulkemalla sitten kyseisen prosessin.

Syy 3: Tiedostojärjestelmän vioittuminen estää tiedoston käyttämisen

Et välttämättä pysty poistamaan tiedostoa, jos tiedostojärjestelmä on vioittunut. Voit ratkaista tämän ongelman korjaamalla virheet suorittamalla Chkdsk-apuohjelman levyasemalle.

Levyn virheelliset sektorit, muu viallinen laitteisto tai ohjelmavirheet voivat vioittaa tiedostojärjestelmää ja saada aikaan tiedostojen ongelmatilan. Tavalliset toiminnot saattavat epäonnistua useilla tavoilla. Kun tiedostojärjestelmä havaitsee vioittumisen, se kirjaa tapahtumalokiin tapahtuman, ja näyttöön tulee yleensä sanoma, jossa kehotetaan suorittamaan Chkdsk-apuohjelma. Vioittumisen tyypistä riippuen Chkdsk saattaa pystyä palauttamiaan tiedoston tiedot, mutta Chkdsk palauttaa tiedostojärjestelmän sisäisesti yhtenäiseen tilaan. Saat lisätietoja Chkdsk-apuohjelman käyttämisestä napsauttamalla seuraavia artikkelien numeroita, jolloin pääset lukemaan artikkelit Microsoft Knowledge Base -tietokannassa:
176646 Virhesanoma: Tiedosto tai hakemisto on vioittunut... (tämä artikkeli saattaa olla englanninkielinen)
187941 Chkdsk-apuohjelman ja uusien valitsinten /C ja /I kuvaus (tämä artikkeli saattaa olla englanninkielinen)

Syy 4: Tiedostoja on poluissa, jotka ovat MAX_PATH-rajoituksen määrittämää merkkimäärää pidempiä

Et välttämättä pysty avaamaan, muokkaamaan tai poistamaan tiedostoa, jos tiedostopolussa on ongelmia.

Ratkaisu 1: Käytä tiedostoa automaattisesti luodun 8.3-nimen avulla

Voit ratkaista tämän ongelman käyttämällä tiedostoa automaattisesti luodun 8.3-nimen avulla. Tämä ratkaisu saattaa olla helpoin polun ollessa pitkä, koska kansionimet ovat liian pitkät. Jos myös 8.3-polku on liian pitkä tai aseman 8.3-nimet on poistettu käytöstä, siirry ratkaisuun 2. Saat lisätietoja 8.3-tiedostonimien poistamisesta käytöstä NTFS-asemissa napsauttamalla seuraavaa artikkelin numeroa, jolloin pääset lukemaan artikkelin Microsoft Knowledge Base -tietokannassa:
121007 Tietoja 8.3-nimenluonnin poistamisesta käytöstä NTFS-osiossa (tämä artikkeli saattaa olla englanninkielinen)

Ratkaisu 2: Nimeä syvällä polussa oleva kansio uudelleen tai siirrä se

Nimeä kansio uudelleen niin, että MAX_PATH-rajoituksen määrittämää merkkimäärää pidempiä kohdetiedostoja ei enää ole. Jos teet tämän, aloita pääkansiosta (tai jostain muusta helposta sijainnista) ja nimeä kansiot sitten uudelleen niin, että niillä on lyhyemmät nimet. Jos tämän toimen tekeminen ei ratkaise ongelmaa (jos tiedoston polku on esimerkiksi yli 128 kansiota syvä), siirry ratkaisuun 4.

Ratkaisu 3: Yhdistä asema polun rakenteessa olevaan kansioon

Yhdistä asema kohdetiedoston tai -kansion polun rakenteessa olevaan kansioon. Tämän tekeminen lyhentää näennäispolkua.

Oletetaan esimerkiksi, että käytössäsi on polku, jonka rakenne on seuraava:
\\PalvelimenNimi\AlikansionNimi1\AlikansionNimi2\AlikansionNimi3\AlikansionNimi4\...
Tässä polussa merkkien kokonaismäärä on yli 255 merkkiä. Voit lyhentää tämän polun pituutta 81 merkkiä yhdistämällä aseman AlikansionNimi4-kohteeseen.

Ratkaisu 4: Käytä jaettua verkkoresurssia, joka on yhtä syvä kuin kansio

Jos ratkaisut 1, 2 ja 3 eivät toimi tai ratkaise ongelmaa, luo jaettu verkkoresurssi, joka on niin syvä kansiopolussa kuin mahdollista, ja nimeä kansiot sitten uudelleen käyttämällä jaettua resurssia.

Ratkaisu 5: Käytä työkalua, joka pystyy kulkemaan syvien polkujen läpi

Monet Windows-ohjelmat odottavat polun enimmäispituuden olevan alle 255 merkkiä. Tämän vuoksi kyseiset ohjelmat varaavat sisäistä tallennustilaa vain sen verran, että näitä tavallisia polkuja voidaan käsitellä. NTFS-tiedostojärjestelmällä ei ole tätä rajoitusta, ja se pystyy sisältämään paljon tätä pidempiä polkuja.

Saatat kohdata tämän ongelman, jos luot jossain vaiheessa kansiorakenteesi jaetun resurssin, joka on jo melko syvä, ja luot sitten kyseisen pisteen alle syvän rakenteen käyttämällä tätä jaettua resurssia. Jotkin kansiopolussa paikallisesti toimivat työkalut eivät välttämättä pysty kulkemaan koko polkua läpi pääkansiosta alkaen. Saatat joutua käyttämään näitä työkaluja erityisellä tavalla, jotta ne pystyvät kulkemaan jaetun resurssin läpi. (CreateFile API -ohjeissa kuvataan tapa kulkea koko puun läpi tässä tilanteessa.)

Yleensä tiedostoja voidaan hallita ne luovan ohjelmiston avulla. Jos käytössäsi on ohjelma, joka pystyy luomaan MAX_PATH-rajoitusta syvempiä tiedostoja, voit yleensä poistaa tai hallita kyseisiä tiedostoja saman ohjelman avulla. Voit yleensä poistaa jaettuun resurssiin luotuja tiedostoja saman jaetun resurssin avulla.

Syy 5: Tiedostonimi sisältää Win32-nimitilassa rajoitetun nimen

Jos tiedostonimi sisältää Win32-nimitilassa varatun nimen (esimerkiksi lpt1), et välttämättä pysty poistamaan tiedostoa. Voit ratkaista tämän ongelman nimeämällä tiedoston uudelleen jollakin muulla kuin Win32-ohjelmalla. Voit käyttää POSIX-työkalua tai jotakin muuta työkalua, joka käyttää tiedostoa asianmukaisen sisäisen syntaksin avulla.

Lisäksi saatat pystyä käyttämään joitakin sisäisiä komentoja ohittamaan tavalliset Win32:n varattujen nimien tarkistukset, jos määrität tiedoston polun tietyn syntaksin avulla. Jos esimerkiksi käytät Del-komentoa Windows XP:ssä, voit poistaa tiedoston nimeltä lpt1, jos määrität tiedoston koko polun seuraavan erikoissyntaksin avulla:
del \\?\c:\tiedoston_polku\lpt1
Saat lisätietoja varattuja nimiä käyttävien tiedostojen poistamisesta Windows NT:ssä ja Windows 2000:ssa napsauttamalla seuraavaa artikkelin numeroa, jolloin pääset tarkastelemaan artikkelia Microsoft Knowledge Base -tietokannassa:
120716 Varattuja nimiä käyttävien tiedostojen poistaminen Windowsissa (tämä artikkeli saattaa olla englanninkielinen)
Saat lisätietoja varattuja nimiä käyttävien tiedostojen poistamisesta Windows XP:ssä napsauttamalla seuraavaa artikkelin numeroa, jolloin pääset tarkastelemaan artikkelia Microsoft Knowledge Base -tietokannassa:
315226 Varattuja nimiä käyttävien tiedostojen poistaminen Windows XP:ssä (tämä artikkeli saattaa olla englanninkielinen)
Jos avaat tiedoston kahvan käyttämällä tavallista Win32 CreateFile -mekanismia, tietyt tiedostonimet varataan vanhaa tyyliä oleville DOS-laitteille. Vanhempien versioiden kanssa yhteensopivuuden vuoksi näitä tiedostonimiä ei sallita, eikä niitä voi luoda tavallisten Win32-tiedostokutsujen avulla. Tämä ongelma ei kuitenkaan ole NTFS-tiedostojärjestelmän rajoitus.

Saatat pystyä tiedoston luomisen (tai poistamisen) yhteydessä tehtävät tavalliset nimitarkistukset jonkin Win32-ohjelman avulla käyttämällä samaa tekniikkaa, jota käytit MAX_PATH-rajoitusta syvempien kansioiden läpi kulkemiseen. Lisäksi nimentarkistusta ei tehdä joidenkin POSIX-työkalujen käytön yhteydessä.

Syy 6: Tiedostonimi sisältää Win32-nimitilassa virheellisen nimen

Et välttämättä pysty poistamaan tiedostoa, jos tiedostonimi sisältää virheellisen nimen (esimerkiksi tiedostonimen lopussa on välilyönti tai piste tai tiedostonimi koostuu vain välilyönnistä). Voit ratkaista tämän ongelman käyttämällä työkalua, joka poistaa tiedoston asianmukaisen sisäisen syntaksin avulla. Voit käsitellä näitä tiedostoja joidenkin työkalujen avulla käyttämällä syntaksia \\?\. Esimerkki:
del "\\?\c:\välilyönnin nimen lopussa sisältävän tiedoston polku.txt "
Tämän ongelman syy on samanlainen kuin syyssä 4. Jos kuitenkin käytät tavallista Win32-syntaksia, kun avaat välilyöntejä tai pisteitä nimen lopussa sisältävän tiedoston, nimen lopussa olevat välilyönnit tai pisteet poistetaan, ennen kuin tiedosto avataan. Tämän vuoksi, jos samassa kansiossa on kaksi tiedostoa, joiden nimet ovat "AFile.txt" ja "AFile.txt " (huomaa välilyönti tiedostonimen jälkeen), ja yrität avata jälkimmäisen tiedoston tavallisten Win32-kutsujen avulla, sen sijaan avataan ensimmäinen tiedosto. Vastaavasti, jos järjestelmässä on tiedosto, jonka nimi on " " (välilyönti), ja yrität avata sen tavallisten Win32-kutsujen avulla, sen sijaan avataan tiedoston pääkansio. Jos tässä tilanteessa yritetään muuttaa näiden tiedostojen suojausasetuksia, sitä ei joko voi tehdä tai muiden tiedostojen asetukset muutetaan odottamatta. Jos näin tapahtuu, saatat kuvitella sinulla olevan käyttöoikeudet tiedostoon, jolla on todellisuudessa rajoittava käyttöoikeusluettelo.

Syiden yhdistelmät

Joskus saattaa ilmetä näiden syiden yhdistelmiä, jotka saattavat tehdä tiedoston poistamisesta entistä monimutkaisempaa. Esimerkiksi jos kirjaudut tietokoneeseen järjestelmänvalvojana, saatat kohdata syyn 1 (tiedoston poistamisoikeuksia ei ole) ja syyn 5 (tiedostonimen lopussa on merkki, joka aiheuttaa tiedoston käytön ohjauksen eri tiedostoon tai tiedostoon, jota ei ole), etkä välttämättä pysty poistamaan tiedostoa. Jos yrität ratkaista syyn 1 ottamalla tiedoston omistukseesi ja lisäämällä käyttöoikeudet, et välttämättä silti pysty poistamaan tiedostoa, koska käyttöliittymän käyttöoikeusluetteloeditori ei pysty käyttämään oikeaa tiedostoa syyn 6 vuoksi.

Tässä tilanteessa voit käyttää Subinacl-apuohjelmaa ja /onlyfile-valitsinta (tämä apuohjelma sisältyy Resource Kitiin) ja muuttaa sellaisen tiedoston omistajuuden ja käyttöoikeuden, joka ei muutoin ole käytettävissä. Esimerkki:
subinacl /onlyfile "\\?\c:\ongelman_aiheuttavan_tiedoston_polku" /setowner=toimialue\järjestelmänvalvoja /grant=toimialue\järjestelmänvalvoja=F
Huomautus Tämä komento on yksittäinen komentorivi. Se on rivitetty, jotta se olisi helpompi lukea.

Tämä mallikomentorivi muokkaa välilyönnin lopussa sisältävää C:\ongelman_aiheuttavan_tiedoston_polku-tiedostoa niin, että toimailue\järjestelmänvalvoja-tili on tiedoston omistaja ja että tällä tilillä on tiedoston täydet oikeudet. Voit nyt poistaa tämän tiedoston käyttämällä Del-komentoa ja samaa \\?\-syntaksia.

Suositukset

Saat lisätietoja napsauttamalla seuraavaa artikkelin numeroa, jolloin pääset lukemaan artikkelin Microsoft Knowledge Base -tietokannassa:
319368 Käyttö estetty -virhesanoma tulee näyttöön poistettaessa yhdistetyn aseman kansioita (tämä artikkeli saattaa olla englanninkielinen)

Ominaisuudet

Artikkelin tunnus: 320081 - Viimeisin tarkistus: 7. kesäkuuta 2013 - Versio: 7.6
Artikkelin tiedot koskevat seuraavia tuotteita:
  • 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 (32-bit x86)
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • 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
Hakusanat: 
kbfilesystems kbinfo KB320081

Anna palautetta

 

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