> Kasowanie nieusuwalnych plików i folderów, "Plik w użyciu", "Brak dostępu" 
 
SZYBKIE LINKI:




Kasowanie plików "w użyciu"
Wyeliminowanie procesu wiążącego plik lub folder
Kasowanie - przeniesienie - zmiana nazwy w trakcie bootowania
XP - Kasowanie plików medialnych AVI, MPG, WMV, PSD
Nieprawidłowa nazwa pliku lub folderu
Ścieżka dostępu do pliku lub folderu jest za długa lub zbyt głęboka
System plików jest uszkodzony
XP - Brak praw do pliku lub folderu
XP - Skomplikowany przypadek czyli połączenie przyczyn

Darmowe programy:

----- DirectoryFixer (do usuwania folderów / plików z wadliwymi nazwami)
----- Unlocker (do usuwania folderów / plików w użyciu)







.
user posted image Kasowanie plików "w użyciu"


QUOTE
Na początek rzeczy podstawowe czyli:

1. Zamknij wszystkie aplikacje lub aplikacje związane z tym konkretnym typem plików. Jeśli masz jakiś p2p upewnij się że te pliki nie figurują w twoich shares i że nikt ich od ciebie nie ściąga! Jeśli masz otwartego playera, w którym te pliki były odtwarzane to zamknij go!

2. Zrestartuj komputer

3. Po restarcie ewentualnie uruchom program związany z danym typem plików i otwórz w nim inny plik z tej serii. To może pomóc zwolnić poprzedni plik.

4. Spróbuj zmienić jego nazwę poprzez podświetlenie go i naciśnięcie klawisza F2 (nie z prawokliku).

5. Spróbuj przenieść plik do innej lokalizacji np. innego folderu i skasować poprzedni folder lub przenieść go bezpośrednio do katalogu głównego na C: i skasować z Exploratora Windows.

6. Jeśli nie możesz skasować problematycznego pliku to spróbuj skasować folder w którym się on znajduje. Jeśli ten plik i jego folder są w obrębie jeszcze jednego folderu to spróbuj od razu kasować ten najwyższy folder. Oczywiście pamiętaj o przeniesieniu jakiś ważnych danych z tych folderów do innego miejsca na dysku byś się przypadkiem nie urządził.

Jak te akcje nie odniosą żadnego skutku i plik/folder jest nadal zablokowany patrz niżej.



QUOTE
Mały trik: Otwórz Notatnik. Z menu wybierz Save as (Zapisz jako) i dostań się do katalogu gdzie jest ten trefny plik. Zasejwuj tam pusty plik notatnika o dokładnie takiej samej nazwie jak niekasowalny plik. A potem prosta kasacja.




_
user posted image Wyeliminowanie procesu wiążącego plik lub folder


Rozpoznanie procesu wiążącego:

A więc wyczajamy, który program/proces/dll wiąże pliki ze sobą. Posłużą temu darmowe progsiki:

Unlocker

Process Explorer

WhoLockMe Explorer Extension v1.04 beta (Windows NT/2000/XP nie działa dla win 9x/Me!!!!!)

user posted image

user posted image

Oh.exe (Open Handlers) z Windows Server 2003 Resource Kit Tools (Windows XP/2003)

Pozwala na wyłowienie procesu blokującego dany plik. Pokaz na przykładzie pliku skrzynki odbiorczej INBOX.DBX:

Start >>> Uruchom >>> cmd >>> oh inbox.dbx >C:\Output.txt

Po zakończeniu działania narzędzia linii komend podglądasz wyniki zapisane w pliku C:\Output.txt. Jak widać blokerem jest proces msimn.exe czyli .... Outlook Express:

QUOTE
//
// TIME: 2004-05-07 19:27
// MACHINE: SUPERCOMPUTER
// BUILD: 2600
// OH version: built by: dnsrv_dev(v-smgum)
//
//
000003F4 msimn.exe File 025c \Documents and Settings\Ramesh\Local Settings\Application Data\Identities\{C19958F2-22F3-4C6A-9AE0-12049CE0706F}\Microsoft\Outlook Express\Inbox.dbx

