Wiem, że to stare pytanie, ale chciałbym pokazać, jak wykonać ten proces na komputerze Mac, ponieważ nie jest to tak łatwe: fdisk
nie ma -l
opcji i truncate
nie jest domyślnie instalowane:
1. Krok 1: Zainstaluj obcinanie w Mac OS X:
Do tego potrzebujesz MacPorts lub Homebrew. Używam MacPorts. Jeśli nie masz żadnego z nich, najpierw zainstaluj je. Link do MacPorts
Teraz możemy zainstalować obcinanie . Otwórz terminal i wpisz:
sudo port install truncate
W przypadku instalacji Brew:
brew install truncate
To powinno to zrobić.
2. Użyj narzędzi dyskowych, aby zamontować nasz IMG, tak aby był widoczny dla polecenia terminalut diskutil .
Za chwilę zobaczysz, dlaczego potrzebujemy tego kroku. Otwórz aplikację Disk Utility. Kliknij Plik (na górnym pasku) -> Otwórz obraz dysku i wybierz plik IMG.
3. Sprawdź rozmiar partycji IMG i miejsce jej zamontowania.
W terminalu wpisz:
diskutil list
I gdzieś na końcu powinno pokazać coś takiego:
/dev/disk3 (disk image):
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme +16.0 GB disk3
1: Windows_FAT_32 boot 62.9 MB disk3s1
2: Linux 3.9 GB disk3s2
Widzimy więc, że około 12 GB jest niepodzielonych na partycje. Musimy je obciąć.
Powodem, dla którego potrzebujemy tego polecenia, jest sprawdzenie, gdzie jest zamontowany obraz dysku. W moim przypadku jest pod: / dev / disk3
4. Sprawdź rzeczywisty rozmiar partycji.
3,9 GB i 62,9 MB to wartości, które nie będą działać z obciętym narzędziem. Musimy znaleźć rozmiary partycji w bajtach.
5. Uruchom fdisk .
W swoim terminalu uruchom polecenie:
fdisk /dev/diskX
Gdzie X to liczba, którą znalazłeś w poprzednim kroku. Powinno to spowodować coś takiego:
Starting Ending
#: id cyl hd sec - cyl hd sec [ start - size]
------------------------------------------------------------------------
1: 0C 0 130 3 - 8 40 32 [ 8192 - 122880] Win95 FAT32L
2: 83 8 40 33 - 478 79 49 [ 131072 - 7553024] Linux files*
3: 00 0 0 0 - 0 0 0 [ 0 - 0] unused
4: 00 0 0 0 - 0 0 0 [ 0 - 0] unused
6. Czas obciąć !
Na terminalu cd
do katalogu, w którym znajduje się twój obraz. Następnie napisz:
truncate FILE SIZE
Plik jest oczywiście twoim plikiem.
ROZMIAR to rozmiar w bajtach. To, co zrobiłem, to dodanie do kolumny rozmiarufdisk
polecenia kolumny początkowej i pomnożenie przez 512. Zatem w moim przypadku ROZMIAR będzie wynosić: 512 * (7553024 + 131072) = 3934257152 , co stanowi około 3,9 GB.
Będziesz potrzebował rozpoczęcia i rozmiaru z ostatniej partycji , która jest pokazana przez fdisk
. (Niekoniecznie największy, ale ten na końcu pliku IMG)
Trochę eksperymentowałem i za każdym razem, gdy wpisałem 7553024 * 512 lub (7553024 + 1) * 512 bajtów, plik IMG był uszkodzony. Tak więc, dla pewności, rób to tak, jak wskazałem powyżej. Może dodać więcej niż jest to faktycznie potrzebne, ale jest to bezpieczna opcja.
7. (Opcjonalnie) Łatwo przetestuj, czy IMG nie jest uszkodzony.
Przejdź jeszcze raz w Narzędziu dyskowym i spróbuj otworzyć nowy plik IMG jak poprzednio. Jeśli się zamontuje, możesz także zobaczyć nowy (mniejszy) rozmiar. Jeśli się nie zamontuje, coś poszło nie tak. (Może spróbuj zwiększyć rozmiar w truncate
poleceniu)
To nie jest najlepszy test, ale jest to pewny sposób, aby sprawdzić, czy nowy IMG jest uszkodzony, czy nie. Więc tak naprawdę nie licz na to, ale warto spróbować ...
Mam nadzieję, że ktoś uzna to za pomocne!
dd if=/dev/path/to/SD/card of=~/SpecialImage.img
, a następnie zainstaluj GParted i uruchomgparted ~/SpecialImage.img
. Gdy GParted otworzy.img
plik, po prostu zmień rozmiar partycji według własnych upodobań! (Obie komendy muszą być uruchomione jako root,sudo su
powinny dać ci to, czego potrzebujesz. Po$
przejściu na a#
, jesteś rootem. Uważaj, to jest odpowiednik Boga w Linuksie.) GParted jest w zasadzie interfejsem GUI do zarządzania tajemnymi partytonami narzędzia, których będziesz potrzebować. Korzystanie z GParted sprawia, że wszystko jest o wiele prostsze i bardziej prawdopodobne do osiągnięcia sukcesu.