在Mac上安装Linux时,我应该注意什么?


10

我有一个Macbook Pro,但我很喜欢它,尽管我仍然想念我的Linux机器,但是我需要很多东西,它们与Mac OS X并不完全兼容。我听到了很多关于在Mac OS上安装Linux的故事,有人说这是这不是问题,但其他一些人则倾向于不同的说法。

我的问题是,在Mac OS计算机上安装Linux是否合适?优缺点都有什么?

我对虚拟机非常了解,但是说实话,当它们在物理硬件上运行时,它们运行得并不好。


2
Intel Mac与PC并没有太大的不同。Linux 可能运行得很好(我不能肯定地说-从来没有Mac)。您可能遇到的绊脚石可能是UEFI / EFI。一些Linux发行版对此有麻烦。话虽如此,我自己的仅限UEFI的Lenovo笔记本电脑可以启动Debian和Ubuntu。
Alexios 2013年

是的,我运行一个Intel CPU和一个Intel图形卡。我听说过UEFI的故事,我使用的发行版不会造成任何问题;-)。

1
您看过mac.linux.be吗?
terdon

1
@Alexios的Intel Mac实际上是完全不同的。与大多数UEFI系统不同,Mac随附了非标准的EFI / UEFI组合(UEFI == EFI 2.0)。另外,您必须“祝福”文件/目录/目录/某物,以便固件将其识别为可启动。
凌晨

1
应该弄清楚:我指的是硬件。我现在正在阅读您的答案,我感觉我会学到一些新东西(不是我可能会用它)。:)
Alexios 2013年

Answers:


6

tl; dr:这是可行的,但您只需要做一点工作。如果您没有使用以太网的能力,并且正在从netinst介质进行安装,那么您基本上就很费力(尽管您确实确定可以使它工作)。

当我最初写这个答案时,我只做过一次,但是现在我又在另一台Mac上再做一次,因此我将帖子分为两部分。

MacBook Pro上的Debian Jessie

2011年初,我已经在MacBook Pro上成功安装了Debian Jessie(现称为Debian Testing)。

我要马上说:如果您使用的是MacBook Air和/或没有以太网线,那么如果您使用的是基于网络安装的发行版(例如Arch Linux或推荐的Debian映像),那么您将大为困惑。 ,或Ubuntu备用CD之一)。基本上,您将必须下载所有固件文件,以防止进行网络配置的方式引导安装介质,手动安装固件,然后尝试获取它来拾取固件。然后进行网络配置。老实说,我从来没有做到这一点,也不完全确定这是一个合理的计划。

除此之外,安装进行得很顺利。如果您打算保留OS X,则应使用OS X的内置磁盘实用程序来调整大小,因为GNU / Linux当前不支持默认Mac文件系统配置(对于带好奇的HFS +和日记功能)的写支持;仅写支持无需日记功能)。请注意,您不必引导至恢复分区即可执行此操作-HFS +可以进行在线调整大小-但您可能会看到磁盘工具或整个计算机死机。别担心,这已经发生在我身上两次,您只需要让它完成它的工作即可,但是在此过程中,您将无法使用Mac。我听说Disk Utility在创建一个空分区时会出现错误(您必须对Disk Utility进行调整才能调整大小)。因此,建议您在新分区上创建FAT文件系统。欢迎您尝试选择“无”选项,但我认为它很安全。

由于我使用了Debian Installer,所以我不太确定它是如何安装GRUB的(我打算很快用Arch替换Debian,所以我将用我的结果编辑这个答案)。它似乎已经安装到Mac的EFI分区中,但是我不确定它是否还有其他作用。大概不是,但是谁知道。安装GRUB之后,您需要重新启动进入Mac OSX。打开一个终端,安装EFI分区(用于diskutil list转储有关磁盘的信息;就像OS X的blkid或版本lsblk),然后随便使用该bless实用程序,直到进入GRUB重新启动菜单。(我不知道确切的步骤,因为我不想同时等待OS X的长重启时间,所以同时尝试了很多操作)。有关man bless此实用程序的详细信息,请参见OSX。

