删除Ubuntu并增长Mac分区


5

我是整个Mac世界的新手,当我拿到MacBook Air 2015时我做的第一件事就是我安装了Ubuntu,但现在已经后悔了,想要删除它并让我的空间重新进入Mac分区。

我曾尝试在OS X中使用“磁盘工具”进行操作,但它只是失败并且没有提供任何真正的错误代码。所以我不知道怎么办呢?

这是我的分区的样子:

enter image description here


更新

从恢复模式:

enter image description here

-bash-3.2# sw_vers
ProductName:    Mac OS X
ProductVersion: 10.10.5
BuildVersion:   14F27

我遇到了一些大问题。我试图删除'我认为'在osx上的磁盘工具中的Linux Swap分区并且没有成功(在我问这个问题之前),现在当我启动回到osx时,我收到了这个错误: support.apple.com/en-us/HT204156 “禁止符号”所以我想我会放弃所有并完全重新安装osx
Jeggy

Answers:


7

启动到Internet恢复模式您必须删除所有非OS X分区,修改macOS分区的分区类型(但保持其大小!)然后调整主卷的大小。您无法启动Mac的原因是主分区(i = 2 / sda2)的伪分区类型(FFFF-FFF ....)。此外,Recovery HD分区(i = 3 / sda3)的类型错误。

