Kupiłem nowy dysk SSD o pojemności 750 GB i utworzyłem dwie partycje: 600 GB i 150 GB. Mniejsza z nich była kiedyś uważana za partycję Bootcamp, ale do tej pory była to po prostu kolejna nieużywana partycja. Kiedy potrzebowałem więcej miejsca, postanowiłem połączyć te dwie partycje. Partycja została utworzona za pomocą Mavericks, połączenie zostało wykonane z Yosemite.
Otworzyłem Narzędzie dyskowe i przycisk „minus”. Narzędzie dyskowe poinformowało mnie, że obie partycje zostaną połączone. Jednak niestety zawiodło. Nagle na moim głównym dysku twardym wystąpiły błędy, których nie można naprawić, a nawet dwóch innych zewnętrznych dysków twardych nie można już zamontować.
W końcu przywróciłem dysk twardy z Time Machine, który działał dobrze.
Moja druga partycja jest teraz wymieniona jako darmowa:
Niestety nie mogę zmienić rozmiaru partycji 600 GB, ani nie mogę utworzyć nowej partycji przy użyciu wolnego miejsca.
Diskutil ujawnia następujące informacje:
~ diskutil list
/dev/disk0
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *750.2 GB disk0
1: EFI EFI 209.7 MB disk0s1
2: Apple_CoreStorage 599.6 GB disk0s2
3: Apple_Boot Recovery HD 650.0 MB disk0s3
/dev/disk1
#: TYPE NAME SIZE IDENTIFIER
0: Apple_HFS Macintosh HD *599.3 GB disk1
Logical Volume on disk0s2
XXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
Unencrypted
Diskutil również poruszył to:
~ diskutil cs list
CoreStorage logical volume groups (1 found)
|
+-- Logical Volume Group 9D2BA4BA-xxxx-xxxx-xxxx-xxxxxxxxxxxx
=========================================================
Name: Macintosh HD
Status: Online
Size: 599640592384 B (599.6 GB)
Free Space: 6111232 B (6.1 MB)
|
+-< Physical Volume 29A9A02B-xxxx-xxxx-xxxx-xxxxxxxxxxxx
| ----------------------------------------------------
| Index: 0
| Disk: disk0s2
| Status: Online
| Size: 599640592384 B (599.6 GB)
|
+-> Logical Volume Family 2FA7892F-xxxx-xxxx-xxxx-xxxxxxxxxxxx
----------------------------------------------------------
Encryption Status: Unlocked
Encryption Type: None
Conversion Status: NoConversion
Conversion Direction: -none-
Has Encrypted Extents: No
Fully Secure: No
Passphrase Required: No
|
+-> Logical Volume 7BF42B7B-xxxx-xxxx-xxxx-xxxxxxxxxxxx
---------------------------------------------------
Disk: disk1
Status: Online
Size (Total): 599282155520 B (599.3 GB)
Conversion Progress: -none-
Revertible: No
LV Name: Macintosh HD
Volume Name: Macintosh HD
Content Hint: Apple_HFS
Próbowałem tego:
- Odzyskaj Usuń partycję Freespace po usunięciu Yosemite
- fsck -fy (Głośność Macintosh HD wydaje się być OK.)
ale to by nie pomogło. Powiedział, że nie mogę odzyskać, ponieważ nie został utworzony w sposób, który mógłby obsługiwać (przepraszam za pominięcie dokładnej wiadomości).
Następnie dowiedziałem się, że Apple_CoreStorage może wskazywać, że mój dysk jest zaszyfrowany, co może wyjaśniać, dlaczego nie mogę zmienić jego rozmiaru. Nie wyjaśnia, dlaczego nie mogę utworzyć nowej partycji.
Jakie mam opcje, aby mój dysk twardy był dostępny na jednej partycji o rozmiarze 750 GB?
źródło
diskutil cs list
wynik do swojej odpowiedzi. Możesz mieszać wszystkie uuidy, ale wybierać różne litery dla każdego znalezionego UUID, aby lepiej je odróżnić, jeśli ktoś zdarzy się odpowiedziećOdpowiedzi:
Po pewnym doświadczeniu z woluminami CoreStorage przerobiłem moją pierwszą odpowiedź, aby uogólnić i ułatwić ją, dodając kilka scenariuszy i usuwając zbędne kroki.
Zasadniczo istnieje jedno nieudokumentowane polecenie zmiany rozmiaru lub rozszerzenia grupy woluminów CoreStorage i nieodłącznego woluminu logicznego:
Polecenie rozszerza lub zmniejsza całą grupę woluminów CoreStorage, w tym woluminy fizyczne, rodzinę woluminów logicznych i wolumin logiczny w jednym kroku do pożądanego rozmiaru.
Zmniejszenie jej do wielkości zajmowanego miejsca w woluminie logicznym nie powinno stanowić żadnego problemu (ale nie jest zalecane, ponieważ należy pozostawić co najmniej 10% wolnego miejsca), każda partycja blokująca oprócz partycji odzyskiwania musi zostać usunięta lub zmniejszono przed rozszerzeniem stosu CoreStorage.
Polecenie jest przydatne w kilku scenariuszach:
Uwaga: polecenie jest w dużej mierze nieudokumentowane i jako takie potencjalnie destrukcyjne.
Przygotowanie:
Uruchom ponownie w trybie odzyskiwania Internetu, naciskając alt cmd Rpodczas uruchamiania.
Warunkiem jest zainstalowanie najnowszej aktualizacji oprogramowania układowego: Ethernet lub WLAN (WPA / WPA2) i router z aktywowanym DHCP.
Na linii 50 Mb / s trwa około 4 minut (przedstawiając małą animowaną kulę ziemską), aby uruchomić się na obrazie netboot odzyskiwania, który zwykle jest ładowany z serwera apple / akamai.
Polecam ethernet, ponieważ jest bardziej niezawodny. Jeśli jesteś ograniczony do WIFI, a proces uruchamiania nie powiedzie się, po prostu uruchom ponownie komputer Mac, aż do pomyślnego uruchomienia.
Alternatywnie możesz zacząć od bootowalnego napędu instalacyjnego (Mavericks lub Yosemite) lub napędu USB zawierającego pełny system (Mavericks lub Yosemite).
Zmodyfikuj stos CoreStorage:
Najpierw powinieneś uzyskać przegląd swoich dysków i układu partycji:
Wpisz
diskutil list
przykładową listę:
Disk0 to twoje główne wewnętrzne urządzenie dyskowe zawierające partycję EFI (dis0s1), partycję CoreStorage (disk0s2) i Recovery HD (disk0s3). EFI bez nazwy (disk0s4) istnieje tylko wtedy, gdy wcześniej miałeś partycję Boot Camp i usunąłeś ją ręcznie.
Dysk 1 jest dyskiem logicznym utworzonym przez uruchomienie z obrazu netboot, który zawiera system odzyskiwania (OS X Base System = disk1s2) podobny do Recovery HD.
Disk2 jest także dyskiem logicznym znajdującym się w disk0s2 i zawiera stos CoreStorage.
Wpisz
gpt -r -vv show /dev/disk0
przykładową listę:
Partycja z numerem indeksu 1 jest zwykłą partycją EFI, partycja z numerem indeksu 2 jest partycją CoreStorage, a partycja z indeksem nr 3 to Recovery HD.
Partycja z numerem indeksu 4 (= No Name EFI) istnieje tylko wtedy, gdy wcześniej miała się partycję Boot Camp i usunięto ją ręcznie. Cała reszta to nieprzydzielone wolne miejsce (w przykładzie 27359703 bloki 512 B).
Wpisz
diskutil cs list
przykładową listę:
aby zmienić rozmiar woluminu CoreStorage, musisz najpierw usunąć dowolną partycję blokującą (Recovery HD nie liczy się, ponieważ zwykle zostanie przeniesiona za pomocą polecenia resizeStack).
Najpierw należy odmontować wszystkie zamontowane woluminy na dysku 0 (najpierw wolumin CoreStorage, który ma własny identyfikator dysku disk2, ale rezyduje na dysku 0, a następnie wszystkie inne zamontowane woluminy na dysku 0 - zaznacz to za pomocą
df
):następnie dodatkowe woluminy (jeśli w ogóle masz). Przykład:
Jeśli masz partycję EFI NoName, usuń ją, wprowadzając:
Ponownie zamontuj poprzednio odmontowany wolumin w odwrotnej kolejności za pomocą
Ponieważ każda partycja blokująca jest usuwana, możesz teraz zmienić rozmiar woluminu CoreStorage za pomocą
z LVUUID: UUID woluminu logicznego i rozmiaru: ostateczny rozmiar woluminu CoreStorage.
Przykłady:
rozszerzyć go do 60 GB
zmniejszyć go do 40 GB
aby powiększyć go do pełnego dostępnego rozmiaru (0g to magiczna liczba tutaj).
Odzyskiwanie HD powinno być przenoszone automatycznie - niezależnie od tego, czy zmniejszysz, czy powiększysz wolumin CS - do samego końca.
Wprowadź następujące informacje, aby uzyskać nowy schemat partycji:
i
aby utworzyć nową partycję. StartBlock to numer pierwszego bloku w nieprzydzielonym miejscu, a NumberOfBlocks to liczba wolnych bloków lub mniejsza. NumberOfBlocks musi być podzielny przez 8!
exit
i wyjdź z terminalu.źródło
diskutil man
jest tylko jedna przykładowa liniadiskutil coreStorage resizeStack LVUUID PVUUID 150g ms-dos BOOTCAMP 0
bez dalszego wyjaśnienia, co jest dziwne, ponieważ jest to własna technologia Apple, w przeciwieństwie do innych systemów plików.Poniższe
diskutil cs resizeStack
polecenie jest w dużej mierze nieudokumentowane i jako takie potencjalnie destrukcyjne. Najpierw może być prosty sposób nakreślenia i długi, trudny czas.Przed kontynuowaniem wykonaj kopię zapasową systemu Mac OS X.
Nie tak długo, jak oczekiwano:
Przydatny jest drugi komputer lub iPhone z poświadczeniami wymiany stosu, aby wejść na stronę lub czat.
Twoja partycja Mac OS X (Macintosh HD) widoczna na pulpicie jest równoważna z
Logical Volume 7BF42B7B-xxxx-xxxx-xxxx-xxxxxxxxxxxx
.defaults write com.apple.DiskUtility DUDebugMenuEnabled 1
naciśnij klawisz Enter, aby wyjśćTerminal.app
Wybierz „Recovery HD” po lewej stronie i zamontuj partycję „Recovery HD”
Sprawdź dysk
Utwórz obraz dysku „Recovery HD” i zapisz go tylko do odczytu na zewnątrz
Sprawdź obraz dysku w celu przywrócenia
Odłącz wszystkie dyski zewnętrzne
Uruchom ponownie
Internet Recovery Mode
, naciskając altcmdRlub bootowalny Mavericks lub Yosemite Thumb Drive (pełny system lub instalacja).
Terminal
od paska menu / narzędziwprowadź następujące polecenie w wierszu polecenia Terminal:
7BF42B7B-xxxx-xxxx-xxxx-xxxxxxxxxxxx.
Uruchom następujące polecenie:
Według liczby znalezionej powyżej będzie to:
Mamy nadzieję, że zwiększy to wolumen CoreStorage do pełnej 750 GB. W zależności od dysku zajmie to kilka sekund (SSD) lub minut (HDD). Po udanej zmianie rozmiaru sprawdź,
diskutil list
czy „Recovery HD” nadal istnieje.(Wcześniej powyższe polecenie było
diskutil cs resizeStack 7BF42B7B-xxxx-xxxx-xxxx-xxxxxxxxxxxx 748g
. Po kilku testach okazało się, żediskutil cs resizeStack 7BF42B7B-xxxx-xxxx-xxxx-xxxxxxxxxxxx 0g
jest to mądrzejsze polecenie. Powinno ono rozszerzyć LVG do maksymalnego rozmiaru, zwykle przenosząc „Recovery HD” na sam koniec dysku fizycznego. 0g wydaje się być liczbą magiczną w tym przypadku.)Jeśli to nie zadziała, to dłuższy i trudniejszy sposób:
diskutil list
Recovery HD
pomocądiskutil eraseVolume Free\ Space %noformat% IDENTIFIER_Recovery_HD
.W twoim przykładzie:
diskutil eraseVolume Free\ Space %noformat% disk0s3
7BF42B7B-xxxx-xxxx-xxxx-xxxxxxxxxxxx.
Uruchom następującą komendę:
diskutil cs resizeStack LVUUID partsize
Według liczby znalezionej powyżej będzie to:
Mam nadzieję, że zwiększy to twój wolumen CoreStorage do prawie pełnego 748 GB (zostawiłem trochę miejsca na przyszłość
Recovery HD
.Recovery HD
razie potrzeby zbuduj partycjęRecovery HD
jeśli to konieczne(praca w toku: testowane w Parallels, ale nie mogę ponownie uruchomić się w trybie odzyskiwania z powodu ograniczeń Parallels, prawdopodobnie partycja jest zawsze widoczna. Wygląda na to, że skrypt Apple w musings.silvertooth.us nie działa z Yosemite / CoreStorage. Badam to)
Jeśli napotkasz problemy, sprawdź ponownie w komentarzach (lub na czacie)
źródło
Dziwi mnie złożoność tego problemu (patrz odpowiedź @klanomath) i łatwość jego utworzenia.
Dlatego próbowałem się z tym bawić i znalazłem rozwiązanie.
Mój problem był następujący: miałem dysk 500 GB. Utworzyłem partycję 150 GB-Macintosh-HD na tym dysku za pomocą Narzędzia dyskowego, pozostawiając 350 GB jako „wolne miejsce”. Kiedy próbowałem sformatować wolne miejsce na drugiej partycji, nie udało mi się tego zrobić: kiedy nacisnąłem Zastosuj, zignorowałem moje polecenie i zachowałem się tak, jakbym nigdy nie nacisnął „Zastosuj” (kiedy chciałem zamknąć okno Narzędzia dyskowego, ostrzegło mnie, że są niezastosowane zmiany).
Wziąłem pierwszy wolumin (czyli sformatowany wolumin o nazwie Macintosh HD, miał rozmiar 150 GB) i poprosiłem Narzędzie dyskowe o podzielenie go na dwie partycje: 100 GB + 50 GB. Wciśnięty "Zastosuj" i magicznie Narzędzie dyskowe stworzyło dla mnie dwie partycje: 100 GB + 400 GB . W tym momencie cała przestrzeń na dysku staje się użyteczna i byłem z tego całkiem zadowolony.
Następnie po prostu usunąłem drugą partycję, naciskając „-” i „Zastosuj”. W rezultacie został on scalony z Macintosh HD i wróciłem do tego, w którym byłem przed krokiem 1.
Ostatecznie podzieliłem go na dwie partycje o rozmiarach 150 GB i 350 GB, jak chciałem na początku. Teraz wydaje się, że problem został rozwiązany.
źródło
Próbowałem wszystkiego z apple.stackexchange i innych blogów, ale żaden nie działał. Ale ta metoda działała jak urok:
źródło
Świetny artykuł! Dziękuję bardzo za wysiłek włożony w to - naprawdę mi pomógł!
Śledziłem przypadek użycia rozszerzenia pamięci głównej, usunięcia woluminu bootcamp i scalenia go.
Odkryłem, że musiałem odblokować pamięć rdzeniową, zanim mogłem wykonać polecenie
Dość proste
gdzie jest ten sam identyfikator dla podstawowej pamięci w formacie 11111111-2222-3333-4444-555555555555
Również w OS X 10.11.1 stwierdziłem, że 0g nie jest prawidłowym parametrem dla wartości zmiany rozmiaru. Musiałem podać konkretny rozmiar.
I na koniec, zdecydowanie zalecamy sprawdzenie i naprawę błędów w woluminie pamięci podstawowej przed próbą zmiany rozmiaru. Łatwiej jest zająć się osobami spoza procesu zmiany rozmiaru.
źródło
Miałem ten problem i myślę, że najprostszym rozwiązaniem jest: Kliknij znak „+” u dołu układu partycji, zmień rozmiar drugiej partycji na żądany, a następnie wybierz format „Wolne miejsce”.
Zobaczysz, że druga partycja w układzie jest zastąpiona pustą przestrzenią. Następnie wybierz „Zastosuj”.
źródło
Szukałem rozwiązania pozwalającego na nieniszczące zmniejszanie wolumenu w Sierra, aby zrobić miejsce na instalację beta High Sierra, i uznałem tę stronę za bardzo pomocną.
Korzystałem z zaszyfrowanego woluminu HFS + Journaled w MacOS Sierra.
Powyższa rada Matta jest bardzo dobra, ale znalazłem jeszcze szybszy mechanizm, w przypadku woluminów CoreStorage, które są zaszyfrowane lub nie.
Zacząć od:
Uruchom na dysku odzyskiwania po uruchomieniu komputera z CMD-R
W trybie odzyskiwania, jeśli masz wolumin zaszyfrowany CoreStorage, otwórz okno terminala i przygotuj dysk w ten sposób. W przeciwnym razie przejdź do wykorzystania DiskUtility poniżej.
Zwróć uwagę na ostatni identyfikator UUID dla zablokowanego woluminu, jeśli istnieje.
Powyższe polecenie powinno poprosić o podanie hasła, które jest normalnym hasłem użytkownika.
Jeśli NIE MASZ zaszyfrowanego woluminu CoreStorage, możesz zacząć tutaj:
Otwórz Narzędzie dyskowe z terminala lub z powrotem w menu i użyj funkcji partycji na głównym pojemniku na dyski.
Powinieneś być w stanie użyć klawisza „+”, aby opcjonalnie dodać partycję do dostępnego miejsca, dostosować rozmiar do swoich preferencji, a następnie użyć „Zastosuj”, aby zainicjować BEZ ZNISZCZĄCY, NIEKASUJĄCY skurcz istniejącej partycji. Pozostawia to twoje oryginalne dane na mniejszej partycji i pustą partycję na pozostałej przestrzeni. Pamiętaj tylko, aby ustawić nową partycję tak, aby nie nakładała się na wskazane dane krzyżowe.
Powie ci, że operacja nie usuwa istniejących danych i zapewniam cię, że w moim przypadku tak nie było.
Obowiązują tutaj zwykłe zastrzeżenia, naprawdę powinieneś zawsze wykonać kopię zapasową, jeśli możesz, przed rozpoczęciem operacji tego rodzaju.
źródło
Okazuje się,
diskutil
że wypluje pomocny tekst, jeśli zostanie o to poproszony:źródło