请注意,是的,一旦成功,您将直接进入GRUB引导菜单(假设您正在使用GRUB)。我不确定它是如何工作的内部原理,尤其是在苹果公司的“月球人” EFI实现中,但是这是您选择从中进行引导的操作系统的方法:

  1. 如果要使用GNU / Linux,则什么也不做。将显示GRUB引导菜单(同样,假设您使用的是GRUB)。

  2. 如果需要Mac OS X,请等待启动提示音,然后按住Option键,直到出现磁盘选择器菜单。应该出现两个磁盘选项:Macintosh HD和EFI Boot。选择Macintosh HD。注意:GRUB中的Mac OS X选项似乎只是挂起。

  3. 如果要Mac OS X恢复,请等待启动提示音,然后按住Option键,直到出现磁盘选择器菜单。它与引导常规OS X完全相同,只是您选择了EFI Boot而不是Macintosh HD。

Xorg中非常缺少触摸板驱动程序。Xorg将为您选择Synaptics驱动程序,这是Apple触摸板上的废话。因此,谷歌一直到找到合适的驱动程序,然后在您的驱动程序中覆盖Synaptics驱动程序xorg.conf(或者xorg.conf.d,取决于发行版),尽管我从未找到可以真正右键单击Apple触控板的驱动程序。脖子痛。我会告诉您我配置的确切细节,但是我有一个初步的Time Machine备份正在运行,因此不必费心重启到Debian。不过,我会在编辑该答案时进行编辑。

除了无线网络(需要固件,但只要有以太网电缆就很容易引导)之外,最大的事情就是如果我合上盖子,屏幕将无法唤醒。键盘背光灯将打开,但屏幕不会打开。初步谷歌搜索说,这是一个内核错误,但是我没有研究确切的修复程序。我已经开始尝试pm-*实用程序系列(例如pm-suspend),但没有做任何深入的事情。解决此问题的方法是切换到虚拟控制台,将Xorg“散焦”。这样,当您合上主机盖时,计算机根本不会尝试挂起。请注意,这意味着背面的Apple徽标将继续点亮,尽管调低屏幕亮度也会影响Apple徽标。但是请注意,只有在Xorg被“聚焦”时才能使用功能键。整洁地带我进入下一个主题...

键盘基本上可以正常工作。Option的工作方式与alt预期的完全一样。命令是超键。使我绊倒​​的唯一一件事-尽管时间不长-不需要按下Fn的功能键是硬件,而不是软件。因此,例如在OS X中按提高亮度的功能与OS X相同-当您按F2时,它将调高亮度,而当您按Fn + F2时,它将发送F2键。

我要说的最后一件事是,我从来没有3D加速工作。GLX Gears演示与(我认为)台面一起工作,但是我被引导至GNOME Fallback,因此显然,真正的加速是行不通的。我发现的解决方案使我在启动时就迷住了(请参阅我博客中有关Debian安装的最后一篇文章),因此,我认为实际上没有解决方案,至少要等到linux-firmware-nonfree软件包被拆分为止。

如果您对所有棘手的细节都感兴趣,则应该阅读我在此问题上的博客文章(只需单击下一步,直到找到名为“我已解决所有问题”)。他们可能还提到了一些我不记得的细节(例如该触摸板驱动程序的名称!)。

iMac上的Arch Linux(2013年9月图像)

我从OS X分配了用于Arch安装的空间(请参阅Debian部分的开头以了解其背后的原因),分别为创建约100 GB的分区/home和为约100GB的分区/

CD可以正常启动-只需按住选项,然后选择标有“ EFI Boot”的CD图标即可。键盘工作正常,直到您在“ boot Arch”选项上按回车键为止,这时Arch可能接管了EFI,因此接管了EFI蓝牙键盘驱动程序。因此,您需要一个USB键盘才能真正完成安装。

引导后,我要做的第一件事就是使用来连接到Internet wifi-menu,这令人惊讶地顺利进行了。接下来cgdisk,由于我改变了主意,我弄乱了分配给Arch使用的分区的大小,因为我改变了主意-这显然可以,并且我能够毫无问题地重新启动进入OSX。我遇到的一个问题是我使分区变得太小,想要切入OS X分区以扩展它。但是,当我使用Disk Utility缩小OS X分区时,它说“正在准备分区...”,然后再也没有得到进一步的解决。尝试从恢复分区(已安装和未安装Macintosh HD)中执行此操作:结果相同。因此,故事的寓意是:安装之前,请确保分区布局正确!