000003F4 msimn.exe Mutant 0260 \BaseNamedObjects\d:_documents and settings_ramesh_local settings_application data_identities_{c19958f2-22f3-4c6a-9ae0-12049ce0706f}_microsoft_outlook express_inbox.dbx_directdbmutex

000003F4 msimn.exe Section 0264 \BaseNamedObjects\d:_documents and settings_ramesh_local settings_application data_identities_{c19958f2-22f3-4c6a-9ae0-12049ce0706f}_microsoft_outlook express_inbox.dbx_directdbshare

000003F4 msimn.exe Section 0268 \BaseNamedObjects\d:_documents and settings_ramesh_local settings_application data_identities_{c19958f2-22f3-4c6a-9ae0-12049ce0706f}_microsoft_outlook express_inbox.dbx_directdbfilemap




Próba ograniczenia ilości procesów:


KASOWANIE W TRYBIE AWARYJNYM: wszystkie Windows

QUOTE
Szcegółowy opis startu do trybu awaryjnego jest TUTAJ.




KASOWANIE SPOD DOSu: wszystkie Windows o ile są na partycji FAT

QUOTE
W celu ominięcia problemu związania plików procesami Windowsa należy dostać się do czystego DOSu. Potrzebujesz bootdiska 98. Możesz go ściągnąć STĄD (Boot Essentials). Wykorzystujesz tam sławną komendę DEL...............DOS nie widzi jednak partycji NTFS i to nie jest w tym przypadku ta metoda.



KASOWANIE Z POZIOMU Recovery Console: Windows 2000/XP/2003

QUOTE
OPis startu do i użytkowania Konsoli jest TU. Będąc w Konsoli wprowadź komendy z gatunku typowo DOSowych (po każdej ENTER):

del lub delete"ścieżka dostępu do pliku" [komenda delete nie ma supportu dla znaku *]

rd lub rmdir "ścieżka dostępu do folderu"


UWAGA: Domyślnie konsola pozwala tylko na dostęp do folderu C:\WINDOWS. Jeśli chcesz skasować jakiś plik np. z C:\Program Files lub z innej partycji musisz usunąć ograniczenia konsoli. Jak obejść te ograniczenia jest opisane w linku o Konsoli.

user posted image Kasowanie - przeniesienie - zmiana nazwy w trakcie bootowania


Konfiguracja PendingFileRenameOperations:

Zmiany nazwy oraz podmiany czy przeniesienia pliku/folderu podczas bootowania możesz dokonać za pomocą ustawienia tzw. PendingFileRenameOperations. Dane te edytujemy w:

Windows NT/2000/XP: rejestr

QUOTE
Start >>> Run (Uruchom) >>> regedit i w kluczu

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager

Utwórz wartość PendingFileRenameOperations typu REG_MULTI_SZ. Ustaw tam parę według schematu:

\??\źródłowa ścieżka dostępu do pliku

!\??\docelowa ścieżka dostępu do pliku


Pierwsza linia pary rozpoczynająca się od znaku \??\ oznacza bieżącą ścieżkę dostępu pliku/folderu i jego obecną nazwę.
Druga linia pary rozpoczynająca się od znaku !\??\ oznacza nową ścieżkę dostępu i nazwę dla pliku/folderu:

Np. poniższa para przenosi plik test.dll z folderu TEMP do folderu system32 podmieniając istniejący plik docelowy:

\??\C:\TEMP\test.dll
!\??\C:\WINDOWS\system32\test.dll

Możesz stworzyć tyle par ile zechcesz. Wpisanie samych ścieżek dostępu do folderu spowoduje zmianę nazwy folderu. Operacja przeniesienia i zmiany nazwy dokona się przy następnym resecie kompa a wpisy w rejestrze zostaną usunięte.



Windows9x/Me: %WINDIR%\WININIT.INI

QUOTE
Sprawdź czy plik WININIT.INI jest obecny w katalogu Windowsa.
Jeśli WININIT.INI istnieje otwórz go w notatniku i w sekcji [rename] dodaj nowe wejścia. Jeśli taki plik nie istnieje to utwórz go w notatniku z sekcją [rename]

