NixOS

NixOS installeren

NixOS installeren
In de Linux-wereld zijn er veel distributies, en deze distributies verschillen meestal in termen van pakketbeheerder, omgeving en pakketten. Eenmaal geïnstalleerd, kunt u bestanden op specifieke plaatsen in de bestandsstructuur vinden. Directory's zoals /usr, /usr/local en /bin worden gebruikt om verschillende bestanden op te slaan, en deze standaard maakt het voor een ervaren Linux-gebruiker mogelijk om te weten waar bestanden zich bevinden en om scripts uit te voeren die deze bestanden over veel distributies gebruiken. Kijk voor meer informatie op het LSB-project.

Hoewel je applicaties onder NixOS kunt uitvoeren omdat ze de bovenstaande standaard volgen, zijn de bestanden niet waar ze zouden zijn in een ander systeem. De ontwikkelaars van NixOS en GNU Guix hebben een uitgesproken mening over dit systeem en ze hebben slimme manieren bedacht om eraan te voldoen.

Een ander systeem

Uw softwareopslagsysteem beïnvloedt de functionaliteit op een manier die veel dieper gaat dan het op het eerste gezicht lijkt. Om de software de bestanden te laten vinden die het nodig heeft, gebruikt NixOS symlinks. Elke toepassing heeft zijn eigen map die het uitvoerbare bestand bevat en koppelingen naar de bibliotheken die het uitvoeren.

Met dit organisatiesysteem kunt u tegelijkertijd verschillende bestanden en versies installeren. Standaard moeten alle pakketten en hun afhankelijkheden worden gecompileerd tijdens de installatie. Het vereist echter veel tijd en verwerkingskracht om dit bij elke installatie te doen, er zijn caches.

Downloaden

Met NixOS is er altijd meer dan één manier om iets te doen. Net als bij andere distributies heb je met NixOS een ISO op een USB-stick. Je hebt keuzes over hoe je NixOS op je distributie wilt installeren. Voordat we dit onderwerp in meer detail bespreken, is het echter belangrijk om te begrijpen dat er twee enigszins verwarrende delen van dit proces zijn:.

Ten eerste is Nix anders dan NixOS, en je moet het verschil begrijpen tussen Nix, de pakketbeheerder en NixOS, die je systeem configureert. U kunt de Nix-pakketbeheerder downloaden en gebruiken op uw huidige systeem. Hiermee kunt u vele versies van applicaties op uw systeem houden zonder dat ze met elkaar interfereren.

Ten tweede, met NixOS, hoewel je het partitieschema niet niet kunt declareren, kan al het andere in één bestand worden achtergelaten. De meeste gebruikers laten het automatisch aangemaakte hardwareconfiguratiebestand met rust. Wanneer u voor het eerst begint, kunt u uw pakketten gedeclareerd in het bestand houden, maar na verloop van tijd zult u waarschijnlijk afzonderlijke bestanden maken die u in uw configuratiebestand importeert.

Verdeling

Voor de installatie moet u uw schijven partitioneren. In andere distributies zijn er standaardwaarden die u kunt accepteren; met NixOS moet je echter je eigen partitionering doen. Partitioneren is niet erg ingewikkeld, maar u kunt in de problemen komen wanneer u uw configuratie moet instellen voor het partitioneringsschema dat u kiest. Het is belangrijk om te begrijpen dat de instructies en scripts er de voorkeur aan geven dat uw bestandssystemen correct zijn gelabeld.

De standaardhandleiding toont de partitioneringscommando's. Merk op dat de commando's verschillen voor een UEFI- en een MBR-schijf, en het instellen van de verkeerde waarden zal veel problemen veroorzaken. De handleiding stelt voor om de onderstaande waarden te gebruiken voor de eerste installatie, maar het is heel eenvoudig om nieuwe waarden te testen.

Standaard partities:
MBR:

parted /dev/sda -- mklabel msdos
parted /dev/sda -- mkpart primaire 1MiB -8GiB
parted /dev/sda -- mkpart primaire linux-swap -8GiB 100%

UEFI:

parted /dev/sda -- mklabel gpt
parted /dev/sda -- mkpart primaire 512MiB -8GiB
parted /dev/sda -- mkpart primaire linux-swap -8GiB 100%
parted /dev/sda -- mkpart ESP fat32 1MiB 512MiB
parted /dev/sda -- set 3 esp on

De partities in MBR aankoppelen:

mkswap -L swap /dev/sda2
mount /dev/disk/by-label/nixos

De partities in UEFI aankoppelen:

mount /dev/disk/by-label/nixos /mnt
mkdir -p /mnt/boot
mount /dev/disk/by-label/boot /mnt/boot

