Apple

Installer Linux sur un MacBook Air

Par Maximus , le 17 juin 2019 - 11 minutes de lecture

Je ressens l’attraction des ordinateurs de bureau Linux depuis un certain temps maintenant.
La dernière fois que j'ai essayé d'utiliser Linux comme bureau quotidien
C'était il y a presque 10 ans.
C'était un très gros échec.

Mais après tant d'années d'utilisation,
et tomber amoureux de,
Linux sur le serveur,
Je voulais lui donner une autre chance.

Alors la semaine dernière, je me suis accroupi et,
au cours de quelques jours,
réussi à construire un fonctionnel
Environnement Linux sur mon ordinateur portable.
J'ai pris des notes rigoureuses
alors que je me débattais et rencontrais des percées,
Vous trouverez les résultats ci-dessous.

Les étapes de ce guide vous mèneront de
une installation OS X à démarrage simple sur un Macbook Air
sur un système à double démarrage avec OS X et NixOS.
La plupart des étapes s'appliquent à l'installation
une autre distribution Linux aussi,
en particulier ceux traitant de
chiffrement de disque (sous OS X et Linux)
et l'exigence de pilotes Broadcom.

Autre que ça,
assurez-vous que tous les bits importants sont sauvegardés dans un endroit sûr,
et profitez du chemin vers Linux ci-dessous!


Il y a beaucoup, beaucoup de distributions Linux:
distrowatch.com enregistre 278 pour le moment.
De ces 278,
vous avez probablement entendu parler de certains des plus importants:
Monnaie, Ubuntu, Arch, etc.
NixOS n'est pas l'un des principaux.

Alors pourquoi l'ai-je choisi?

J'ai déjà expérimenté avec
en utilisant le gestionnaire de paquets Nix,
sur lequel NixOS est construit,
et l'a trouvé très intéressant et puissant.

J'aime vraiment l'idée
d'avoir une poignée de déclarative
fichiers de configuration
à partir de laquelle tout mon système peut être construit.
Cela signifie que je peux le stocker dans git
et suivre l'historique de ma configuration,
juste comme avec mes fichiers de points.
Cela signifie aussi que je peux rapidement
se mettre à niveau sur une nouvelle machine.

La capacité de postuler facilement–
et plus tard
les configurations étaient également attrayantes,
depuis que je savais que cela prendrait beaucoup d'expérimentation
pour que le système fonctionne comme je le voulais.

Je vous encourage à en savoir plus sur
NixOS et Nix,
surtout si vous avez l'intention de suivre le guide ci-dessous!

Les étapes ci-dessous ont été effectuées
avec le CD d'installation minimale
pour NixOS version 14.12
disponible sur la page de téléchargement NixOS.

Si vous n’utilisez pas FileVault pour le chiffrement de disque complet,
vous pouvez ignorer cette étape en toute sécurité.

Si vous utilisez FileVault pour chiffrer votre disque,
vous ne pourrez pas utiliser Utilitaire de disque
mettre à jour les partitions de votre disque,
qui devra être fait
dans une étape ultérieure.

Ouvrez FileVault et désactivez le cryptage du disque,
en suivant les instructions à l'écran.
Après le redémarrage,
rouvrez FileVault et attendez
pour que le disque soit entièrement déchiffré avant de continuer.
Cela prendra probablement un certain temps …
pour moi, environ 30 minutes.

En fonction de votre configuration matérielle particulière,
il peut être nécessaire d’utiliser les pilotes non libres de Broadcom.
Vous devrez suivre les instructions ci-dessous
pour tout ordinateur portable Apple des dernières années.

Les étapes qui suivent sont presque certainement
pas le moyen le plus rapide ou le plus facile
préparer le pilote Broadcom pour l’installation.
Mais j'avais déjà écrit la plupart des étapes
pour un futur article de blog,
c'est donc quelque chose que j'ai compris comment faire.

Attachez votre périphérique USB,
et configurer deux partitions dans Utilitaire de disque:
NIXOS_ISO (600 Mo), et LES DONNÉES (le reste).
Chacun doit être au format «MS-DOS (FAT)».

Éjecter le lecteur,
mais gardez-le branché.

Maintenant dans le terminal,
nous allons créer une machine virtuelle VirtualBox exécutant le livecd NixOS.
Si vous êtes plus à l'aise avec l'interface graphique de VirtualBox,
à la place, vous pouvez effectuer toutes les étapes suivantes.

Vous devriez pouvoir copier et coller le script ci-dessous,
se rappeler de définir nixos_livecd
sur le chemin de l'iso téléchargé.

nixos_livecd=chemin / vers / téléchargé / iso

# créer vm
VBoxManage createvm 
  --prénom nixos-livecd 
  --stype Linux_64 
  --registre