W sekcji [rename] dodaj nowe wejścia według modelu
DocelowaNazwaPliku=ŹródłowaNazwaPliku
Obie nazwy muszą być nazwami skróconymi. By skasować plik użyj NUL jako wartość dla DocelowaNazwaPliku.

System wyegzekwuje WININIT.INI w czasie bootowania. Po ukończeniu tej operacji system go automatycznie przemianuje na WININIT.BAK.




Można też posłużyć się programami, które wykonają te akcje automatycznie. Spójrzcie na darmową kolekcję programów.


.
XP - Kasowanie plików medialnych AVI, MPG, WMV, PSD........(Error Access Denied)

Po pierwsze sprawdź czy te pliki nie figurują w twoich "shares" p2p i czy aby ktoś ci ich przypadkiem nie ściąga lub czy nie masz otwartego playera w którym są na liście. Po drugie problemem może być generowanie przez Windowsa podglądu pliku. Zaczekaj aż skończy. Po trzecie wszystko co powiedziane wcześniej ma zastosowanie i w tym przypadku. Niemniej są jeszcze pewne szczegółowe akcje, które mogą usunąć ten problem tymczasowo lub na stałe:


Operacje z linii komend

1) Zamknij wszystkie progsiki. Potem otwórz Command Prompt:

Start >>> Run (Uruchom) >>> cmd

I poprzez komendę CD przenieś się do ścieżki dostępu gdzie są zlokalizowane te trefne pliki. Czasem już na tym etapie będziesz w stanie usunąć niechciane pliki i foldery za pomocą wykorzystania komend DEL (pliki) lub RMDIR (foldery) np.

RMDIR nazwafolderu /s

Jeśli nazwa folderu zawiera nietypowe/dziwne znaki użyj komendy DIR /X by podejrzeć skróconą nazwę 8+3 (np. PROGRA~1 jako odpowiednik Program Files) i wykorzystaj ją przy kasowaniu z linii komend.

2) Jeśli powyższe akcje okażą się niewystarczające przeładuj explorera. Wywołaj Task Managera "świętą trójcą" Alt-Ctrl-Del. W zakładce Procesy wyszukaj i zabij explorer.exe. Zostaniesz bez pulpitu i paska zadań tylko z 2 oknami Task Managera i Command Prompt. W linii komend wpisz DEL nazwa.avi a najlepiej *.avi jeśli wszystkie pliki w tym folderku akurat są na kasację. Pliki powinny się skasować bez problemu! Potem po operacji kasacja w Task Managerze z menu File wybierasz New i wpisujesz explorer.exe.........Pulpit i pasek zadań wróci.


Problem z Avi

Windows XP ma bug Eksploratora dotyczący plików avi:
1) wiązanie plików "tajemniczym procesem" i jako efekt brak możliwości skasowania z komunikatem m.in: "being used by another person or program."
2) zużycie procesora 100% w momencie próby operacji na avi
3) ostre spowolnienie Windowsa w chwili dostępu do folderu z dużą ilością plików avi a w efekcie nawet zamrożenie kompa

Powodem jest tzw. AVI Properties Handler, które "skanuje" plik avi w celu ustalenia różnych jego właściwości. Skutkiem ubocznym, zwłaszcza na uszkodzonych avi jest totalna blokada. Można bardzo łatwo to skorygować za pomocą edycji rejestru:

QUOTE
Start >>> Run (Uruchom) >>> regedit

HKEY_CLASSES_ROOT\CLSID\{87D62D94-71B3-4b9a-9489-5FE6850DC73E}

I zmień nazwę klucza {87D62D94-71B3-4b9a-9489-5FE6850DC73E} np. poprzez wstawienie znaku minusa przed nazwą frontową: -{87D62D94-71B3-4b9a-9489-5FE6850DC73E} lub go całkowicie skasuj. Pozbycie się tego klucza podspeeduje Windowsa!

Plik, który to zrobi za ciebie: avifix.reg.



EDIT: Jeśli ktoś woli wersję graficzną fixa a nie plik rejestru to mam 3 propozycje do wyboru:

Windows XP AVI Fix



SupprAvi.exe



XPAviFix



Również następujący klucz może powodować problem i trzeba go skasować:

HKEY_CURRENT_USER\Software\Microsoft\MediaPlayer\Player\RecentFileList