从那时起,安装就没有问题了。当我到引导加载器安装,我安装了grubefibootmgr并且dosfstools从拱包,所推荐的维基。我另外安装了os-prober,尽管根据软件包说明,这仅适用于BIOS系统。我在上面安装了EFI系统分区/boot/efi(在Wiki之后,我将在$esp下面进行介绍)。请注意,(至少在我的计算机上)EFI系统分区是第一个分区,使其成为/dev/sda1GNU / Linux和/dev/disk0s1OS X / Darwin下的分区。我使用以下命令安装了GRUB:

grub-install --target=x86_64-efi --efi-directory=$esp --bootloader-id=grub --recheck --debug

如果您不厌其烦地看,这几乎是Wiki推荐的易于安装的逐字记录(不是将所有内容都保留在EFI分区中,所以有些东西进来了/boot)。最后,它说“此系统不支持EFI变量”,但它似乎仍已安装好(因为ls /boot/efi/EFI除了“ APPLE”外还返回“ grub”)。

接下来,我生成了grub.cfg

grub-mkconfig -o /boot/grub/grub.cfg

我会注意到它似乎已经在正确的分区上找到了OS X,尽管根据我在Debian中的经验,我敢打赌该菜单项将无法工作。我们拭目以待。接下来,我重新启动进入OS X-尽管EFI固件似乎要花更长的时间才能到达Apple徽标,而不是灰屏,但似乎没有损坏任何东西(可能只是我,不确定)。

在准备使用时,bless我在OS X中安装了EFI分区:

sudo mkdir /mnt
sudo mount -t msdos /dev/disk0s1 /mnt
cd /mnt

接下来,我按照命令的确切顺序进行操作,在每个命令之间重新引导以检查其是否有效(并在每次重新引导时重新安装):

sudo bless --folder /mnt/ --bootefi EFI/grub/grubx64.efi

与我从Debian所做的尝试相比,这产生了不同的结果,而且可以说是更好的结果。这次发生的事情是,现在您按住Option键时,可以将“ EFI Boot”作为一个选项提供,同时还有“ Macintosh HD”和“ Recovery- $ YOUR_INSTALLED_OS_X_VERSION”。

GRUB成功加载了Arch,但是我掉到了initrd shell中。这是因为我没有正确配置它,以至于从未创建LUKS设备,这并不是由于Mac特定的问题。

据我所知,但是稍后我将进行更多编辑。


2
在这里要注意的事情很少,对于15岁的孩子,我必须说服自己遵循的道路;-)也让我知道Arch,这是我的“母亲”发行版,是我唯一使用的,也是唯一我使用的想要在我的Mac上安装它。干杯!

哦,嘿,没想到几天前Stack Exchange改变了我的年龄(谢谢!)。无论如何,我忘了为3D事情提及的一件事就是MacBook似乎有两块显卡:一张集成显卡,一张专用显卡。我认为这就是导致驱动程序问题的原因。另外,我没有尝试专有驱动程序。
奋斗

1
@BenMezger我将很快在iMac上安装Arch,因此如果您感兴趣,我会在继续的同时更新此文章。我最终还将在MacBook上从Debian迁移到Arch,但现在不行。
奋斗

斯特劳:是的,请!

1

我已经在2010 MBP上为Mac安装了Ubuntu 12.04 64bit。这个对我有用。安装没有问题,等等。但是……看来-我强调这些只是印象而已,没有测试的支持……电源管理不太正确,总体用户体验不如OS出色X.这很奇怪,因为我在HP笔记本电脑上使用Ubuntu 12.04没问题。

像你一样,我试图获得答案,但没有找到太多。考虑到Linus Torvalds使用MacBook Air,“应该”解决了这些小问题。再说一遍,这可能是由于我使用的是较旧的MBP。

最终,我拉了HD并安装了带有OS X的SSD。


我猜就是这样,您购买了Macbook,仍然使用操作系统。这还不错,也许我只需要习惯它即可。谢谢。
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.