# créer un disque virtuel
VBoxManage createhd 
  --nom de fichier "$ HOME/ VM VirtualBox / nixos-livecd / nixos-livecd.vdi " 
  --Taille 8192

# créer un contrôleur de disque virtuel / cd
VBoxManage storagectl nixos-livecd 
  --prénom IDE 
  --ajouter idée 
  --manette PIIX4 
  --portcount 2 
  --hostiocache sur 
  --bootable sur

# attacher une image disque à la VM
VBoxManage storageattach nixos-livecd 
  --storagectl IDE 
  --type disque dur 
  --Port 0 
  --dispositif 0 
  --moyen "$ HOME/ VM VirtualBox / nixos-livecd / nixos-livecd.vdi "

# joindre livecd
VBoxManage storageattach nixos-livecd 
  --storagectl IDE 
  --type lecteur DVD 
  --Port 1 
  --dispositif 0 
  --moyen $ nixos_livecd

# augmenter la mémoire et le processeur
VBoxManage modifyvm nixos-livecd --Mémoire 1024 --cus 2

# activer le port usb
VBoxManage modifyvm nixos-livecd --USB sur

# démarrer VM
VBoxManage startvm nixos-livecd --type gui

Vous devriez maintenant être à une invite de connexion dans une fenêtre de machine virtuelle,
auquel vous pouvez vous connecter avec root et sans mot de passe.

De la barre de menu,
sélectionnez "Périphériques" puis
le nom de votre périphérique USB pour le connecter.

Maintenant dans la fenêtre de la VM,
monter l'appareil:

mount / dev / disk / by-label / DATA / mnt

Maintenant, nous allons installer le pilote:

NIXPKGS_ALLOW_UNFREE=1 nix-env -iA nixos.pkgs.linuxPackages.broadcom_sta

Ensuite, nous allons exporter le pilote et toutes ses dépendances

# trouver le pilote installé dans le magasin nix
chauffeur=`trouver / nix / store -profondeur max 1 -prénom "* broadcom *" ! -prénom "* .drv"`
# interroger les dépendances du pilote
driver_deps=`nix-store --question --requisites conducteur $`
# pilote d'exportation et dépendances vers clé USB
nix-store --exportation $ driver_deps > /mnt/broadcom.closure

Finalement,
démontez le lecteur USB et arrêtez la machine virtuelle:

# peut prendre un certain temps
umount / mnt
arrêt maintenant

Ouvrez "Utilitaire de disque"
et changez le nom de la partition USB en NIXOS_ISO.

Montez le livecd téléchargé,
puis copiez son contenu sur le périphérique USB.

