(U) EFI MacBook에서 NixOS 및 Mac OS X 의 이중 부팅 구성에 대한 설명을 찾을 수 없습니다 . 나는 기꺼이 실험하려고하지만 적어도 시도하려고하는 것이 작동 해야 하며 나중에 OS X를 다시 설치할 필요가 없다는 것을 알고 싶습니다 .
아무도 나에게 주요 단계를 알려주거나 절차를 설명하는 페이지에 대한 링크를 제공 할 수 있습니까?
특히 혼란 스러운 점은 NixOS 매뉴얼 의 UEFI 설치 섹션 에서 / boot에 마운트 될 EFI 시스템 파티션을 만들어야한다고 말합니다. 그러나 내 디스크에는 이미 첫 번째 파티션으로 EFI 시스템 파티션이 있으며 Mac OS와 NixOS가 모두 수정하도록 허용하면 충돌이 발생할 수 있습니다. 위키 백과에 따르면 ,
Apple–Intel 아키텍처 Macintosh 컴퓨터에서 EFI 파티션은 처음에는 비어 있으며 부팅에 사용되지 않습니다. 그러나 EFI 파티션은 펌웨어 업데이트를위한 준비 영역으로 사용됩니다. 특히 펌웨어 플래시 유틸리티 (EFI 바이너리) 및 데이터 파일 (FD – “펌웨어 장치”)을 디렉토리 EFI / APPLE / FIRMWARE에 배치 한 다음 “플래시 펌웨어”모드로 시스템을 재부팅 할 때 실행됩니다. 삭제 한 경우 시스템은 여전히 부팅되며 부팅 관리자는 여전히 사용자가 Boot Camp 파티션을 시작할지 또는 기본 Mac OS X를 시작할지 선택할 수 있도록 허용하지만 펌웨어 업데이트는 실패합니다.
이것은 NixOS에 대해 동일한 EFI 시스템 파티션을 사용하는 경우 Apple 펌웨어 업데이트를 수행하면 수정 될 수 있음을 의미합니다. 두 개의 EFI 시스템 파티션을 만들면 어떻게되는지 명확하지 않습니다. 예를 들어 기본값이 NixOS 구성 옵션 boot.loader.efi.efiSysMountPoint
(EFI 시스템 파티션이 마운트 된 위치)이 "/boot"
있지만 마운트 할 옵션을 어떻게 알 수 있습니까?
PS 부트 매니저로서 rEFInd 를 사용 하려고 했지만 다른 제안은 환영합니다.
답변
이것은 초기 답변의 업데이트 버전이며 NixOS 15.09에서 작동합니다. nix-dev 메일 링리스트의 도움으로 NixOS 14.04를 설치하는 데 사용 된 초기 버전과 비교하여 약간의 수정이 포함되어 있습니다 .
초기 설정
-
Mac OS 10.9 및 하드 드라이브가 장착 된 MacBook 5,1 (2008)은 다음과 같이 분할되어 있습니다.
a) “EFI”로 표시된 200MB EFI 시스템 파티션.
b) Mac OS (10.9)에서 사용되는 두 개의 파티션.
c) “nixos”및 “home”으로 표시된 두 개의 빈 ext4 파티션과 “swap”으로 표시된 Linux 스왑 파티션.
다음 도구를 사용했습니다.
다음은 내 파티션 테이블입니다
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
-
케이블 이더넷 인터넷 연결.
-
NIXOS_ISO
NixOS 15.09 64 비트 ISO 이미지 (Live CD 또는 Minimal)의 내용을 복사 (드래그 앤 드롭) 한 MBR 형식의 FAT로 포맷되고 레이블이 붙은 USB 드라이브 .-
USB 드라이브의 레이블이 있어야 합니다
NIXOS_ISO
(FLASH
한 번 시도했지만 작동하지 않음). -
NixOS 15.09 ISO 이미지는 Mac OS에서 마운트 할 수없는 것 같습니다. 이미지를 마운트 할 수 없으면 내용을 추출하기에 충분합니다. Keka 파일 아카이버로 ISO 이미지의 내용을 추출 할 수 있습니다 .
-
설치
-
Alt/Option재부팅 할 때 키 를 누른 상태 에서 USB EFI Boot를 선택 하여 USB 드라이브에서 부팅 합니다. “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키를 누르면서 다시 재부팅했습니다 . 부팅 메뉴는 동일하게 보이는 두 개의 “EFI Boot”항목을 보여줍니다. 그들 중 하나는 Mac OS이고 다른 하나는 NixOS였습니다. (이상한-Mac OS를 가진 것이 Mac OS 파티션의 이름을 따기 전)
호기심으로 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 / APPLE 과 그 내용 이외의 모든 것은 NixOS 설치에 의해 생성되었습니다.
Mac OS를 다시 기본으로 설정
( 이것은 14.04에 대한 나의 경험이었습니다. )
Mac OS를 다시 기본값으로 설정 Option하고 Mac OS 파티션의 이름을 딴 -key 부팅 메뉴 에서 해당 항목을 만들려면 Mac OS에서 시스템 환경 설정>> 시동 디스크 로 이동하여 Mac OS가있는 파티션을 선택하면됩니다. 이상하게도 관리자 암호를 두 번 입력해야했지만 파티션이 여전히 선택된 것으로 표시되지 않았지만 작동하지 않았습니다.
기타 지침
-
gummiboot 메뉴 를 항상 보려면 configuration.nix
boot.loader.gummiboot.timeout
에서 설정하면 됩니다. -
내 nVidia 그래픽 카드를 올바르게 구성 하기 위해 오픈 소스 nouveau 드라이버를 사용했습니다.services.xserver.videoDrivers = [ "nouveau" ];
나는 그것에 대해 불만이 없습니다. 독점을"nvidia"
대신 사용하면 텍스트 콘솔이 작동하지 않습니다.NixOS 16.09 업데이트 . NixOS 16.09가 설치된 시스템 에서는 모든 것이 제대로 작동하기 위해 configuration.nix 에 옵션
services.xserver.videoDrivers
이 필요하지 않으며 glmark2 OpenGL 벤치 마크로 수행 한 몇 가지 테스트에 따라 그래픽 성능이 눈에 띄게 저하 됩니다. 또한 선택하면 그래픽 모드가 중단되지만 Nix OS 14.04에서 관찰 한 내용과 달리 텍스트 콘솔이 남습니다. 이 모든 것이 나에게 조금 이상해 보이지만 이것이 내가 관찰 한 것이므로 configuration.nix 에서이 옵션을 제거했습니다 ."nvidia"
-
applesmc 모듈 을로드하려면 (예를 들어, 갑작스런 모션 센서의 경우) configuration.nix에 다음을 추가하도록 제안되었습니다 .
boot.kernelModules = [ "applesmc" ];
비고 및 관찰
내가 지금까지 본 MacBook에서 NixOS의 유일한 “문제점”은 NixOS를 실행하면 일반적으로 Mac OS 10.9보다 5-10 ° C 더 뜨겁다는 것입니다. 이것은 Mac의 Linux에서 일반적인 문제 일 수 있습니다 .
대체 설치 지침에 대한 링크
- MacBook Air , 17/06/2015 에 Linux를 설치하십시오 (Mac OS를 사용하여 듀얼 부팅 구성으로 MacBook Air에 NixOS 설치).
답변
몇 가지 추가 팁 :
덮개를 닫은 상태에서 백라이트가 작동하고 랩톱이 자연스럽게 다시 시작되지 않게하려면 다음과 같이 사용할 수 있습니다 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 버전에 따라 위의 명령을 조정해야 할 수도 있으므로 맹목적으로 복사하여 붙여 넣지 마십시오.