kategoria: oprogramowanie, system operacyjny
typ tekstu: poradnik
Redakcja benchmark.pl przygotowała artykuł "Skonfiguruj Windows 7 - 14 przydatnych wskazówek dla początkujących". W odpowiedzi na związany z nim konkurs przygotowałem swoją odpowiedź, czyli poradnik dotyczący partycji NTFS i obsługi dysków w Windows.
Większość moich uwag dotyczy systemów XP/Vista/7, niektóre są związane tylko z tym ostatnim.
| Spis treści |
| 1. Linki i sznurki na NTFS 2. Alternatywne strumienie na NTFS 3. Błędy na NTFS 4. Kompresja plików na NTFS 5. Czas ostatniego dostępu na NTFS 6. Pliki z pustą zawartością na NTFS 7. TRIM |
Artykuł jest przewidziany raczej dla użytkowników początkujących :)
Na partycjach NTFS możemy przechowywać nie tylko pliki i katalogi. Przykładem dodatkowych obiektów są odnośniki do prawdziwych plików czy katalogów:
Poniżej przedstawiłem komendy służące do ich tworzenia (gdzie katalog/plik.txt to źródło, a link/link.txt to stworzone odnośniki)
| Typ | Łączone obiekty | Komenda |
|---|---|---|
|
połączenie (junction point) |
katalogi |
mklink link katalog /j (nie wymaga uprawnień administratora, nie działa w Windows XP) junction link katalog (bezpłatne narzędzie Microsoftu należy pobrać stąd, nie wymaga uprawnień administratora) |
|
łącze stałe (hard link) |
pliki |
mklink link.txt plik.txt /h (nie wymaga uprawnień administratora, nie działa w Windows XP) fsutil hardlink create link.txt plik.txt |
|
łącze symboliczne (symbolic link) |
katalogi |
mklink link katalog /d (wymaga włączenia łączy na partycji, nie działa w Windows XP) |
| pliki |
mklink link.txt plik.txt (wymaga włączenia łączy na partycji, nie działa w Windows XP) |
Obecność łączy symbolicznych na partycji możemy sprawdzać i kontrolować stosując fsutil, np.
fsutil behavior query SymlinkEvaluation
służy do sprawdzenia, czy opcja jest aktywna.
Aby sprawdzić, czy do danego pliku są dołączane łącza stałe (znów w Vista/7), należy z kolei wykonać
fsutil hardlink list plik.txt
Pewną bardzo specyficzną formą odnośników są nazwy plików w formacie 8 znaków + 3 znaki rozszerzenia (pozostałość zachowana w celu uzyskania zgodności z DOS - oprócz długiej nazwy pliku tworzona jest też krótka). Możemy zmienić wygenerowaną nazwę na inną stosując
fsutil file setshortname plik.txt krotka.txt
Potwierdzenie zmiany możemy uzyskać wykonując np. komendę
dir /x
Tworzenie skróconych nazw plików można kontrolować na poszczególnych partycjach stosując znowu komendę fsutil (wersja dla Vista/7 dla partycji c:):
Z kolei w Windows XP ustawienie jest globalne (dotyczy wszystkich partycji) i należy użyć odpowiednio:
Możliwe jest również podłączanie partycji pod określone katalogi. Należy na dysku stworzyć standardowo katalog, a następnie użyć komendy mountvol. Pokaże ona szeregi ciągów znaków
\\?\Volume{numer}\
dla każdej partycji. Wybieramy jeden z nich, wykonujemy komendę
mountvol katalog \\?\Volume{numer}\
i od tej pory partycja jest już podłączona. Aby to odwołać, wystarczy wykonać
mountvol katalog /d
Alternatywne strumienie na NTFS
Większość z nas jest przyzwyczajona, iż plik ma jedną zawartość. W przypadku NTFS tak nie jest - z jednym plikiem mogą być powiązane dane z wielu niezależnych od siebie tzw. alternatywnych strumieni. Żeby uzyskać do nich dostęp, należy podać nazwę pliku połączoną z dwukropkiem i nazwą strumienia. Przykładowo komenda
notepad plik.txt:strumien
będzie edytować strumień o nazwie "strumien" połączony z plikiem plik.txt.
Niestety Eksplorator nie pokaże poprawnie wielkości pliku na dysku (tj. wielkości podstawowej zawartości + wielkości alternatywnych strumieni). Aby je odczytać (również z konta bez podwyższonych uprawnień), należy użyć np. komendy
dir /r
(przełącznik /r dostępny jest w Windows Vista/7) albo darmowego narzędzia Streams Microsoftu (poniższa komenda pokaże informacje o pliku plik.txt):
streams plik.txt
Załóżmy, że chcemy sprawdzić partycję c: pod względem błędów (np. mieliśmy zanik prądu). Standardowa opcja
chkdsk c: /f
może nie zadziałać (np. w tle działa program antywirusowy, który na to nie pozwala albo chcemy sprawdzić partycję systemową). Aby nakazać systemowi sprawdzenie partycji c: przy starcie, należy ustawić tzw. "bit zanieczyszczenia" przez wykonanie komendy
fsutil dirty set c:
Jeżeli pomimo jej zastosowania partycja nie została sprawdzona, należy wykonać
chkntfs /c c:
albo alternatywnie
chkntfs /d
(wtedy system będzie sprawdzał wszystkie dyski po ustawieniu na nich "bitu zanieczyszczenia").
Możemy skrócić czas oczekiwania na uruchomienie chkdsk przy starcie ze standardowych 10 sekund np. na 2 sekundy stosując
chkntfs /t:2
Począwszy od Visty mamy też opcje "samonaprawiania" - w przypadku wykrycia uszkodzeń jakiegoś pliku dostęp do niego jest blokowany, a system dokonuje poprawek. Funkcjonalność ta powinna być standardowo włączona. Aby to sprawdzić dla partycji c: należy wykonać
fsutil repair query c:
Włączenie uzyskamy przez
fsutil repair set c: 1
W obecnych systemach Microsoftu możemy również wymusić, aby system wygenerował "niebieski ekran", gdy wykryje błąd na danej partycji NTFS. Wykorzystujemy w tym celu przynajmniej dwie komendy:
fsutil behavior set BugCheckOnCorrupt 1
fsutil repair set c: 0x10
(drugą komendę powtarzamy po restarcie systemu dla wszystkich partycji, dla których ma to działać)
Pliki i katalogi na dyskach NTFS mogą być kompresowane, co wydłuża czas dostępu do nich, ale zmniejsza zajmowane przez nie miejsce (plik jest zapisany w postaci spakowanej na dysku, przed dostarczeniem go aplikacjom jego zawartość jest rozpakowywana przez system operacyjny). I tak komenda
compact /s /a /c *.*
wymusza kompresję wszystkich plików (również z atrybutem ukrytym i systemowym) w katalogu bieżącym i podkatalogach, zaś
compact /s /a /u *.*
to wycofuje. Możliwe jest wyłączenie funkcji kompresji na wszystkich partycjach
fsutil behavior set DisableCompression 1
Czas ostatniego dostępu na NTFS
NTFS oprócz czasu modyfikacji pliku/katalogu przechowuje również informację o czasie ostatniego dostępu do niego. Aby go zobaczyć, można użyć np. komendy
dir /t:a
albo dodać odpowiednią kolumnę w Eksploratorze Windows. Opcja jest globalna i musi być uaktywniona (jej włączenie może nieznacznie spowolnić system):
fsutil behavior set DisableLastAccess 0
Pliki z pustą zawartością na NTFS
Tym razem dwie ciekawostki dotyczące plików z bajtami o kodzie 0x00. Żeby "wyczyścić" w ten sposób dowolny plik, należy użyć komendy
fsutil file setzerodata offset=0 length=100 plik.txt
gdzie zamiast 0 i 100 wstawiamy odpowiednio numer pierwszego czyszczonego bajtu i długość obszaru.
Możemy zaoszczędzić miejsce na dysku w przypadku tzw. plików rozszedzonych (ich pusta część nie jest tam fizycznie zapisywana). Wpierw zaznaczamy plik jako wykorzystujący tę funkcję (działa w Windows Vista/7):
fsutil sparse setflag plik.txt
Następnie informujemy system, że określony obszar (w przykładzie 100 bajtów począwszy od pierwszego bajtu w pliku) może być wyczyszczony (zostanie wypełniony bajtami o kodzie 0x00, miejsce poprzednio zajmowane przez nie na dysku zostaną zwolnione)
fsutil sparse setrange plik.txt 0 100
Windows 7 obsługuje komendę TRIM. O ile jest ona zaimplementowana w firmware dysku SSD, pozwala w określonych przypadkach na zwiększenie prędkości jego działania (więcej można przeczytać np. tutaj).
Sprawdzenie, czy jest włączona w systemie, uzyskamy przez wykonanie
fsutil behavior query DisableDeleteNotify
(wartość 0 oznacza, że działa). Możemy ją włączyć komendą
fsutil behavior set DisableDeleteNotify 0
Początek mi się nie podoba - praktycznie nie ma odstępów między liniami tekstu :/
A z poradnika nie skorzystam, bo nie mam se7ena ;P, ale dam 5 za włożoną pracę ;)
Dobry artykuł, na poziomie, gratuluję.
Ale mam także radę: przy poleceniach/kodzie programu lepiej stosować czcionkę o stałej szerokości, np. Courier New bez pochylenia. Zdecydowanie to polepsza czytelność.
Jedna uwaga do Czytelników: artykuł pod adresem http://www.benchmark.pl/mini-recenzje/Skonfiguruj_Windows_-_5_przydatnych_wskazowek_dla_mniej_poczatkujacych-2472.html jest oczywiście kontynuacją...
proszę poprawić: "Możemy zaoszczędzić miejsce na dysku w przypadku tzw. plików rozszedzonych" na pewno chodzi o pliki rozrzedzone... o rozszedzonych nie słyszałem.... do dziś :)
Firma GIGABYTE wypuściła GeForce GT 430OC który bazuje na chipie - GF 108 - karta graficzna, która łączy w sobie wysokie osiągi i niską cenę.
Dla każdego entuzjasty sprzętu komputerowego wymiana elementów wychuchanej maszyny do niemalże święto.
Jak na tle najmocniejszego stereofonicznego zestawu Logitecha wypada najnowszy tego typu produkt JBL-a?
ocena userów:92
ocena userów:60
ocena userów:48
ocena userów:40
ocena userów:38
ocena userów:31
ocena userów:28
ocena userów:28
ocena userów:27
ocena userów:23
ocena userów:22
ocena userów:21
ocena userów:19
ocena userów:18
ocena userów:18
ocena userów:17
ocena userów:16
ocena userów:16
ocena userów:14
ocena userów:11