Zmiana rozmiaru partycji fat32 w wierszu poleceń bez utraty danych

2

Próbuję zmienić rozmiar grubej partycji 32 na moim komputerze z systemem Linux. Poniżej podano specyfikacje systemu.

  1. To nie jest komputer, dlatego narzędzia oparte na interfejsie użytkownika nie mają zastosowania.
  2. Ta partycja pamięci, którą próbuję zmienić, ma już dane w postaci plików. Nie mogę ich zgubić.
  3. Próbuję zmniejszyć partycję do samego miejsca i przenieść pozostałe miejsce na inną partycję.
  4. Najlepiej bez ponownego uruchamiania systemu odmontowanie partycji byłoby w porządku.

Edycja: Kopia zapasowa danych z tej partycji nie jest tym, czego szukam. Próbuję sprawdzić, czy istnieje sposób, który mogę wypróbować bez utraty danych. To bardziej jak analiza niż zadanie.

Co próbowałem do tej pory: Próbowałem użyć narzędzia parted jako gparted potrzebuje interfejsu użytkownika. Chociaż jestem w stanie zmniejszyć tę partycję, prowadzi ona do niepotrzebnych problemów z powodu fragmentacji plików. Na przykład po zmniejszeniu po uruchomieniu sprawdzania systemu plików pojawiają się błędy, takie jak nie znaleziono łańcucha dla kilku plików.

Nie mogę używać narzędzi takich jak resizee2fs, ponieważ obsługuje on tylko systemy plików ext (popraw mnie, jeśli się mylę).

Próbowałem użyć narzędzia fatresize, mimo że udało mi się go zainstalować w moim debianie, nie jestem w stanie uzyskać instalowalnego ramienia, niezależnie od tego, jaki link otrzymuję, powoduje błąd w samej instrukcji pierwszego wiersza.

Czy ktoś może mi pomóc w uzyskaniu jakichkolwiek informacji?

Rengasami Ramanujam
źródło
3
„Tworzenie kopii zapasowej danych z tej partycji nie jest tym, czego szukam”, a „Nie mogę ich zgubić” to niezgodne instrukcje. Dane bez kopii zapasowej są z definicji nieistotne. Naprawdę potrzebujesz kopii zapasowej, nawet jeśli nie próbowałeś zmienić rozmiaru systemu plików.
David Foerster,
@DavidFoerster Miałem na myśli to, że potrzebuję danych, aby je zachować, ale bez kogoś, kto mógłby wykonać kopię zapasową. Jest powód, dla którego zadaję to pytanie. Próbuję uruchomić go jako skrypt solo bez jakiejkolwiek ręcznej interwencji i bez połączenia z Internetem w mniejszej dostępnej przestrzeni.
Rengasami Ramanujam
Możliwy duplikat Jak zmienić rozmiar partycji serwera Ubuntu? Jedna odpowiedź sugeruje, którego użycie partedmoże zmienić rozmiar systemów plików FAT32.
David Foerster,

Odpowiedzi:

3

Cóż, po pierwsze, jeśli „masz już dane w postaci plików. Nie mogę ich zgubić”, pierwszym krokiem jest utworzenie ich kopii zapasowej, zanim zrobisz cokolwiek innego.

Zmiana rozmiaru i przenoszenie partycji często nie powoduje utraty danych, a jeśli wszystko inne zawiedzie, prawie zawsze możesz przywrócić pliki za pomocą photorec - http://www.cgsecurity.org/wiki/PhotoRec - jest to bolesne.

Po drugie, nie można zmieniać rozmiaru ani przenosić używanych partycji. To jest główny powód, dla którego ludzie radzą ci wykonywać te operacje z live usb.

Tak więc, bez względu na wszystko, nie można przenieść ani zmienić rozmiaru partycji głównej bez uruchamiania na żywo USB (wyjątek stanowiłby dodanie do LVM).

Dopóki partycje, o których mowa, nie są używane, tj. Odmontowane, można je przenosić i zmieniać ich rozmiar:

Zobacz Jak zmienić rozmiar partycji za pomocą wiersza polecenia bez interfejsu GUI na serwerze?

W przeciwnym razie Twoje pytanie zostanie prawdopodobnie zamknięte z powodu:

  1. Używasz Debiana

  2. Brak informacji - nie opublikowałeś schematu partycjonowania, powiedz nam, co chcesz przenieść, jakie partycje są zamontowane oraz jakie otrzymujesz polecenie i komunikat o błędzie.

Pantera
źródło
1
on działa z ramieniem, a nie z debianem --- „Chociaż mogę zainstalować na moim debianie, nie mogę go zainstalować na moim ramieniu”
zachwycający
Tak, nie uruchamiam Debiana, korzystam z ARM. Właściwie tworzenie kopii zapasowych danych nie było opcją, której szukam. Ale mogę odmontować tę partycję.
Rengasami Ramanujam
@RengasamiRamanujam, Nie szukałeś kopii zapasowej, ale i tak zalecamy. Nie chcemy, abyś tracił cenne dane, a zmiana rozmiaru partycji jest ryzykowna.
sudodus
PhotoRec nigdy nie był niezawodnym narzędziem.
Kais,
@Kais - Czy masz lepszy? PhotoRec pracował dla mnie tak samo jak każdy inny, którego próbowałem.
Panther
1

Lepiej skopiuj dane w postaci plików do bezpiecznego miejsca (jeśli chcesz, nazwij je kopią zapasową), ale w tym przypadku także do lokalizacji tymczasowej, ponieważ myślę, że musisz zaakceptować fakt, że nie możesz zmniejszyć systemu plików FAT z linuksem przybory. Możesz to zrobić za pomocą narzędzi systemu Windows (FAT32 to system plików Microsoft).

Po skopiowaniu danych w postaci plików do bezpiecznego miejsca możesz to zrobić

  • uruchom z innego dysku i odmontuj wszystkie partycje na tym dysku, które chcesz zmienić

  • edytuj partycję (najłatwiej jest usunąć partycję FAT32 i utworzyć nową partycję o żądanym rozmiarze.

  • utwórz system plików FAT32 na nowej partycji

  • wykonaj inne modyfikacje w tablicy partycji ...

  • skopiuj pliki z bezpiecznego miejsca na nową partycję FAT32.

sudodus
źródło
Z pewnością możesz zmienić rozmiar partycji FAT z linux gnu.org/software/parted/manual/html_chapter/parted_6.html#SEC54
Panther
OK, @ bodhi.zazen, tydzień temu zawiodłem w nowoczesnym systemie LTS 16.04 z gparted. Ale kiedy mówisz, że inne narzędzia mogą to zrobić, cieszę się :-)
sudodus
@Rengasami Ramanujam, możesz spróbować zmniejszyć system plików FAT32 i partycję, ale nie polegam na tym procesie po awarii w zeszłym tygodniu, więc zalecamy skopiowanie danych w postaci plików do bezpiecznego miejsca przed rozpoczęciem .
sudodus
@ bodhi.zazen Czy parted dokona defragmentacji plików na partycji przed zmianą jej rozmiaru? Innymi słowy, czy parted sprawi, że bloki rozproszonego przechowywania plików będą ciągły błąd?
Rengasami Ramanujam
@RengasamiRamanujam - Zadawanie nowego pytania w komentarzach jest uważane za kiepską formę. Powinieneś zadać nowe pytanie. Parted nie defragmentuje, ale powinien przenieść pliki w razie potrzeby, aby zmienić rozmiar partycji. Nie znam szczegółów wewnętrznych rozstania.
Panther