制备:

  • 按下重新启动到Internet恢复模式 ALT CMD [R 在启动时。

    先决条件是安装了最新的固件更新,以太网或WLAN(WPA / WPA2)和激活DHCP的路由器。
    在50 Mbps线路上,需要大约4分钟(呈现一个小的动画地球仪)才能启动到恢复网络启动图像,该图像通常是从Apple / Akamai服务器加载的。

    我推荐以太网,因为它更可靠。如果您受限于WIFI并且启动过程失败,只需重新启动Mac,直到您成功启动。

    或者,您可以从可引导的安装程序拇指驱动器(最好是Yosemite或El Capitan)或包含完整系统(最好是Yosemite或El Capitan)的拇指驱动器开始。如果您启动到完整系统并以管理员身份登录,则必须预先添加 sudo 执行一些命令 gpt ... 要么 newfs_hfs ...

删除Linux Swap和主分区

  • 在菜单栏Utilities-> Terminal中打开
  • 输入 diskutil listgpt -r show /dev/disk0 得到一个概述
  • 删除Linux分区:

    diskutil umountDisk /dev/disk0
    gpt remove -i 4 /dev/disk0
    diskutil umountDisk /dev/disk0
    gpt remove -i 5 /dev/disk0 
    

修改OS X分区(LVG)

您的主分区可能具有类型53746F72-6167-11AA-AA11-00306543ECAC(CoreStorage)或48465300-0000-11AA-AA11-00306543ECAC(经典OS X分区)。通常SSD和filevaulted分区同时使用CoreStorage。

  • 首先尝试CoreStorage类型

    gpt remove -i 3 /dev/disk0 
    gpt remove -i 2 /dev/disk0
    gpt add -b 409640 -i 2 -s 118430560 -t 53746F72-6167-11AA-AA11-00306543ECAC /dev/disk0
    diskutil cs list
    

    检查您是否有CoreStorage LVG。如果没有,继续 修改OS X分区(标准) 。如果您找到了LVG,请继续:

    diskutil list
    diskutil umountDisk /dev/diskX #check for a disk identifier of a volume with the size ~60 GB and replace X with the number of that disk (it may be 2, 3 or ~13)
    diskutil umountDisk /dev/disk0
    gpt add -b 118840200 -i 3 -s 1269536 -t 426F6F74-0000-11AA-AA11-00306543ECAC /dev/disk0
    diskutil verifyDisk /dev/disk0
    diskutil verifyVolume /dev/disk0s2
    

调整OS X分区的大小

  • 输入 diskutil listgpt -r show /dev/disk0 再次。如果您有CoreStorage LVG,您的分区列表和分区映射现在应如下所示:

    diskutil list
    /dev/disk0
       #:                       TYPE NAME                    SIZE       IDENTIFIER
       0:      GUID_partition_scheme                        *121.3 GB   disk0
       1:                        EFI EFI                     209.7 MB   disk0s1
       2:          Apple_CoreStorage                          60.6 GB   disk0s2
       3:                 Apple_Boot Boot OS X               134.2 MB   disk0s3
    /dev/disk1 Base OS X System
    ....
    /dev/disk2 #this may also have another disk identifier like disk13 or disk3
     #:                       TYPE NAME                      SIZE       IDENTIFIER
     0:                  Apple_HFS Macintosh HD               60.0 GB    disk2
    /dev/disk3-disk12 or 13 a lot of small sized disks (512 kb - 8 MB) which are part of the Recovery System
    
    gpt -r show disk0
         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   118430560      2  GPT part - 53746F72-6167-11AA-AA11-00306543ECAC
     118840200     1269536      3  GPT part - 426F6F74-0000-11AA-AA11-00306543ECAC
     120109736   116868407         
     236978143          32         Sec GPT table
     236978175           1         Sec GPT header
    
  • 现在进入 diskutil cs list

    您应该获得一个包含CoreStorage LVG各种项目的4个UUID的列表。

  • 将整个堆栈的大小调整为完整大小:

    diskutil cs resizeStack lvUUID 0g
    

    with lvUUID:逻辑卷的UUID。它是列出的最后一个,看起来与此类似:9A7B21AA-F9FE-4E65-8C7E-ED2A73744C15。 0g是一个神奇的尺寸,它将LV和优质LVG扩展到最大可用尺寸

    在你的情况下,它是从10F16开始...所以你的最终命令是

    diskutil cs resizeStack 10F16........ 0g
    

    如果主卷已加密,则必须先将其解锁,然后在主卷上输入用户密码或其他正确的密码。

    diskutil cs unlockVolume lvUUID
    

    在你的情况下,它是从10F16开始...所以你的最终命令是

    diskutil cs unlockVolume 10F16........
    

    通过输入成功扩展逻辑卷退出终端后 exit CMD Q 并重新启动到您的主卷。

修改OS X分区(标准)

  • 删除CoreStorage分区并将其重新添加为标准分区:

    diskutil umountDisk /dev/disk0
    gpt remove -i 2 /dev/disk0
    gpt add -b 409640 -i 2 -s 118430560 -t 48465300-0000-11AA-AA11-00306543ECAC /dev/disk0
    diskutil umountDisk /dev/disk0
    gpt add -b 118840200 -i 3 -s 1269536 -t 426F6F74-0000-11AA-AA11-00306543ECAC /dev/disk0
    diskutil verifyDisk /dev/disk0
    diskutil verifyVolume /dev/disk0s2
    
  • 使用常用工具(Disk Utility或diskutil)展开主分区disk0s2

谢谢,它的工作原理!只是一个问题。当我重新启动时,我进入了gnu grub,我刚才写道 exit 它成功启动到osx,我把所有的空间都拿回来了! :D但似乎总是在启动它时首先要grub然后我必须写 exit 每次开机
Jeggy

@Jeggy你可能在某处安装了grub(EFI或MBR)嗯。这可能是第二个问题。
klanomath

@Jeggy你还记得你在哪里安装了grub吗?一些互联网资源说 fdisk -u /dev/disk0 在Internet恢复模式下如果grub安装到MBR - 但是先用Time Machine备份你的机器;-)
klanomath

-2

只是更新osx的版本,你可以增加分区大小....为此删除ubuntu分区(然后无法与现有的macintosh分区合并),然后更新osx的版本,然后合并..这次它会合并,


这样它对我有用。当我在删除ubuntu后尝试扩展mac分区时,它提示错误,以前ubuntu使用的空间被保留为免费且无法使用。 ...它的原因与分区中的核心存储逻辑卷组有关...随着mac os x的升级而消退...然后系统可以扩展mac分区的大小与现有未使用的以前占用的ubuntu可用空间..
Manas Bhatt
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.