Defragmentowanie partycji NTFS z Linuksa


Odpowiedzi:


12

Tak, możesz użyć shake'a . Najpierw musisz dodać niestandardowe repozytorium do swojego systemu:

sudo add-apt-repository ppa:un-brice/ppa
sudo apt-get update
sudo apt-get install shake-fs

To możesz zrobić

sudo shake /some/dir

10
Shake nie jest całkiem defragmentatorem, po prostu kopiuje każdy plik w nadziei, że kopia będzie mniej rozdrobniona. To oczywiście dalekie od działania prawdziwych defragmentatorów.
rustyx

9

Z tego co wiem, nie ma takiego narzędzia.

Niektóre witryny zgłaszają następujące polecenie

# WARNING - does not work
fsck -t ntfs --kerneldefrag /dev/hdX

ale to nie działa i nie jest jasne, skąd je biorą.


7
-1 Po co dodawać odpowiedź, jeśli w ogóle nie jest użyteczna?
Wolfer

1
@Wolfer jest dobry, więc kiedy znajdziemy go gdzieś indziej, wiemy, że to nie działa
krispy

6

Aktualizacja: UltraDefrag dla systemu Linux:

UltraDefrag to potężne narzędzie do defragmentacji Open Source dla platformy Windows. Może defragmentować dowolne pliki systemowe, w tym gałęzie rejestru i plik stronicowania. Jednym z głównych celów UltraDefrag jest wykonywanie pracy tak szybko i niezawodnie, jak to możliwe. Jest on przenoszony do systemu Linux i NTFS-3G w celu defragmentacji partycji NTFS. Obecnie dostępna jest tylko wersja testowa w trybie konsoli. Proszę przeczytać dołączony plik README.linux do kompilacji i testowania

http://jp-andre.pagesperso-orange.fr/advanced-ntfs-3g.html

[Sam jeszcze tego nie użyłem. Znalazłem to za pomocą wątku na forum Arch . Dalsze śledzenie wątku do następnej strony prowadzi do więcej na ten temat. Spróbuj na własne ryzyko. —Kevjonesin—]


1

To jest DUŻE ostrzeżenie dla wszystkich z was, którzy myślą, że NFTS można defragmentować w systemie Linux po prostu przez kopiowanie plików (klonowanie tylko plików) itp .:

  • Niektóre NTFS (pliki / foldery) mogą mieć aktywny atrybut specjalny, nazywa się to Kompresją NTFS

z tego co wiem, za każdym razem, gdy Linux (cp, fsarchiver itp.) zapisuje plik / folder na NTFS, zawsze zapisuje go bez kompresji NTFS, bez względu na to, czy plik / folder ma włączoną czy wyłączoną kompresję.

Możesz więc dojść do sytuacji (spotykam się z trudną sytuacją), w której przywracanie za pomocą fsarchive (lub cp itp.) Spowodowałoby, że partycja się zapełniła i nie wystarczyła.

Niektóre rodzaje danych mogą osiągnąć współczynnik kompresji NTFS większy niż 3, więc możesz mieć partycję X GiB z dużą liczbą plików, a suma plików może być zbliżona do 3 * X.

Ostrzegam, ponieważ nie jest dobrze znany i czasami powoduje naprawdę duże bóle głowy. na przykład podczas przywracania klonu potrzeba więcej miejsca niż cała sklonowana partycja, ponieważ utraciła kompresję NTFS w systemie Linux.

Ponadto przy bardzo specjalnych danych (współczynnik NTFS większy niż 5) dochodzę do tej sytuacji:

  • Rozmiar partycji NTFS X GiB
  • Plik zawierający klon (z najlepszą kompresją, jaką pozwala na to narzędzie, myślę, że GZip) zajął 2 * X GiB

O tak, klon został skompresowany i zajmował dwa razy więcej rozmiaru partycji.

Jest to spowodowane tym, że narzędzie do klonowania odczytuje pliki w postaci zwykłej (w sposób wyraźny, nieskompresowany), a następnie kompresuje dane (przy naprawdę gorszym stosunku niż NTFS).

Oczywiście przywrócenie tych danych nie zmieści się na tej partycji, ponieważ przywrócone dane zostaną wstawione bez kompresji NTFS.

Mam nadzieję, że jest to kolejny powód, dlaczego nie używać kompresji NFTS? Cóż, wcale nie, często używam kompresji NTFS (w przeszłości). Pliki VDI (Virtual Box) mają naprawdę dobry współczynnik.

Teraz odkryłem plik Pismo Mount (i działa również w systemie Linux). może utworzyć plik, który działa jak kontener (jako folder) i może być skompresowany (również w lepszym stosunku niż NFTS) i jednocześnie zaszyfrowany.

Dlaczego o tym wspominam. ponieważ każde narzędzie klonujące zobaczy taki kontener jako plik (gdy nie zostanie zamontowany jako folder) i odczyta / zrzuci / wykona kopię zapasową skompresowanego strumienia danych, a nie zwykłych nieskompresowanych danych (jak w przypadku kompresji NTFS). więc przywracanie jest jak w przypadku każdego innego pliku.

