Note: This answer assumes your drive is not hybrid partitioned. In other words, I assume your drive is using a GUID partitioning scheme and the Master Boot Record (MBR) table is fully protected. Also, I assume the sector size is 512 bytes.
Utilizzerò un file immagine di ricambio di circa 500 GB per illustrare il problema e la mia soluzione. Di seguito viene mostrato l'output da diskutil disk1
e diskutil disk2
per il mio disco. Qui, non c'è quasi nessuno spazio libero.
/dev/disk1 (disk image):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme +500.0 GB disk1
1: EFI EFI 209.7 MB disk1s1
2: Apple_CoreStorage Macbook HD 499.1 GB disk1s2
3: Apple_Boot Recovery HD 650.0 MB disk1s4
/dev/disk2 (disk image):
#: TYPE NAME SIZE IDENTIFIER
0: Apple_HFS Macbook HD +498.8 GB disk2
Logical Volume on disk1s2
06A8BD94-5D42-4A7A-A8DF-2FAB7A268153
Unlocked Encrypted
Normalmente, una partizione Apple_CoreStorage
è seguita da una partizione Apple_Boot
. Il tuo disco manca questa partizione Apple_Boot
.
Note: Other Core Storage configurations will use a different name and size for this Apple_Boot
partition. For example, the partition may appear with the name Boot OS X
and a size of 134.2 MB
.
Di seguito viene visualizzato lo stesso comando, ma questa volta il mio disco ha circa 50 GB di spazio libero. Inoltre manca la partizione Apple_Boot
.
/dev/disk1 (disk image):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme +500.0 GB disk1
1: EFI EFI 209.7 MB disk1s1
2: Apple_CoreStorage Macbook HD 449.9 GB disk1s2
3: Apple_Boot Recovery HD 650.0 MB disk1s3
/dev/disk2 (disk image):
#: TYPE NAME SIZE IDENTIFIER
0: Apple_HFS Macbook HD +449.5 GB disk2
Logical Volume on disk1s2
06A8BD94-5D42-4A7A-A8DF-2FAB7A268153
Unlocked Encrypted
Di seguito sono riportate le istruzioni per ricreare la partizione Apple_Boot
e recuperare lo spazio disponibile. Se necessario, apportare le regolazioni appropriate a questi comandi. Queste istruzioni non ricreano alcun file importante che è stato memorizzato in questa partizione. Nel tuo caso, potrebbero non esserci stati file importanti. Se necessario, aggiungi un sudo
a uno qualsiasi di questi comandi.
-
Utilizza lo strumento di terze parti gdisk
per creare la partizione Apple_Boot
mancante. Inserisci il testo indicato di seguito per richiamare questo comando interattivo.
gdisk /dev/disk1
Di seguito sono riportati i comandi interattivi di gdisk. La riga vuota indica che l'impostazione predefinita è stata selezionata. Dovresti aspettarti che il tuo valore predefinito sia diverso dal mio.
n
3
+1269536
AB00
w
y
Di seguito è riportato l'output di quando ho utilizzato il comando gdisk /dev/disk1
.
GPT fdisk (gdisk) version 1.0.3
Warning: Devices opened with shared lock will not have their
partition table automatically reloaded!
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Command (? for help): n
Partition number (3-128, default 3): 3
First sector (34-976562506, default = 879053752) or {+-}size{KMGTP}:
Last sector (879053752-976562506, default = 976562506) or {+-}size{KMGTP}: +1269536
Current type is 'Apple HFS/HFS+'
Hex code or GUID (L to show codes, Enter = AF00): AB00
Changed type of partition to 'Recovery HD'
Command (? for help): w
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
Do you want to proceed? (Y/N): y
OK; writing new GUID partition table (GPT) to /dev/disk1.
Warning: Devices opened with shared lock will not have their
partition table automatically reloaded!
Warning: The kernel may continue to use old or deleted partitions.
You should reboot or remove the drive.
The operation has completed successfully.
-
Utilizza il comando seguente per formattare la partizione appena creata.
newfs_hfs -J -v "Recovery HD" /dev/disk1s3
-
Utilizza il comando seguente per recuperare lo spazio libero. Nota: ho già sostituito il tuo UUID del volume logico.
diskutil cs resizestack 389D8763-4C1B-4D77-A734-C507DBD567C1 0
Nota finale:
È possibile utilizzare il comando gpt
al posto del comando di terze parti gdisk
. Dovresti inserire il comando gpt
mostrato di seguito per scaricare parzialmente il contenuto della tabella delle partizioni GUID (GPT).
gpt -r show /dev/disk1
Per la mia unità, l'output è mostrato sotto.
start size index contents
0 1 PMBR
1 1 Pri GPT header
2 32 Pri GPT table
34 6
40 409600 1 GPT part - C12A7328-F81F-11D2-BA4B-00A0C93EC93B
409640 878644112 2 GPT part - 53746F72-6167-11AA-AA11-00306543ECAC
879053752 97508755
976562507 32 Sec GPT table
976562539 1 Sec GPT header
Da questo output, determinare l'inizio dello spazio libero dopo la partizione Apple_CoreStorage
( 53746F72-6167-11AA-AA11-00306543ECAC
). Per il mio disco questo sarebbe il settore 879053752
.
Note: In the gpt
command given below, replace my value of 879053752
with your own value.
Il comando gpt
mostrato sotto aggiunge una nuova partizione Apple_Boot
all'unità. Imposta l'opzione -b
all'inizio del valore dello spazio libero. Questo comando deve essere immediatamente preceduto dal comando diskutil
mostrato sotto.
Note: If necessary, the -b
option needs rounded up to a value evenly divisible by 8.
diskutil umountdisk disk1
gpt add -i 3 -b 879053752 -s 1269536 -t 426F6F74-0000-11AA-AA11-00306543ECAC /dev/disk1
Successivamente, vai al passaggio 2.