cp -R / Volumes / NIXOS_ISO 1/* / Volumes / NIXOS_ISO

Éjectez l'ISO et le périphérique USB.

Ouvrir l'utilitaire de disque,
cliquez sur «Macintosh HD»,
ajouter une nouvelle partition,
choisissez la taille (par exemple, la moitié),
choisissez le format comme espace libre,
appliquer.

Maintenant, redémarrez la machine,
avec le périphérique USB inséré,
et maintenez la touche Option enfoncée.

Vous devriez être présenté avec trois choix:
«Machintosh HD», «Recovery» et «EFI Boot».
Sélectionnez EFI Boot.

Passer ceci si vous n'avez pas suivi
les étapes de la section "Préparer le pilote Broadcom".

Premier,
monter le périphérique USB LES DONNÉES cloison
et importer le pilote Broadcom et les dépendances.

mount / dev / disk / by-label / DATA / mnt
nix-store --importation </mnt/broadcom.closure
umount / mnt

Maintenant, installez le pilote:

NIXPKGS_ALLOW_UNFREE=1 nix-env -iA nixos.pkgs.linuxPackages.broadcom_sta

Enfin, chargez le pilote:

modprobe b43
insmod $ (trouver .nix-profile / lib / -prénom wl.ko)

Nous allons créer deux nouvelles partitions
dans l'espace libre que nous avons créé à l'étape précédente.
Le premier sera 512MB,
et être utilisé comme notre partition de démarrage Linux.
Le second utilisera l'espace libre restant
et être utilisé pour nos partitions Linux swap et root.

$ gdisk / dev / sda
n # nouvelle partition
 # partition par défaut #
 # emplacement de départ par défaut
+ 512M # taille 512MB
type de démarrage ef00 #

n # nouvelle partition
 # partition par défaut #
 # emplacement de départ par défaut
 # taille de l'espace restant
 # type default

w # écriture de partitions
y # confirme

Notez les numéros de partition
assigné aux partitions.
Vous pouvez toujours les retrouver
en exécutant fdisk -l
et en lisant le nom d'appareil des deux dernières entrées,
dont les types devraient être «EFI Boot» et «Linux Filesystem».

Sur OS X,
FileVault est la norme en matière de chiffrement de disque.
Sous Linux, c’est LUKS.

Nous allons utiliser une stratégie appelée LVM On LUKS,
où la partition que nous avons créée ci-dessus
est une partition LUKS chiffrée,
au-dessus de quoi nous allons superposer des partitions racine et les permuter avec LVM.

root_partition=/ dev / sda$ PARTITION_NUMBER # par exemple, / dev / sda5

cryptsetup luksFormat $ root_partition
cryptsetup ouvert --type luks $ root_partition enc-pv
pvcreate / dev / mapper / enc-pv
vgcreate vg / dev / mapper / enc-pv
créer -L 10G -n échanger contre
créer -l 100% VG -n root vg
partition_botte=/ dev / sda$ PARTITION_NUMBER # par exemple, / dev / sda4

mkfs.ext2 -L démarrage $ boot_partition
mkfs.ext4 -j -L root / dev / vg / root
mkswap -L swap / dev / vg / swap

Et puis montez les:

mount / dev / vg / root / mnt
mkdir / mnt / boot
monter $ boot_partition / mnt / boot
swapon / dev / vg / swap

Vous pouvez revenir à cette étape,
en démarrant dans le livecd
et en cours d'exécution:

cryptsetup ouvert --type luks $ root_partition
échange -pour

Vous aurez besoin d'une connexion réseau
pour compléter votre installation NixOS.
Les commandes suivantes mettront à jour votre configuration sans fil
reconnaître votre réseau local sans fil.

wpa_passphrase "SSID du réseau" "phrase secrète" | grep -v "#psk" >> /etc/wpa_supplicant.conf
systemctl redémarrer wpa_supplicant

En quelques secondes,
vous devriez être connecté
et une commande comme ping -c 1 google.com
devrait réussir.

Commencez par générer une configuration de modèle:

nixos-generate-config --racine / mnt

Cela produira deux fichiers:

  • /mnt/etc/nixos/configuration.nix:
    le fichier de configuration du système
  • /mnt/etc/nixos/hardware-configuration.nix:
    la configuration matérielle du système

Si vous avez suivi les instructions Broadcom de ce guide ci-dessus,
vous devrez appliquer une modification à configuration matérielle.nix.
Trouvez la ligne qui commence par boot.extraModulePackages
et activer le module de noyau Broadcom
en supprimant les guillemets environnants:

démarrage.extraModulePackages = [[[[ config.démarrage.kernelPackages.broadcom_sta ];

Maintenant nous devrons éditer configuration.nix
contenir les exigences minimales:

# activer le support pour broadcom_sta
nixpkgs.config.allowUnfree = vrai;

# charge fbcon au début du processus de démarrage
démarrage.initrd.kernelModules = [[[[ "fbcon" ];

# enregistrez notre racine luks device
démarrage.initrd.luks.dispositifs = [[[[
  { prénom = "rootfs";
    dispositif = "/ dev / sda5";
    préLVM = vrai; }
];

En outre, vous devez vous assurer que le périphérique grub
est correct. Pour moi, c'était:

démarrage.chargeur.ver.dispositif = "/ dev / sda";

Maintenant, copiez votre configuration sans fil:

cp /etc/wpa_supplicant.conf / mnt / etc

Et puis installez!

Si tout va bien,
redémarrer pour démarrer dans votre nouveau système NixOS!

Lorsque vous avez mis à jour la table de partition avec gdisk,
la partition du disque de récupération a perdu des métadonnées,
et s'affiche sous la forme «Disque EFI» au lieu de «Récupération».
Si vous allez dans Utilitaire de disque,
et cliquez sur "Réparer" sur "Macintosh HD",
cela va résoudre ce problème.

De plus, n’oubliez pas de réactiver FileVault.
si vous l'avez éteint plus tôt!

À ce point,
vous devriez être capable de double-boot
dans un fonctionnel, si pas particulièrement utile,
Système NixOS.

Maintenant commence la partie amusante,
que je traverse encore moi-même,
d'explorer Nix, NixOS et Linux
pour construire votre nouvel environnement.
Je peux recommander des ressources
pour vous aider sur votre chemin:

  • Wiki NixOS
  • Options NixOS – recherche sur navigateur
    et documentation pour les options de configuration NixOS.
  • homme configuration.nix—Les mêmes informations que ci-dessus,
    dans votre terminal.
  • Recherche de code GitHub – inclure langue: nix dans votre recherche
    activer les configurations des autres utilisateurs.
  • Mon système actuel et mon utilisateur
    Configurations Nix.
Click to rate this post!
[Total: 0 Average: 0]

Commentaires

Laisser un commentaire

Votre commentaire sera révisé par les administrateurs si besoin.