Zamiast kompresować folder NTFS za pomocą atrybutu kompresji NTFS, umieściłem wirtualny folder Pismo mount. uzyskać lepszą kompresję itp.

Muszę również ostrzec was wszystkich zainteresowanych takim bezpłatnym narzędziem. nie ma (przynajmniej jeszcze) kurczenia się, więc jeśli zawartość folderu bardzo się zmienia, nie jest to dobry pomysł.

Ale dla niezmiennych dysków wirtualnych, ISO i rzeczy, które się nie zmienią, współczynnik, jaki uzyskuje, jest bardzo zbliżony do dysków LZMA2 (7-Zip) i można go odczytywać / zapisywać w locie.

I jest wieloplatformowy.

Zwróć uwagę na złego kompresora NTFS, który mówi o fragmentacji. kiedy piszesz plik do NTFS z włączoną kompresją NTFS, robi to w ten sposób (tak okropnie zaprojektowane, myślę, że robi się to w taki sposób, aby zapewnić większą fragmentację w sposób zamierzony, najgorsze nie można zrobić):

  1. Pozycja początkowa zapisu jest wstępnie obliczana jako 64 KB * N, gdzie N jest liczbą fragmentu 64 KB, który będzie próbował zostać skompresowany
  2. Bufor dla 64K jest zarezerwowany
  3. Ten bufor jest wypełniony 64 KB, a następnie skompresowany
  4. Zapisywane są tylko potrzebne bloki 4K, resztę pozostawia się jako wolne miejsce

Tworzy więc wiele przerw w środku pliku i tylko po defragmentacji pliku znikają GAP, ale defragmentacja nie następuje, dopóki użytkownik go nie zamówi (contig.exe, defrag.exe itp.).

Tak, zapisuje N-ty fragment 64K na pozycji wielokrotności 64K, bez względu na to, czy poprzednie dane mogłyby zostać skompresowane, pozostawia przerwę między każdym fragmentem 64K (jeśli wszystko można skompresować).

Kompresja folderów wirtualnych Pismo File Mount działa jak normalna kompresja w trybie potokowym, więc nie ma przerw. przynajmniej dopóki czegoś nie usuniesz.

Kolejne ostrzeżenie: nie umieszczaj w nim plików VHD / VHDX, Windows nie będzie mógł ich załączyć! Windows używa sztuczki jądra do montowania takich rzeczy, nie używa poziomu systemu plików, działa na niskim poziomie.

Chciałbym również zdobyć defragmentator NTFS dla Linuksa, na pewno byłby szybszy niż wszystkie, które działają w systemie Windows. totalne szaleństwo na defragmentacji wolnego miejsca. lub lepiej mówić. tworząc wystarczająco duży plik dla nowego dużego pliku.

Również byłoby wspaniale, że moja pamięć działa lepiej. w przeszłości korzystałem z narzędzia (linia poleceń, przepraszam) w systemie Windows, które mogło kopiować / przenosić plik w niefragmentowany sposób. przenoszenie potrzebnych plików podczas ich pobierania, a nie dzielenie tych. daje komunikat tylko wtedy, gdy nie może znaleźć sposobu na umieszczenie pliku (niemożność uzyskania dziury) lub inne ostrzeżenie, jeśli potrzebuje fragmentu innego pliku (pytając, czy użytkownik jest autoryzowany) itp. było naprawdę świetne. Nie pamiętam nazwy (i może nie działa z nowoczesnymi oknami, to było dla Win2000).


0

Nie. Są to systemy plików Windows, więc będziesz musiał użyć systemu Windows do ich defragmentacji.


Czy Wine nie ma standardowej aplikacji do defragmentacji systemu Windows? ???
Juan

2
@Juan, nie, to część systemu Windows. WINE pozwala tylko uruchamiać aplikacje innych firm napisane dla systemu Windows. Wykorzystuje również specyficzne dla sterownika systemu plików ioctl systemu plików Windows, które nie są dostępne w systemie Linux.
psusi

0

Jest bardzo dobrze znany podstępny oszustwo do zarchiwizowania defragmentacji NTFS (w tym wolnego miejsca) ... można tego dokonać za pomocą Live Linux, takiego jak SystemRescueCD ...

Ale musisz mieć drugi dysk twardy lub co najmniej 51% wolnego miejsca (to jeśli nie używasz kompresji).

Sztuczka (bardzo podstępna) polega na użyciu narzędzi do „klonowania” partycji, ale nietypowych ... istnieje narzędzie, które może „sklonować” partycję NTFS, ale nie wykonuje dokładnego „klonowania” ... pozwól mi wyjaśnić ...

Narzędzie jest fsarchive (jeśli nie pamiętam źle).

Tworzy bardzo duży plik (podobnie jak narzędzia klonowania) ze wszystkimi plikami (uważaj na specjalne metadane plików NTFS, strumienie, jak sądzę, są one wywoływane), podobnie jak narzędzie do klonowania ...

Ale trudna część przychodzi podczas przywracania ... nie umieszcza plików tam, gdzie są, umieszcza pliki w ogóle bez fragmentacji.