Zrestartuj kompa by edycje rejestru odniosły zamierzony skutek.

Tunneling

Jedną z cech designu windowsa XP jest tzw. tunneling. Polega to na tym, że każdy podglądany plik zostaje zamrożony na pewien okres czasu. Domyślnie jest to 15 sekund. Będąc w takim stadium nie może zostać skasowany lub przemianowany. Niemniej tunneling może zostać zedytowane albo poprzez wyłączenie go albo poprzez ustawienie czasu "zamrożenia" a nawet poprzez wskazanie ile plików może być "zamrożonych. Dokonujemy tego w rejestrze (na własną odpowiedzialność!!):


Start >>> Run (Uruchom) >>> regedit

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem

Zmodyfikuj istniejącą lub utwórz nową wartość DWORD o nazwie:

MaximumTunnelEntryAgeInSeconds - ustawi czas "mrożenia" np. możesz zmienić domyślne 15 sekund na coś innego

MaximumTunnelEntries - włącza/wyłącza tunneling. Wyłączenie odbywa się poprzez przypisanie liczby zero.

QUOTE
[HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/FileSystem]
"NtfsDisable8dot3NameCreation"=dword:00000001
"NtfsDisableLastAccessUpdate"=dword:00000001
"Win31FileSystem"=dword:00000000
"Win95TruncatedExtensions"=dword:00000001
"MaximumTunnelEntryAgeInSeconds"=dword:00000002
"MaximumTunnelEntries"=dword:00000002


UWAGA: To dotknie wszystkie podglądane pliki nie tylko avi! Mogą być też skutki uboczne!





.
post 8/02/2004, 6:24
Post #7
user posted image Nieprawidłowa nazwa pliku lub folderu


PLIK LUB FOLDER ZAWIERA W SOBIE ZNAK ASCII

Problemem na Windowsach ale tylko na partycji FAT jest skuteczne zablokowanie plików i folderów poprzez wprowadzenie w ich nazwach nielegalnego znaku np. user posted image poprzez ASCII Codes. Takie foldery/pliki są zupełnie niedostępne - próba operacji na nich daje komunikat w stylu "jest niedostępny, określona ścieżka jest nieprawidłowa" a ich rozmiar jest wyświetlany fałszywie jako zerobajtowy.

Jak to możliwe? Takie niakceptowalne znaki możesz wprowadzić ty sam bawiąc się narzędziami typu charmap.exe! Czasem się zdarza że jakaś zewnętrzna aplikacja utworzy folder z nielegalnym znakiem i jest problem bo tego nie da rady usunąć.
Normalną drogą np. znaku "?" nie da się wprowadzić bo Winda zabroni takiej akcji. Natomiast ASCII Codes to oszustwo bo to są cyfry, które wyglądają jak pytajnik i dlatego możesz je tam wprowadzić. Winda w tym momencie widzi ją jako cyfry i jest spoko - akceptuje. Natomiast po wprowadzeniu nazwy Windows widzi ją już jako pytajnik i zabrania dostępu do folderu bo nazwa mu nie pasuje. Rozwiązania są 2:

Zmiana nazwy i/lub kasacja spod DOS:

QUOTE
Po znaku zachęty DOS C:\> wpisujesz którąś z poniższych komend:

REN - zmienia nazwę

REN "ścieżka dostępu\StaraNazwa" "ścieżka dostępu\NowaNazwa"

DELTREE - usuwa cały folder wraz z jego zawartością hurtem. Nie pomyl się!

DELTREE /Y "ścieżka dostępu"

Syntax /Y powoduje ominięcie pojawiania się komunikatów pytających o potwierdzenie akcji.

Wprowadzając nazwę obecną musisz też wprowadzić ją za pomocą ASCII Codes bo DOS może ci też zabronić dostępu do tego folderu. W szukaniu numeru dla znaku pomoże ci tablica ASCII Codes TU. Wpisz numer w DOS trzymając wciśnięty lewy Alt i posługując się numpadem (klawiaturą numeryczną po prawej stronie). Klawisz numlock też musisz mieć włączony.



Użycie scandiska

