Mac
在 MacBook(12 寸、Air 或 Pro 版本)或 iMac 上安裝 Arch Linux 與在其他電腦上安裝非常相似。然而,由於 Mac 特有的硬體配置,存在些許偏差和一些特殊的考慮,因此需要單獨的指南。更多背景信息,請參見安裝指南和 UEFI。本指南所包含的安裝指導可用於任何受 Linux 內核支持的硬體的 Apple 電腦。請查看「相關頁面」(在本頁面的右上角)了解特定型號的提示和疑難解答。
概述[編輯 | 編輯原始碼]
具體而言,在 MacBook 上安裝 Arch Linux 的步驟可分為:
- 固件更新[損壞的連結:無效的章節]:從乾淨的、備好份的和最新的 OS X 安裝開始總是有幫助的。
- 分區:調整 OS X 分區大小或刪除其分區來為 Arch Linux 創建分區。
- 配置引導加載器:確保新分區可以引導。
- 安裝 Arch Linux:真正安裝 Arch Linux 的過程。
- 安裝後配置:針對 MacBook 特定的配置。
固件更新[編輯 | 編輯原始碼]
在進行 Arch Linux 安裝之前,確保已為 Macbook 安裝好最新的固件更新是很重要的。這步需要 OS X(macOS)來操作。在 OS X(macOS)中,打開 App Store 並檢查更新。如果 Mac 找到並安裝了任意更新,請確保重啟您的電腦,然後再次檢查更新以確保所有東西都安裝好了。
保留 OS X(macOS)安裝是比較明智的,因為 Macbook 的固件更新只能用 OS X(macOS)安裝。但是,如果打算完全移除 OS X(macOS),請備份以下文件,在 Linux 中調整色彩配置時會有需要:
/Library/ColorSync/Profiles/Displays/*
接下來閱讀#分區小節。
分區[編輯 | 編輯原始碼]
存儲磁碟的分區和其他 PC 或筆記本電腦並無二致。但是,如果打算保留 OS X(macOS)來做雙系統,需要對此所有考慮。默認情況下,MacBook 的磁碟使用 GPT 分區表格式化,至少包含了 3 個分區:
- EFI:大約 200 MB 的 EFI 系統分區。
- OS X:OS X 安裝主分區。使用 HFS+ 文件系統格式化。
- Recovery:恢復分區,存在於幾乎所有搭載 OS X 10.7 及以上版本 MacBook 中。在 OS X 系統中通常被隱藏,但是可以使用分區工具看見它。
怎麼來分區取決於想安裝多少個作業系統。接下來將講解以下選項:
- 單系統:#僅安裝 Arch Linux
- 雙系統:#Arch Linux 與 OS X 或其他作業系統共存(推薦,這樣可以在需要時回到 OS X 系統)
- 三系統:#OS X、Windows XP 和 Arch Linux 三系統共存[損壞的連結:無效的章節]
僅安裝 Arch Linux[編輯 | 編輯原始碼]
這種情況最好辦。分區操作就和其他可以安裝 Arch Linux 的硬體一樣。請參考標準安裝指南了解詳情。
如果想要配置系統以獲得全盤加密,請參見 Dm-crypt/Encrypting an entire system 了解更多詳情。
不考慮單獨 /home
分區、加密或 LVM 分區方案,一個非常基本的分區示例如下所示:
(分區) (掛載點) (大小) (類型) (標籤) partition mountpoint size type label /dev/sda1 /boot 200MiB vfat EFI /dev/sda2 /swap adjust swap swap /dev/sda3 / remain ext4 root
完成後,就可以繼續閱讀#安裝小節了。
Arch Linux 與 OS X 或其他作業系統共存[編輯 | 編輯原始碼]
你需要對硬碟進行分區,同時保留用於 OS X 或 Windows 的分區。如果希望保留 OS X,最簡單的方法是使用 OS X 的分區工具進行調整,然後使用 Arch Linux 的工具完善。
步驟:
- 在 OS X 中,運行 Disk Utility.app(磁碟工具,位於
/Applications/Utilities
) - 在左側欄選擇要進行分區的硬碟(注意不是選擇分區!)。點擊分區標籤頁。
- 點擊 + 號按鈕添加新分區,並選擇要給 OS X 和新分區各留存多少空間。請記得新分區會在 Arch Linux 裡進行格式化,所以這裡可以選擇隨意設置任意分區類型。
- 如果上述步驟都順利完成,那麼就可以接著往下走了。如果沒有完成,你或許需要在 OS X 裡先修好分區問題。
- 在啟動時按住
Alt
鍵引導至 Arch 安裝媒介或 LiveUSB。之後按照#安裝小節進行操作。
在 Arch 安裝媒介中,可以重新調整已創建的分區的大小,或者刪除分區以對其他分區們進行創建(比如交換分區(swap))。
選項一:EFI[編輯 | 編輯原始碼]
- 運行 cgdisk
- 刪除在 OS X 中用 Disk Utility.app 創建的分區,並為 Arch Linux 創建必要的分區。OS X 喜歡看看分區後面有沒有 128 MiB 大小的空隙,因此在 OS X 的分區後創建第一個分區時,當 cgdisk 詢問分區的第一個扇區大小時輸入 +128M。了解更多關於 Apple 分區策略的信息可閱讀這裡。下面舉一個簡單的例子(沒有 LVM 和加密):
- 交換分區在 4GB 或以上內存的機器上可有可無。可以之後創建交換文件 。
- 最簡單的雙系統引導選項是從 OS X 內部安裝 rEFInd 到其根目錄 (
install.sh
腳本的默認設置)。接著,從安裝壓縮包中複製 driver(驅動)文件夾到新的 rEFInd 位置,並在refind.conf
配置文件中取消對 "scan_all_linux_kernels" 行和 "also_scan_dirs" 選項的注釋。之後,可以通過 Arch 的/boot
目錄下放置refind_linux.conf
文件來配置啟動選項。 - 如果想能從 Apple 引導加載器中引導 GRUB,可以創建一個小的 hfs+ 格式分區(為了方便,請稍後用 OS X 在 Disk Utility.app 中對其格式化)。按照 GRUB EFI 安裝步驟操作,並將創建的 hfs+ 分區掛載到
/efi
目錄。最後,讓分區在祝福聲中在 OS X 中完成配置。這會將 GRUB 設為默認引導選項(仍然需要在啟動時按住Alt
鍵來轉入 Mac 引導選項屏。參見 https://mjg59.dreamwidth.org/7468.html)。[失效連結 2022-09-21 ⓘ] - OS X 的 EFI 分區可與 Arch Linux 共享,因此可以不用為 Arch 專門創建一個額外的 EFI 分區。
(分區) (掛載點) (大小) (類型) (標籤) partition mountpoint size type label /dev/sda1 /efi 200MiB vfat EFI /dev/sda2 - ? hfs+ OS X /dev/sda3 - ? hfs+ Recovery /dev/sda4 - 100MiB hfs+ Boot Arch Linux from the Apple boot loader (optional) /dev/sda5 /boot 100MiB boot boot /dev/sda6 - ? swap swap (optional) /dev/sda7 / 15-20GiB ext4 root /dev/sda8 /home remaining ext4 home
完成後,就可以繼續閱讀#安裝小節了。
選項二:BIOS 兼容[編輯 | 編輯原始碼]
- 以 root 身份運行 parted。
- 刪除空分區,並按照自己的想法為其他要安裝的作業系統重新分區空間。請注意,主引導記錄(MBR)限制了主分區數量不能超過 4 個(包括 EFI 分區)。這樣的話也就兩個主分區留給 Arch 了。一種分區策略是分配一個系統(根)分區和一個家(home)分區,並使用交換文件(筆者沒有嘗試過使用邏輯分區)。另一種策略就是專門分配一個分區用於共享(參見下文)。
- 下一步,為需要的那些分區創建新的文件系統,尤其是要包含
/boot
的那個分區。如果不確定怎麼使用mkfs.ext2
(或別的什麼命令),請運行/arch/setup
來逐步解決前面的問題,直到來到 Prepare Hard Drive(準備硬碟)這一步,並使用"Manually configure block devices ..."(手動配置塊設備)選項,然後退出安裝器。這很必要,會便於 rEFIt 在下一步在主引導記錄(MBR)中設置分區類型(沒有文件系統的話,rEFIt 似乎會忽略由 parted 設置的分區類型),沒有這一步的話 GRUB 會拒絕安裝到相應的分區上。
- 此時,應當重啟電腦,讓 rEFIt 來修復磁碟上的分區表(如果不這樣做,那或許稍後你需要重新安裝 GRUB 來讓 Mac 認出 Linux 分區)。當進入到 rEFIt 菜單後,選擇 update partition table(更新分區表),然後按
y
。重啟。
- 完成了,可以繼續按照#安裝小節操作。
配置引導加載器[編輯 | 編輯原始碼]
搭配 systemd-boot 使用 Apple 原生引導加載器(建議)[編輯 | 編輯原始碼]
Apple 原生的 EFI 引導加載器會讀取位於 /EFI/BOOT/BOOTX64.EFI
的 EFI 系統分區下的 .efi
文件。幸運的是,這也是 systemd-boot 二進位文件的默認安裝位置。這意味著,使用 systemd-boot 來引導 Linux 會非常簡單。
- 首先,確保已經將 EFI 系統分區掛載到
/boot
- 正常進行#安裝過程
- 進入到 chroot 環境後,輸入以下命令安裝 systemd-boot:
# bootctl --path=/boot install
上述命令會將 systemd-boot 二進位文件複製到 /boot/EFI/BOOT/BOOTX64.EFI
,並添加 systemd-boot 自身作為由 EFI 引導管理器加載的默認 EFI 應用(默認引導條目)。
- 繼續進行 systemd-boot#配置 以正確配置引導加載器
下次重啟時,按住 Option 鍵顯示 Apple 引導管理器,後者在啟動 MacBook 時應該會顯示 Arch Linux 條目(其可能會顯示為 EFI Boot
引導選項)。
$ diskutil mount disk0s1
使用蘋果原生的引導器,結合 GRUB 使用[編輯 | 編輯原始碼]
儘管使用了UEFI,但Mac原生的EFI引導器 [1][失效連結 2022-09-21 ⓘ] 。相反,它在內部和外部驅動器的所有分區裡尋找 .efi 文件,並在滿足某些條件的情況斗它們顯示為可能的啟動選項。例如,Mac可以在根據以下檢查後檢測到現有的OS X安裝:
- 存在 HFS+ 或 APFS 格式分區
- 該分區包括分區ID
af00
- 該分區的根目錄存在
mach_kernel
文件 - 該分區
/System/Library/CoreServices
下存在boot.efi
文件
這意味著,將Arch安裝配置成能被MacBook引導器自動識別的情況是可能的。此外,它只需要一個正確格式化的 /boot
分區。這種方法的好處是,它可以與OS X很好地共存,並允許避免其他啟動加載器,如rEFInd。然而這需要手動配置。下面的步驟將說明如何使用GRUB進行這種配置。
- 首先,在配置新的Arch安裝時,創建一個單獨的
/boot
分區。Arch的ISO中提供了許多工具,例如'cgdisk。 - 確保該分區至少有250MB大小,因為它將用於存儲內核以及將來要安裝的任何自定義內核。此外,確保分區類型被設置為Apple HFS/HFS+(在fdisk/cgdisk中顯示為
Apple HFS/HFS+
,在gdisk中顯示為af00
)。 - 由於Arch安裝ISO不包括hfsprogsAUR包,我們需要在安裝環境中安裝它,然後再繼續將新分區格式化為HFS+,安裝hfsprogsAUR,然後:
- modprobe hfsplus
# mkfs.hfsplus /dev/sdXp -v "Arch Linux"
注意:更換 /dev/sdXp
與適當的設備和partition編號。
- 完成之後,繼續安裝步驟
- 當你 chroot 到新環境之後,安裝 grub包 和 efibootmgr包軟體包。
- 另外,創建一個假的
mach_kernel
文件
# touch /boot/mach_kernel # mkdir -p /boot/EFI/arch && touch /boot/EFI/arch/mach_kernel # grub-install --target=x86_64-efi --efi-directory=/boot
在這之後,不要忘記創建一個基礎的配置文件
# grub-mkconfig -o /boot/grub/grub.cfg 如你所見,boot.efi
的目錄結構並不正確,因為/System/Library/CoreServices
目錄不應該是/boot/EFI/
文件夾的子目錄。由於這個原因,我們需要將boot.efi
存根重新定位到MacBook引導加載器能夠識別的位置。 # mv /boot/EFI/arch/System/ /boot/ # rm -r /boot/EFI/ 在這之後,你需要創建下列文件
/boot/System/Library/CoreServices/SystemVersion.plist
<?xml version="1.0" encoding="UTF-8"?> <plist version="1.0"> <dict> <key>ProductBuildVersion</key> <string></string> <key>ProductName</key> <string>Linux</string> <key>ProductVersion</key> <string>Arch Linux</string> </dict> </plist>
在下次重新啟動時,在啟動 MacBook 時按住 option 鍵時顯示的引導器應將 Arch Linux 顯示為可能的啟動選項。 選擇該選項將引導 GRUB。
好了!GRUB 現在已經是 MacBook 引導器了,你可以啟動新安裝的 Arch Linux
$ wget -O /tmp/archlinux.svg https://archlinux.org/logos/archlinux-icon-crystal-64.svg $ rsvg-convert -w 128 -h 128 -o /tmp/archlogo.png /tmp/archlinux.svg # png2icns /boot/.VolumeIcon.icns /tmp/archlogo.png $ rm /tmp/archlogo.png $ rm /tmp/archlinux.svg
顯然,你可以將 Arch logo 更換為你喜歡的任何其他 logo
一種簡便的方法[編輯 | 編輯原始碼]
在安裝 Arch Linux 之前,創建一個額外的分區,格式化為 FAT32 並掛載在 /mnt/efi。在安裝完成後,chroot 進入 /mnt,並安裝引導程序
# pacman -S grub efibootmgr
--removable 參數可以解決很多型號 Mac 的主板 NVRAM 兼容性問題。
# grub-install --target=x86_64-efi --efi-directory=/efi --removable # grub-mkconfig -o /boot/grub/grub.cfg
其他方式[編輯 | 編輯原始碼]
。
從GRUB直接啟動[編輯 | 編輯原始碼]
在efi上直接啟動GRUB2而不用rEFIt是可以的。以下的操作在MacBook7,1上是可行的。建議將GRUB安裝在fat32或者HFS+分區上,ext2或者ext3應該也行。GRUB的蘋果加載命令在7,1上還暫時不能使用,但可以用過下面的補丁實現補丁地址。
GRUB裝上硬碟分區後,固件需要知道從哪兒啟動它。這步操作可以在OS X或者OS X安裝光碟。下面的命令指明了GRUB是安裝在OS X系統的/efi/grub中
sudo bless --folder /efi/grub --file /efi/grub/grub.efi
編譯[編輯 | 編輯原始碼]
有些型號可能需要將EFI_ARCH設置成i386。
bzr branch --revision -2 bzr://bzr.savannah.gnu.org/grub/trunk/grub grub cd grub ./autogen.sh patch -p1 < appleloader_macbook_7_1.patch export EFI_ARCH=x86_64 ./configure --with-platform=efi --target=${EFI_ARCH} --program-prefix="" make cd grub-core ../grub-mkimage -O ${EFI_ARCH}-efi -d . -o grub.efi -p "" part_gpt part_msdos ntfs ntfscomp hfsplus fat ext2 normal chain boot configfile linux multiboot cp grub.efi *.mod *.lst yourinstalllocation
grub.cfg示例[編輯 | 編輯原始碼]
此處應該有更好的方法來加載Windows系統。
set debug=video insmod efi_gop menuentry "Arch Linux EFI" { set root=(hd0,3) #search --set -f /boot/vmlinuz-linux-efi-physical #loadbios /boot/vbtrace_bios.bin /boot/int10.bin linux /boot/vmlinuz-linux-efi-physical root=/dev/sda3 reboot=pci resume=/dev/sda3 resume_offset=151552 initrd /boot/initramfs-linux-efi-physical.img } menuentry "MacOSX" { set root=(hd0,2) # Search the root device for Mac OS X's loader. #search --set -f /usr/standalone/i386/boot.efi # Load the loader. chainloader /usr/standalone/i386/boot.efi } menuentry "Windows 7" { appleloader HD } menuentry "Boot from CD" { appleloader CD } menuentry "Boot from USB" { appleloader USB }
安裝[編輯 | 編輯原始碼]
- 從Arch Linux安裝光碟啟動
boot: arch noapic irqpoll acpi=force
- 以root登錄
- 打開Arch Linux安裝程序
/arch/setup
- 按照官方安裝文檔中說明的過程來做,但是在下面幾個部分中請留意:
- 在準備磁碟部分,只要做設置磁碟掛在這步,注意要設對磁碟掛載點。
- 在安裝啟動器部分,編輯menu.lst文件,添加reboot=pci到kernel行的末尾,例如下面這行:
kernel /vmlinuz-linux root=/dev/sda5 ro reboot=pci
這樣你的MacBook才能從Arch Linux正常重啟 - 還是在安裝啟動器部分,將GRUB安裝至
/boot
所在的分區。警告: 別把GRUB安裝到/dev/sda這樣的地方!!!這樣做會造成系統不穩定。 - 在配置系統部分,編輯 /etc/mkinitcpio.conf,添加usbinput到HOOKS行的autodetect之後。這樣才能在Arch Linux啟動之前加載鍵盤驅動
- 安裝完成之後就可以重啟系統了。
# reboot
- 把Arch Linux安裝光碟從光碟機中退出。
安裝後配置[編輯 | 編輯原始碼]
微碼[編輯 | 編輯原始碼]
- 由於 x86_64體系的Mac使用的是Intel晶片,你還需要安裝Intel微碼 intel-ucode包
# pacman -S intel-ucode
Xorg[編輯 | 編輯原始碼]
按照Xorg來安裝Xorg。
視頻[編輯 | 編輯原始碼]
不同的MacBook有不同型號的顯卡,可以通過下面命令來查看顯卡種類
$ lspci | grep VGA
- 如果返回的字符串中包含intel,那你只需要安裝xf86-video-intel驅動,用如下命令:
# pacman -S xf86-video-intel
- 如果返回的是nVidia,可以參看NVIDIA
- 如果返回ATI或者AMD,參見ATI
NVIDIA注意[編輯 | 編輯原始碼]
對於使用NVIDIA顯卡的MacBook,背景亮度可以通過AUR中的nvidia-bl-dkmsAUR{包解決。
MacBook 6,2+-EFI[編輯 | 編輯原始碼]
截至2011年4月30日,nvidia驅動在此類EFI型號的機子下不能正常工作。可以了解一下mesa-git[失效連結 2022-09-21 ⓘ]這個包。
觸摸板[編輯 | 編輯原始碼]
觸摸板應該已經有了基本的功能。可以安裝AUR中的xf86-input-multitouch-gitAUR[損壞的連結:package not found]包來達到和Mac OS X類似的多點觸控效果,最多支持三點觸控,包含了三指水平與垂直滑動。可以從項目主頁 獲取更多消息。
xf86-input-multitouch-git除了編輯原始碼外不支持配置。一些用戶也正面臨這從palm上得到錯誤的點擊。現在有個可定製度更高的包xf86-input-mtrack-gitAUR。在其readme中能得到更多配置信息。
下面的配置在MacBook 7,1中正常工作
Option "Thumbsize" "50" Option "ScrollDistance" "100"
可能你還需要添加下面的內容
MatchDevicePath "/dev/input/event10"
在更舊的MacBook機型上,比如MacBook 2,1中,可能需要安裝xf86-input-synaptics包才能正常工作。可以查看Touchpad Synaptics獲取更多信息。
鍵盤[編輯 | 編輯原始碼]
MacBook的鍵盤默認是能正常工作的。如果想切換fn鍵,可以查看Apple Keyboard。
可以通過xbindkeys來重新設置鍵,或者通過DE配置。有另一種很好的方法,安裝pommedAUR[損壞的連結:package not found]
根據你MacBook的硬體來配置/etc/pommed.conf,可以以/etc/pommed.conf.mac或者/etc/pommed.conf.ppc為模板來建立這個配置。
NVIDIA配置[編輯 | 編輯原始碼]
如果在使用 pommed 後亮度仍然不正常, 請確認你安裝了 nvidia-bl-dkmsAUR 並添加以下命令:
find . -name "*" -exec sed -i 's/mbp_backlight/nvidia_backlight/' '{}' \;
到 pommed PKGBUILD build() 函數中,然後重新編譯。引用自 this forum post.
另一個解決方案是修改 pommed PKGBUILD build():
find . -name "*" -exec sed -i 's/nvidia_backlight/apple_backlight/' '{}' \;
如果上面兩種方法都不能解決,那麼你需要嘗試以下方法:
運行 nvidia-settings,編輯 '/etc/X11/xorg.conf' 添加以下代碼到 Device 部分:
Option "RegistryDwords" "EnableBrightnessControl=1"
保存並重啟,檢查亮度調節是否正常工作。 點擊查看更多信息 Ubuntu MacBookPro5,5
Wi-Fi[編輯 | 編輯原始碼]
不同型號的MacBook使用不同的網卡模塊。
使用以下命令查看你的Macbook使用的網卡型號:
# lspci | grep Network
- 如果你使用的是 Atheros,無需任何設定即可正常工作。
- 如果你使用的是 Broadcom,請在 Broadcom BCM4312 頁面查看教程。
- MacBook 5.0 和 6.0 使用 BCM43xx,在 Broadcom wireless 頁面查看有關 broadcom-wl 驅動的部分。 網絡接口在重啟後會互換,所以最好使用 udev 規則來定義它們(教程在 Broadcom wireless 頁面)。
- MacBook 8.1 使用 BCM4331,即不被Linux支持 (3.0 和 3.1) ,Broadcom 也沒有提供閉源驅動,直到在 Linux 3.2 中才被初步支持。如果你需要在舊的內核上使用,你需要安裝這裡的驅動compat-drivers
電源管理[編輯 | 編輯原始碼]
筆記本模式工具[編輯 | 編輯原始碼]
睡眠(內核掛起)[編輯 | 編輯原始碼]
休眠[編輯 | 編輯原始碼]
聲音配置[編輯 | 編輯原始碼]
藍牙[編輯 | 編輯原始碼]
iSight配置[編輯 | 編輯原始碼]
溫度感應[編輯 | 編輯原始碼]
色彩配置[編輯 | 編輯原始碼]
蘋果遠程控制[編輯 | 編輯原始碼]
HFS分區共享[編輯 | 編輯原始碼]
HFS+ 分區[編輯 | 編輯原始碼]
Home目錄共享[編輯 | 編輯原始碼]
在OS X中[編輯 | 編輯原始碼]
第一步:改變UID與GID[編輯 | 編輯原始碼]
第二步:改變Home目錄權限[編輯 | 編輯原始碼]
在Arch中[編輯 | 編輯原始碼]
避免GRUB啟動前EFI長時間執行[編輯 | 編輯原始碼]
關閉啟動響鈴[編輯 | 編輯原始碼]
rEFIt[編輯 | 編輯原始碼]
詳情參考refit myths.
在OS X下,從Refit主頁下載".dmg"格式的安裝包,並像其他蘋果軟體一樣安裝。
手動啟用rEFIt的方法:
- 打開終端:
- 執行cd /efi/refit; ./enable.sh命令
rEFIt可能會遇到的問題[編輯 | 編輯原始碼]
如果你在安裝Arch或者rEFIt後遇到了問題,特別是啟動時在啟動菜單中看不到啟動項,或者出現下面的GRUB提示時:
GRUB>_
請您參考下 http://mac.linux.be/content/problems-refit-and-grub-after-installation
該頁面將會教你如何啟動的Arch系統,將有問題的Arch系統掛載上去,然後chroot進入該系統,通過gptsyc重新安裝GRUB。文中提到的那些用於debian系統的命令基本上都可以在Arch上工作。不過注意不要將GRUB安裝錯地方了(wrong spot怎麼翻譯?)
你可從 https://packages.debian.org/sid/gptsync 獲取到gptsync。 或者通過下面兩個命令之一分別下載32/64位版本的:
wget http://ftp.us.debian.org/debian/pool/main/r/refit/gptsync_0.14-2_i386.deb[失效連結 2021-05-17 ⓘ] wget http://ftp.us.debian.org/debian/pool/main/r/refit/gptsync_0.14-2_amd64.deb[失效連結 2021-05-17 ⓘ]
由於是.deb包,所以你可能需要先安裝deb2targz
pacman -S deb2targz
參考資料[編輯 | 編輯原始碼]
- http://www.netsoc.tcd.ie/~theorie/interblag/2010/01/30/installing-arch-linux-on-a-mac-pro/[失效連結 2022-09-21 ⓘ]
- http://allanmcrae.com/2010/04/installing-arch-on-a-macbook-pro-5-5/
- https://web.archive.org/web/20130917192747/https://blog.abhijeetr.com/2011/08/triple-boot-archlinux-windows-7-and-mac.html
MacBook Air (4,2) 內核補丁[編輯 | 編輯原始碼]
Linus的內核樹中的當前版本(Linux 3.0.7)中,包含幾個問題。我(telmich)已經搜集了下面幾個問題的修復補丁:
- 解析度是1280x800而非正確的1440x900
- 觸摸板不能正常工作或被檢測為Synaptics
- FN + F1~F12組合鍵不工作(例如:fn啥都幹不了)
- FN+F5~F12等多媒體鍵映射錯誤
- 網絡處理的驅動/brcmsmac驅動(Hanging network applications / brcmsmac driver)
您可以從 http://git.schottelius.org/?p=foreign/linux-macbook-air;a=summary[失效連結 2020-08-04 ⓘ] 獲取到打好補丁的內核,其中包括如下分支:
- keith-jiri: Keith Packard提供的顯卡驅動補丁、Jiri Kosina提供的FN功能鍵補丁
- keith-jiri-brcmsmac: 上面提到的補丁加上網絡處理的驅動
- jiri-kbdmapping: FN功能鍵和映射關係修復補丁
- keith-jiri-kbdmapping: 第一個分支加上多媒體鍵補丁
- keith-jiri-kbdmapping-brcmsmac: 以上所有的集合 (不確定的情況下,推薦使用這個分支)
你可以很簡單的用當前ArchLinux的配置文件來編譯內核:
# 請先通過git檢出對應分支的原始碼! cd linux-macbook-air # 使用當前的配置作為基礎 zcat /proc/config.gz > .config # 編譯內核時,可能會詢問幾個未配置的選項 make -j5