Użyłem go do partycji systemu Windows, a także do partycji danych NTFS ... z sukcesem ... niezbyt łatwy w użyciu / zrozumieniu (uważnie czytam dokumenty) ... ale mogę załatwić sprawę.

Pamiętaj ... tak duży plik, który tworzy, można skompresować, więc tak naprawdę nie trzeba mieć 51% wolnego.

Ale w każdym razie najpierw musisz zmniejszyć partycję NTFS ... użyć GParted (jeśli nie pamiętam źle).

Więc kroki:

  1. W najgorszym przypadku: HDD ma tylko jedną DUŻĄ partycję NTFS, z wystarczającą ilością wolnego miejsca
  2. Uruchom SystemRescuCD (jeśli chcesz uruchomić X-Window za pomocą polecenia kreatora)
  3. Użyj GParted, aby zmniejszyć partycję NTFS do jej minimalnego rozmiaru (fragmentuje pliki NTFS bardziej, bez względu na to)
  4. Użyj GParted, aby utworzyć kolejną partycję na wolnym miejscu, lepiej jeśli typ ext4 (dziennik)
  5. Zamontuj taką nową partycję, ale nie montuj NTFS
  6. Użyj fsarchiver, aby utworzyć „klon” partycji NTFS, użyj kompresji i zapisz plik bif na utworzonej partycji
  7. Odtąd jest to bardzo RYZYKO: Użyj GParted, aby usunąć partycję NTFS i ponownie ją utworzyć
  8. Przywróć „klon” za pomocą fsarchiver, wszystkie pliki na partycji NTFS będą miały 1 fragment (oprócz jednego lub dwóch, ponieważ $ MFT można umieścić na środku, a nie na stratach lub na końcu partycji)
  9. W razie potrzeby użyj Gparted, aby zmniejszyć partycję NTFS
  10. Sprawdź, czy NFTS jest poprawny, można go zamontować, odczyt / zapis i odinstalować
  11. Odmontuj nowo utworzoną partycję ext4
  12. Użyj Gparted, aby rozwinąć ten ext4 (lub lepiej, usuń go i utwórz ponownie)

To wszystko, ludzie ... jak powiedziałem, oczywiście bardzo ryzykowne i ryzykowne.

Uważaj na kluczowe punkty:

  • Zmniejszenie NFTS pozwala na wystarczającą ilość wolnego miejsca do przechowywania skompresowanego obrazu partycji NTFS (51% wolnego miejsca na dysku twardym zapewni wystarczającą ilość miejsca)
  • fsarchiver nie zapisuje strumieni NTFS?
  • Przywracanie fsarchiver nie umieszcza plików tam, gdzie są, umieszcza je niefragmentowane (jak kopia)
  • Po usunięciu i odtworzeniu partycji NTFS nie ma odwrotu

Kroki są następujące: Użyj Linuksa LiveCD / LiveUSB do defragmentacji partycji NTFS, która wykorzystuje 100% dysku, bez podłączania innego dysku twardego do takiego komputera [musi mieć wystarczającą ilość wolnego miejsca].

WAŻNY:

  • Niektórzy mogą pomyśleć, że jeśli masz 51% wolnego miejsca na dysku twardym po zmniejszeniu NTFS, bezpieczniej jest po prostu utworzyć ten ext4 i skopiować do niego wszystkie NTFS, a następnie usunąć NTFS, odtworzyć go i skopiować z powrotem ... ROBIĄC, że spowoduje to straty, takie jak uprawnienia bezpieczeństwa NTFS itp

O ile wiem, GParted / fsarchiver jest najbardziej zbliżonym rozwiązaniem (do używania tylko LiveCD / LiveUSB z Linuksem), nie szybkim, ryzykownym, ale spełniającym warunki narzucone przez osobę, która opublikowała pytanie.

UWAŻAJ: To jest bardzo, bardzo ryzykowne ... jak w przypadku każdego narzędzia do klonowania ... a na razie nie znam żadnego innego najlepszego sposobu ... i straci strumienie NTFS (jeśli nie pamiętam źle)

PROSZĘ: Przeczytaj uważnie dokumentację fsarchiver przed użyciem.

Mam wszelką odpowiedzialność (użyłem tego na własnych danych, ale zawsze mam zewnętrzny BackUP - dobre partice).

W praktyce ... wszystkie informacje, które mam, umieszczam je na co najmniej trzech różnych nośnikach (HDD, DVD, Flash Memories), z co najmniej trzema kopiami na każdym nośniku, więc mam 9 kopii ... jeśli stracę 8 im jeszcze jedno, by odzyskać dane ... Jestem trochę paranoikiem, wiem.


Nie poleciłbym tej metody, ponieważ (tak jak powiedziałeś) jest bardzo ryzykowna i zwykle nie jest warta defragmentacji. Lepiej używaj systemów Windows Live do wykonania takiej pracy (lub oryginalnego systemu Windows - dlaczego nie?).
Bajt Dowódca

fsarchive to tylko wyrafinowane archiwum tar, które przechowuje niektóre rozszerzone atrybuty. Niczego nie defragmentuje. Twoja metoda jest tak dobra, jak prosta kopia plików z jednej partycji na inny czysty system plików.
ZAB
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.