QUOTE
Jeśli zawiedzie próba z DOS pewną opcją jest uruchomienie ScanDiska. Niemniej w jego opcjach należy odznaczyć opcję Automatycznie naprawiaj błędy, bo nic nie zostanie naprawione. Podczas skanowania, gdy ScanDisk dojdzie do miejsca na dysku z tym plikiem/folderem wykryje błąd i zapyta co zrobić. Trzeba wtedy koniecznie wybrać Usuń uszkodzony folder/plik a nie Usuń błąd.



Cała ta walka jest opisana TU

ŚCIEŻKA DOSTĘPU LUB PLIK ZAWIERA ZAREZERWOWANĄ NAZWĘ Win 2000/XP

W związku z faktem, że aplikacje kontrolują zasady tworzenia nazw plików zdarza się czasami że są tworzone nazwy nielegalne lub zarezerwowane do innych celów np. aux, con, lpt1, i prn przypisane urządzeniom. Takich plików/folderów nie jesteśmy w stanie skasować bo są "zastrzeżone". Pozbywamy się ich z linii komend:

Start >>> Run (Uruchom) >>> cmd

FAT:

QUOTE
Na partycji tego typu możliwe jest skasowanie wprost z linii komend MS-DOS przy wykorzystaniu tradycyjnych komend z * np:

DEL PR?.* lub DEL LPT?.*



NTFS:

QUOTE
Powyższe komendy nie działają na partycjach NTFS. W takim przypadku obejściem problemu jest dodanie specjalnego syntaxu \\?\ umożliwiającego ominięcie sprawdzania nazw zastrzeżonych:

dla pliku:

DEL "\\?\ścieżka dostępu do pliku"

dla folderu:

RD "\\?\ścieżka dostępu do folderu"




NAZWA PLIKU ZAWIERA NIETYPOWE SPACJE LUB KROPKI

Problemem mogą być pliki, które mają w nazwie dziwaczną kombinację spacji lub kropek np:
- spacja lub kropka są umieszczone po rozszerzeniu: "nazwa.avi " lub "nazwa.avi."
- nazwa składa się wyłącznie ze spacji: " "
- nazwa ma mnóstwo kropek: "nazwa.nazwa.nazwa.nazwa.avi"

Przyczyna jest taka że przy próbie otwarcia takiego pliku nazwa jest automatycznie konwertowana na bazie usunięcia znaków końcowych. Załóżmy, że mamy folder, w którym są zlokalizowane 2 pliki o nieomal identycznych nazwach (różnicą jest jedynie owa spacja na końcu): "nazwa.avi" i "nazwa.avi "
Próba otwarcia drugiego pliku spowoduje otwarcie pierwszego. Z kolei próba otwarcia pliku o nazwie " " spowoduje otwarcie folderu, w którym się on znajduje.

By się pozbyć takich lewych plików stosujemy ten sam trik co powyżej czyli:

DEL "\\?\ścieżka dostępu\nazwa pliku.rozszerzenie "


_
user posted image Ścieżka dostępu do pliku lub folderu jest za długa lub zbyt głęboka


Często tajemnica niemożności skasowania pliku/folderu kryje się w długości ścieżki dostępu. System plików na dysku twardym określa maksymalną liczbę dopuszczalnych znaków w ścieżce dostępu na podstawie parametru MAX_PATH. Pliki/foldery docelowe istniejące głębiej niż wynika to z wartości parametru MAX_PATH mogą stać się kompletnie niedostępnymi.
Zarówno FAT jak i NTFS są zwykle limitowane do 256 znaków w ścieżce dostępu (litera dysku + foldery + nazwa pliku). Na systemie NTFS (NT/2000/XP/2003) ścieżka dostępu teoretycznie może zawierać 32000 znaków ale domyślny sposób w jaki Windows dostaje się do plików narzuca tylko 256 znaków. Można oczywiście wymusić sposób zarządzania.............ANSI >>> Unicode.

Objawem zbyt długiej lub zbyt głębokiej ścieżki dostępu może być:

Komunikat wg wariacji:

Cannot delete folder - path too Deep Can't access this folder.
Path is too long

Can't Access This Folder. Path Is Too Long

Brak komunikatu ale martwica pliku/folderu:

Nie możemy go skopiować, przenieść ani skasować. Nie pojawia się żaden komunikat tylko po prostu ten element kompletnie nie reaguje. Nie posiada żadnych właściwości. Jest to bardzo niebezpieczne bo postaje ukryta strefa, która służyć może jako schowek dla wirków. Antywiry podobnie: narzędzia backupu i prawdopodobnie tzw. "quota managers" czy inne narzędzia odczytujące info z partycji NTFS nie są w stanie dotrzeć do tego pliku i go po prostu omijają.
Natknęłam się na tą sytuację wielokrotnie. Zwykle pomagało mi przeniesienie folderu, w którym był felerny plik o kilka poziomów wyżej a sam plik wtedy "odzyskiwał" swoje właściwości i był jak najbardziej kasowalny. Niekiedy nazwa pliku/folderu jest samoistnie konwertowana na skróconą nazwę z takim charakterystycznym wężykiem "~" a sam plik/folder jest na śmietnik. Pewna wariacja tego proba była już na forum TU.

W celu ominięcia problemu można się posłużyć następującymi metodami:

Wykorzystanie skróconej nazwy w schemacie 8+3

QUOTE
Najłatwiejszym sposobem od którego zaczynamy jest wykorzystanie automatycznie wygenerowanej nazwy w formacie 8+3 np. odpowiednikiem Program Files jest PROGRA~1. Na partycjach NTFS równoległe tworzenie nazw 8+3 jest domyślnie włączona. By podpatrzyć owe skrócone nazwy wykorzystujemy linię komend:

Start >>> Run (Uruchom) >>> cmd i wpisujemy komendę:

DIR /X "ścieżka dostępu do pliku/folderu"

Jeśli ścieżka w formacie 8.3 również jest zbyt długa lub obsługa nazw typu 8.3 została wyłączona na NTFS wykorzystujemy trik poniżej.



QUOTE
Ponowne włączenie 8+3 na NTFS odbywa się za pomocą edycji rejestru:

Start >>> Run (Uruchom) >>> regedit

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem

Edytujemy wartość NtfsDisable8dot3NameCreation poprzez podmianę liczby 1 na 0.



Skrócenie ścieżki dostępu poprzez zmianę nazwy lub lokalizacji


QUOTE
Następnym prostym sposobem jest ręczne skrócenie nazw. Często wystarczy zmiana nazwy folderu, w którym się znajduje plik. Jeśli i to nie da pożądanych rezultatów należy rozpocząć zmianę nazwy "od samej góry" czyli od katalogu głównego. Jeśli i to nie da efektu należy obliczyć "głębokość" ścieżki dostępu. Jeśli plik znajduje się głębiej niż w 128 folderach należy przenieść jego folder lub folder wyżej jak najbardziej w górę.




.
user posted image System plików jest uszkodzony


Następną przyczyną niemożności skasowania plików lub folderów może być uszkodzony plik/folder lub system plików: FAT (tabela alokacji plików ) bądź też MFT (główna tabela plików). Źródłem takich uszkodzeń jest zwykle niepoprawne działanie plików, wadliwy soft lub hard czy też "bad sectory" dysku. Jednym z objawów może być komunikat, zwykle proszący o korektę:

QUOTE
<dysk>:\<folder> jest niedostępny
Plik lub katalog jest uszkodzony i nieczytelny.
Uruchom narzędzie Chkdsk.


Rozwiązaniem jest naprawienie pliku/folderu lub systemu plików poprzez wykorzystanie Checkdiska:

Start >>> Run (Uruchom) >>> chkdsk /f litera dysku:

Jeśli puścisz checkdiska bez przełącznika /f on cię tylko zaalarmuje o napotkanym błędzie ale go nie skoryguje. Natomiast przełącznik /f powoduje korektę napotkanych errorów. Prawdopodobnie wyświetli się wtedy komunikat w stylu:

QUOTE
10 lost allocation units found in 3 chains.
Convert lost chains to files?


Jeśli wybierzesz N (Nie) to zagubione resztki nie zapiszą się na dysku. Jeśli wybierzesz Y (Tak) to zostaną one zapisane byś sobie mógł je potem obejrzeć i ewentualnie ratować. Lądują one w katalogu głównym w postaci specjalnych plików:

naprawiony plik: File<nnnn>.chk
naprawiony folder: Found.<nnn>

to <n> to po prostu cyfry np. Found.001, File0001.chk

Jeśli nie masz backupu danych to raczej nie stosuj przełącznika /f gdyż checkdisk napotykając uszkodzenie "naprawi" je ale:

UWAGA: "Naprawa" może bardzo różnie wyglądać i jej skutkiem może być częściowa utrata danych. W swoim pojęciu Checkdisk naprawia uszkodzenia np. poprzez wyczyszczenie zawartości lub "obcięcie" danych, w pojęciu użytkownika wymazuje. Jeśli ktoś ma cenne kontakty czy archiwa w Gadu-Gadu itd. powinien je czym prędzej zbackupować czy nawet chamsko przepisać bo prawie na stóweczkę pliki dat zostaną wyczyszczone na zero! Znam to bardzo dobrze.............

O tym hardcorze produkowanym przez checkdiska było już na forum TU.

_
user posted image XP - Brak praw do pliku lub folderu tylko NTFS


Na platformie XP systemu NTFS blokada pliku lub folderu może tkwić w ustawionych prawach do ich korzystania - lista kontroli dostępu (ACL, Access Control List). Manipulacje na takim pliku/folderze kończą się errorem Access Denied a sam plik/folder jest wyświetlany fałszywie jako zerobajtowy. Przykładem może tu służyć ukryty folder funkcji Przywracania systemu czyli System Volume Information, który mając w sobie nawet i 1GIG danych ma pokazane we właściwościach 0 bajtów a próba otworzenia go kończy się takim oto komunikatem:

user posted image

Wyjściem z opresji jest przejęcie pliku/folderu na własność i przyznanie sobie prawa do jego skasowania. Domyślnie, pomimo nie przyznanych jednoznacznie praw:
- Administratorzy mają możliwość przejmowania dowolnych plików/folderów na własność.
- Właściciele plików mają możliwość modyfikowania uprawnień do plików/folderów.


Edytor zabezpieczeń Exploratora Windows

By to zrobić musisz się zalogować do kompa jako administrator. Akcji dokonujesz w zakładce Security (Zabezpieczenia), którą w pierwszej kolejności musisz uwidocznić:

QUOTE
Dla XP Home:

Musisz zastartować w trybie awaryjnym.

Dla XP Pro:

Musisz wyłączyć proste udostępnianie plików, które domyślnie jest włączone jeśli komputer nie należy do domeny. Przejdź do Mój komputer i z menu górnego wybierz:

Tools (Narzędzia) >>> Folder options (Opcje folderów) >>> View (Widok)

Odhaczykuj Use simple file sharing [Recommended] (Użyj prostego udostępniania plików [Zalecane]).



user posted image


Przejęcie pliku lub folderu na własność

Teraz z prawego kliku na wybrany plik/folder pobierasz jego Properties (Właściwości). Klikasz już obecną zakładkę Security (Zabezpieczenia) a jeśli pojawi się komunikat ostrzegający potwierdzasz go okejem. Następnie klikasz Advanced (Zaawansowane):

user posted image

Przechodzisz do zakładki Owner (Właściciel). Z listy kont wybierasz to pod którym jesteś aktualnie zalogowany jako administrator. Chcąć przejąć zawartość folderu zahaczykuj opcję Replace owner on subcontainers and objects (Zamień właściciela dla podkontenerów i obiektów). Pojawi się komunikat o zmianie uprawnień:

QUOTE
Nie masz uprawnień do odczytu zawartości katalogu Nazwa twojego pliku/folderu. Czy chcesz zamienić uprawnienia katalogu na uprawnienia dające pełną kontrolę?
Jeśli naciśniesz przycisk Tak, wszystkie uprawnienia zostaną zamienione.


Co potwierdzasz TAK a potem OK. Jesteś więc już właścicielem.

user posted image

Podgląd i zmiana uprawnień do pliku lub folderu

Ponownie przechodzisz do głównej zakładki Security (Zabezpieczenia) i w sekcji Group or user names (Nazwy grupy lub użytkownika) oglądnij konta:

user posted image

- Jeśli twoje konto tam figuruje wystarczy je tylko kliknąć
- Jeśli twoje konto nie figuruje tam kliknij Add (Dodaj) i w nowo otwartym okienku wpisz dokładną nazwę konta potwiedzając ją okejem:

user posted image

Po podświetleniu swojego konta na liście w dolnym polu Permissions for.... (Uprawnienia dla....) zaznacz pole wyboru Allow (Zezwalaj) lub Deny (Odmów). Sobie oczywiście wszystko ustawiasz na Allow.

Plik/folder będzie już twój. Teraz próbuj go kasować.


Narzędzie Cacls.exe

Jeśli powyższa metoda nie zadziała to być może problem tkwi w kolejności wpisów kontroli dostępu (ACE, Access Control Entry). Kolejność ta zakłada umieszczanie odmowy dostępu przed prawem dostępu. Niemniej programy mogą te wpisy mieszać. W związku z tym system może mieć problem z odczytaniem takiej nietypowej listy. Rozwiązaniem jest użycie narzędzia Cacls.exe.


QUOTE
Start >>> Run (Uruchom) >>> cmd

cacls "ścieżka dostępu do pliku/folderu" /E /G NazwaKonta:F

Ta komenda daje pełny dostęp (F= Full Control) dla twojego konta. Jeśli potem chcesz z powrotem usunąć pozwolenie wystarczy ponownie wpisać:

cacls "ścieżka dostępu do pliku/folderu" /E /R NazwaKonta


_
user posted image XP - Skomplikowany przypadek czyli połączenie przyczyn


Zdecydowanie najgorszym przypadkiem jest połączenie poprzednio wymienionych powodów niemożności skasowania pliku lub folderu np. kombinacja brak uprawnień do usunięcia pliku + nieprawidłowa nazwa z końcową spacją. Próba skasowania pliku z dziwną nazwą przy wykorzystaniu specjalnej komendy z \\?\ kończy się fiaskiem bo nie mamy praw by to zrobić. Z kolei przejmując plik na własność i przyznając sobie prawa do niego w istocie te uprawnienia są kierowane do nieprawidłowego lub nieistniejącego obiektu właśnie ze względu na to, że plik ma nietypową i źle rozpoznawaną przez system nazwę.

Rozwiązywaniu takich drastycznych przypadków służy narzędzie Microsoftu SubInACL.exe, które potrafi zmieniać status własności i prawa do plików niedostępnych w nietypowy sposób. Instalujemy narzędzie (domyślnie jest to C:\Program Files\Windows Resource Kits\Tools) i puszczamy je z linii komend z przełącznikiem /onlyfile:

QUOTE
subinacl /onlyfile "\\?\c:\ścieżka dostępu do pliku" /setowner=NazwaKonta /grant=NazwaKonta=F

To polecenie przyznaje adminowi (czyli tobie) prawo własności (setowner) i pełny dostęp do felernego pliku (F=Full Control) dzięki czemu może on wykorzystać trik z del \\?\ by skasować wadliwy plik. Składnia powyżej zakłada sytuację, że mamy tylko jednego kompa. Niemniej zamiast NazwaKonta może tam też się pojawić NazwaKomputera\NazwaKonta jeśli siedzimy w jakiejś sieci.



Np. Mój komputer ma nazwę "STUDIO" a moje konto to "Aretuza". Wpisuję tylko "Aretuza" zamiast "STUDIO\Aretuza" bo i tak działam w obrębie tylko jednego komputerka jako jedyny jego użytkownik. Nie mam praw dostępu do problematycznego pliku ze spacją na końcu o nazwie "test.txt " zlokalizowany w C:\Documents and Settings\My Documents.

Start >>> Run (Uruchom) >>> cmd

Przechodzimy do miejsca gdzie jest zainstalowane to narzędzie za pomocą komendy cd "ścieżka dostępu". Potem po znaku zachęty wklepujemy całą podaną składnię podstawiając pod model już swoje ścieżki dostępu i nazwy kont a finalnie kasujemy plik:

user posted image


_

http://www.hal.trzepak.net/faq/winxp/faqxp.html -strona główna FAQ XP