Het volgende gedeelte laat u zien hoe u uw configuratiebestand kunt maken.

Het configuratiebestand

Zodra u uw schijven hebt ingesteld, kunt u het configuratieproces starten. Met NixOS configureer je eerst en installeer je. De volgende instructies gaan ervan uit dat je hebt opgestart met behulp van de ISO, maar je zou kunnen opstarten met chroot.

Met nixos-generate-config genereert het systeem een ​​standaard configuratiebestand.

$ nixos-generate-config -root /mnt

Dit commando maakt twee bestanden: /mnt/etc/nixos/hardware-configuration.nix (u wijzigt dit bestand niet) en /mnt/etc/nixos/configuration.nix. U kunt het tweede bestand in uw favoriete editor bewerken.

Meestal veranderen de opties niet, afhankelijk van de methode die wordt gebruikt om op te starten. Je kunt grub of een andere opstartconfiguratie gebruiken. Er zijn veel opties, maar hier zijn enkele normen:.

Voeg deze regel alleen toe voor MBR:

laars.lader.eten.apparaat = "dev/sda";

Voeg deze regels alleen toe voor UEFI:

laars.lader.systemd-boot.inschakelen = waar;
laars.lader.ef.canTouchEfiVariables = waar;

Verander de configuratiebestanden zo min mogelijk om te starten. Deze waarden staan ​​allemaal in het originele bestand: verwijder commentaar en breng wijzigingen aan om aan uw behoeften te voldoen.

netwerken.hostnaam = "nixos";
gebruikers.gebruiker.nix =
isNormalUser = waar;
extraGroups = " wiel"

milieu.systemPackages = met pkgs [
wget vim
];
Diensten.openssh.inschakelen = waar;

Voeg de pakketten toe die u als standaardpakketten wilt gebruiken. Alle standaardpakketten staan ​​tussen vierkante haken met wget en vim. U kunt meer pakketten installeren zodra het systeem draait.

Gebouw

Zodra uw configuratiebestand correct is, kunt u de installatie uitvoeren.

$ nixos-installatie

Vervolgens zal het installatieprogramma om een ​​root-wachtwoord vragen dat op het echte systeem zal worden gebruikt. Alle programma's worden gecompileerd of gedownload uit de cache.nixpkgs.org en vervolgens geïnstalleerd in de nix store op uw computer. Vervolgens kunt u opnieuw opstarten en zou u een inlogprompt moeten krijgen.

$ opnieuw opstarten

Geef nu een wachtwoord op voor uw gebruiker met root. De gebruiker die u in het configuratiebestand hebt gedefinieerd, heeft ook een thuismap.

Nieuwe configuratie

Nadat u de bovenstaande stappen hebt voltooid, kunt u spelen met het configuratiebestand. Als je iets verandert, probeer het dan als volgt uit zonder het te installeren:

$ nixos-rebuild-test

Zodra u nieuwe waarden hebt die goed werken, voert u de opdracht rebuild uit:

$ nixos-rebuild-schakelaar

Nu zul je zien of je de opstartwaarden correct hebt ingesteld. Het is belangrijk op te merken dat de wijzigingen in de configuratie omkeerbaar zijn. Je kunt gewoon opnieuw opstarten en een oudere versie kiezen, die een generatie wordt genoemd, en het opnieuw proberen. Elke configuratie vereist echter schijfruimte, dus zorg ervoor dat u bekend bent met de garbagecollection-functie.

Conclusie

NixOS vereist een paar handmatige stappen om in te stellen, maar je kunt veel sneller terugkeren naar een werkend systeem dan met andere systemen. Bovendien is versiebeheer eenvoudiger als u veel versies van dezelfde toepassing nodig heeft of als u veel versies van dezelfde bibliotheken nodig heeft. Op het eerste gezicht lijken er veel beperkingen, maar deze beperkingen kunnen worden overwonnen met de meer geavanceerde onderdelen van het systeem.

Hoe de muisaanwijzer en cursorgrootte, kleur en schema op Windows 10 te veranderen
De muisaanwijzer en cursor in Windows 10 zijn zeer belangrijke aspecten van het besturingssysteem. Dit geldt ook voor andere besturingssystemen, dus i...
Gratis en open source game-engines voor het ontwikkelen van Linux-games
Dit artikel behandelt een lijst met gratis en open source game-engines die kunnen worden gebruikt voor het ontwikkelen van 2D- en 3D-games op Linux. E...
Shadow of the Tomb Raider voor Linux-zelfstudie
Shadow of the Tomb Raider is de twaalfde toevoeging aan de Tomb Raider-serie - een actie-avonturengame-franchise gemaakt door Eidos Montreal. De game ...