デュアルブートの設定に関する説明は見つかりませんでしたニクスOS(U)EFI MacBookでMac OS Xを試してみるつもりですが、少なくとも私が試すのは以下のことだと知っておきたいと思っています。想定動作し、その後 OS X を再インストールする必要がなくなる可能性があります。
主な手順を教えていただけますか、または手順を説明しているページへのリンクを教えていただけますか?
私が特に困惑しているのは、UEFI インストール セクションNixOS のマニュアルには、/boot にマウントされる EFI システム パーティションを作成する必要があると書かれていますが、ディスクにはすでに最初のパーティションとして EFI システム パーティションがあり、Mac OS と NixOS の両方で変更できるようにすると競合が発生するのではないかと心配しています。 Wikipediaによると、
Apple-Intel アーキテクチャの Macintosh コンピュータでは、EFI パーティションは最初は空で、起動には使用されません。ただし、EFI パーティションはファームウェア更新のステージング領域として使用されます。具体的には、ファームウェア フラッシュ ユーティリティ (EFI バイナリ) とデータ ファイル (FD - 「ファームウェア デバイス」) を EFI/APPLE/FIRMWARE ディレクトリに配置し、システムを「フラッシュ ファームウェア」モードで再起動するときに実行されます。削除しても、システムは起動し、ブート マネージャーでは、Boot Camp パーティションを起動するか、デフォルトの Mac OS X を起動するかをユーザーが選択できますが、ファームウェア更新は失敗します。
これは、NixOS に同じ EFI システム パーティションを使用すると、Apple ファームウェアのアップデートを行うと変更される可能性があることを意味します。また、2 つの EFI システム パーティションを作成した場合に何が起こるかは不明です。たとえば、boot.loader.efi.efiSysMountPoint
デフォルト値を持つ NixOS 構成オプション (EFI システム パーティションがマウントされる場所)があります"/boot"
が、どちらをマウントするかをどのようにして判断するのでしょうか。
PS ブートマネージャとして使う予定だった再検索ただし、代替案の提案があれば歓迎します。
答え1
これは私の最初の回答の更新版であり、NixOS 15.09で動作するはずです。これは、私がNixOS 14.04をインストールするために使用した最初のバージョンと比較して、いくつかの助けを借りてマイナーな変更が含まれています。nix-devメーリングリスト。
初期設定
MacBook 5,1 (2008)、Mac OS 10.9、ハードドライブのパーティションが次のように設定されています。
a) 「EFI」というラベルの付いた 200 MB の EFI システム パーティション。
b) Mac OS (10.9) で使用される 2 つのパーティション。
c) 「nixos」と「home」というラベルの付いた 2 つの空の ext4 パーティションと、「swap」というラベルの付いた Linux Swap パーティション。
使用したツールは以下のとおりです。
以下は、私が印刷したパーティション テーブルです
gdisk
。Number Start (sector) End (sector) Size Code Name 1 40 409639 200.0 MiB EF00 EFI System Partition 2 409640 104603575 49.7 GiB AF00 Untitled 3 104865720 261418767 74.7 GiB AF00 Untitled 4 261680912 287071535 12.1 GiB 8302 home 5 287071536 307888927 9.9 GiB 8300 nixos 7 307888928 312581774 2.2 GiB 8200 swap
ケーブルイーサネットインターネット接続。
FAT/MBR としてフォーマットされ
NIXOS_ISO
、 というラベルが付いた USB ドライブ。NixOS 15.09 64 ビット ISO イメージ (Live CD または Minimal) のコンテンツのコピー (ドラッグ アンド ドロップ) が含まれています。USBドライブのラベルしなければならない
NIXOS_ISO
(一度試してみましたが、FLASH
うまくいきませんでした)。NixOS 15.09 ISOイメージはMac OSではマウントできないようです。イメージがマウントできない場合は、その内容を抽出するだけで十分です。私はISOイメージの内容を抽出することができました。ケカファイルアーカイバ。
インストール
再起動時にキーを押したままにしてUSBドライブから起動しAlt/Option、USBを選択します。EFIブート. 「root」としてログインします(パスワードなし)。インターネット接続が機能していることを確認します。インストールにはインターネット接続が必要です。
実行する
swapon /dev/disk/by-label/swap mount /dev/disk/by-label/nixos /mnt mkdir /mnt/boot mkdir /mnt/home mount /dev/disk/by-label/EFI /mnt/boot mount /dev/disk/by-label/home /mnt/home nixos-generate-config --root /mnt
追加
nixpkgs.config.allowUnfree = true;
生成された/mnt/etc/nixos/configuration.nixファイル。
実行する
nixos-install
リブート:
reboot
起動中
(これは 14.04 での私の経験です。)
再起動後、コンピュータは NixOS で起動しました。もう一度再起動し、今度はキーを押しましたAlt/Option。ブート メニューには、見た目が同じ 2 つの「EFI ブート」項目が表示されました。そのうちの 1 つは Mac OS で、もう 1 つは NixOS であることがわかりました。(奇妙なことに、Mac OS の項目が Mac OS パーティションにちなんで命名される前は) OK。
好奇心から、EFI システム パーティションをマウントしてその内容を調べました。
§ tree /Volumes/EFI/
.
├── EFI
│ ├── APPLE
│ │ ├── EXTENSIONS
│ │ │ └── Firmware.scap
│ │ └── FIRMWARE
│ │ └── MB51_007D_03B_LOCKED.scap
│ ├── Boot
│ │ └── BOOTX64.EFI
│ ├── gummiboot
│ │ └── gummibootx64.efi
│ └── nixos
│ ├── 5683z247xmsrh4lyr2hgpxwlb9gg5wyl-linux-3.12.20-bzImage.efi
│ └── mmjxbf6vwp5mwb384yfd6c8vkhd19gx8-initrd-initrd.efi
└── loader
├── entries
│ └── nixos-generation-1.conf
└── loader.conf
すべて揃っているが/EFI/アップルその内容は NixOS のインストールによって作成されています。
Mac OSを再びデフォルトにする
(これは 14.04 での私の経験です。)
Mac OSを再びデフォルトにし、-keyブートメニューの対応する項目をOptionMac OSパーティションにちなんで名付けるには、システム環境設定... > 起動ディスクMac OS でパーティションを選択します。不思議なことに、管理者パスワードを 2 回入力する必要があり、パーティションが選択された状態で表示されませんでしたが、それ以外は機能しました。
その他の指示
いつも見るためにガミブート
boot.loader.gummiboot.timeout
メニューを設定するだけで十分です構成.nix。適切に設定するにはNVIDIAグラフィックカードはオープンソースのものを使いましたヌーボー運転者:services.xserver.videoDrivers = [ "nouveau" ];
これについては不満はありません。"nvidia"
代わりに独自のものを使用すると、テキスト コンソールは動作しません。NixOS 16.09 のアップデート私のマシンのNixOS 16.09では、このオプション
services.xserver.videoDrivers
は不要でした。構成.nixすべてがうまく機能するためには、実際に私が行ったいくつかのテストによると、グラフィックパフォーマンスが著しく低下することがわかりました。グマーク2OpenGLベンチマーク。また、"nvidia"
Nix OS 14.04で観察したものとは逆に、選択するとグラフィカルモードが解除され、テキストコンソールが残ることも観察しました。これは私にとって少し奇妙に思えますが、これが私が観察したものなので、このオプションを私の構成.nix。ロードするにはアップルモジュール(例えば、突然の動きのセンサー用)に次のものを追加することを提案されました構成.nix:
boot.kernelModules = [ "applesmc" ];
所見と考察
これまで私が観察したMacBookのNixOSの唯一の「問題」は、NixOSを実行すると、私のラップトップがMac OS 10.9よりも5〜10℃熱くなることです。これは、Mac 上の Linux。
代替インストール手順へのリンク
- MacBook AirにLinuxをインストールする、2015 年 6 月 17 日 (Mac OS とのデュアルブート構成で MacBook Air に NixOS をインストール)。
答え2
追加のヒント:
バックライトを作動させて、ノートパソコンの蓋が閉じているときにノートパソコンが勝手に再起動するのを防ぎたい場合は、次のようなコードを使用しますconfiguration.nix
。
# Enable the backlight control on rMBP
# Disable USB-based wakeup
# see: https://wiki.archlinux.org/index.php/MacBookPro11,x
powerManagement.powerUpCommands = ''
if [[ "$(cat /sys/class/dmi/id/product_name)" == "MacBookPro11,3" ]]; then
${pkgs.pciutils}/bin/setpci -v -H1 -s 00:01.00 BRIDGE_CONTROL=0
if cat /proc/acpi/wakeup | grep XHC1 | grep -q enabled; then
echo XHC1 > /proc/acpi/wakeup
fi
fi
'';
MacBook のバージョンによっては、上記のコマンドを微調整する必要がある場合がありますので、盲目的にコピーアンドペーストしないでください。
答え3
リポジトリのマスター ブランチには、若干更新された手順がいくつかあります。インストール-uefi.xml