Uživatelské nástroje

Nástroje pro tento web


navody:distribuce:nixos

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
Následující verze
Předchozí verze
navody:distribuce:nixos [2019/03/11 12:29]
martyet added information about firewall by default and how to set it up
navody:distribuce:nixos [2022/03/05 15:01] (aktuální)
Aither Ekvivalent anglicke verze
Řádek 1: Řádek 1:
-===== NixOS =====+<​page>​manuals:​distributions:​nixos</​page>​ 
 +====== NixOS =====
 +[[https://​nixos.org|NixOS]] je distribuce založená na balíčkovacím systému Nix. 
 +Konfigurace systému a všech služeb se provádí deklarativně. Tato stránka popisuje 
 +použití NixOS na vpsFree.cz VPS. Pro více informací o NixOS obecně viz 
 +[[https://​nixos.org/​learn.html|dokumentace]].
  
-NixOS allows declarative configuration management of the whole system and deployed services.+===== Podporované verze ===== 
 +Poskytujeme šablony VPS pro stabilní vydání ​NixOS a průběžně pro NixOS unstable.
  
-To start using NixOS choose **[vpsAdminOS] NixOS** template+Sami NixOS používáme na naší 
 +[[https://​github.com/​vpsfreecz/​vpsfree-cz-configuration|infrastruktuře]]. 
 +Naše virtualizační platforma [[navody:​vps:​vpsadminos|vpsAdminOS]] je dokonce 
 +na NixOS a nixpkgs založená.
  
-If you have set your public ​SSH keys in vpsAdmin ​the key will be automatically deployed and you can login as root right awayTo be able to login with a password you need to set the password manually after your container is created.+===== Prvotní konfigurace ===== 
 +VPS je vytvořeno ze šablony, která obsahuje minimální systém a SSH
 +Pro přihlášení je možné použít [[navody:​vps:​sprava#​heslo_roota|vygenerované heslo]], 
 +nebo si nechat [[navody:​vps:​sprava#​automaticke_vlozeni_klicu|nahrát veřejný klíč]] přes 
 +vpsAdmin. ​Systém lze pak spravovat pomocí ''​nixos-rebuild''​ nebo jiného nástroje 
 +na nasazení NixOS.
  
-==== Initial setup & informations ====+Naše VPS jsou linuxové kontejnery, není zde zavaděč, jádro je sdílené a je potřeba 
 +určité nastavení pro správnou funkci NixOS. Šablona obsahuje tuto konfiguraci 
 +v souboru ''/​etc/​nixos/​vpsadminos.nix'',​ který je naimportován z ''/​etc/​nixos/​configuration.nix''​. 
 +Aktuální modul s konfigurací je vždy možné stáhnout 
 +z [[https://​github.com/​vpsfreecz/​vpsadminos/​blob/​staging/​os/​lib/​nixos-container/​vpsadminos.nix]].
  
-After installing NixOS (mainly talking about stable release) you **have to know**, that there is activated firewall by default blocking everything except ssh (port no. 22) so if you want to run some webserver (for example nginx) you have to tell firewall to not block your ports with this in your /etc/nixos/configuration.nix:nixos+===== Správa VPS ===== 
 +Přejdi na [[/|návody VPS]] pro více informací o naší infrastruktuře a možnostech VPS.
  
-<​code>​networking.firewall.allowedTCPPorts = [ 80 443 ];</​code>​ 
- 
-Then dont forget to do  
- 
-<​code>​ nixos-rebuild switch</​code>​ so your changes will take effect (without rebooting) 
- 
- 
-==== Configuration ==== 
- 
-Configuration is available at <​code>/​etc/​nixos/​configuration.nix</​code>​ 
- 
-This can be altered to change container configuration on the fly or for next reboot. Try changing container hostname and running <​code>​nixos-rebuild switch</​code>​ to build new configuration and directly switch to it. To switch to new configuration after reboot (set as a default boot profile) use <​code>​nixos-rebuild boot</​code>​ 
- 
-If you are using channels you can update your system by running <​code>​nixos-rebuild switch --upgrade</​code>​ 
- 
-==== Package installation ==== 
- 
-Packages can be installed system wide via configuration.nix or for local profile via <​code>​nix-env</​code>​ 
- 
-To install vim use <​code>​nix-env -iA nixos.vim</​code>​ 
- 
-To search for a package use <​code>​nix-env -qaP postgre</​code>​ 
- 
-==== Manual ==== 
- 
-Consult NixOS manual for more https://​nixos.org/​nixos/​manual/​ 
- 
- 
-===== Legacy OpenVZ templates ===== 
- 
-<note important>​Due to compatibility issues with OpenVZ it is no longer recommended to use the old infrastructure for new deployments.</​note>​ 
- 
-==== Common issues ==== 
- 
-=== SSH public key deployment fails === 
- 
-This can occur on first boot of the template when there'​s no ''/​root''​ yet. Disable automatic key deployment and deploy key manually **after** the containers boot. 
- 
-=== error: while setting up the build environment:​ unable to load seccomp BPF program: Invalid argument === 
- 
-Nix ≥ 1.11.10 requires seccomp, which is not available on vpsFree. To fix this, pin Nix to 1.11.9 by adding the following option to ''​configuration.nix''​ and rebuilding the system: 
- 
-<​code>​ 
-    nix.package = (import (pkgs.fetchFromGitHub { 
- owner = "​NixOS";​ 
- repo = "​nixpkgs";​ 
- rev = "​300fa462b31ad2106d37fcdb4b504ec60dfd62aa";​ 
- sha256 = "​1cbjmi34ll5xa2nafz0jlsciivj62mq78qr3zl4skgdk6scl328s";​ 
-    }) {}).nix; 
-</​code>​ 
- 
-In the future, it will be possible to [[https://​github.com/​NixOS/​nix/​commit/​1dd29d7aebae706f3e90a18bbfae727f2ed03c70|disable seccomp usage]]. 
- 
-=== systemd 233+ compatibility issues === 
- 
-Causes boot failures, workaround is pinning systemd to version 232: 
-<​code>​ 
-    nixpkgs.config.packageOverrides = super: ​ 
- let systemdGperfCompat = super.systemd.override { gperf = super.gperf_3_0;​ }; 
- in { 
-          systemd = systemdGperfCompat.overrideAttrs ( oldAttrs: rec { 
-            version = "​232";​ 
-            name = "​systemd-${version}";​ 
-            src = pkgs.fetchFromGitHub { 
-              owner = "​nixos";​ 
-              repo = "​systemd";​ 
-              rev = "​66e778e851440fde7f20cff0c24d23538144be8d";​ 
-              sha256 = "​1valz8v2q4cj0ipz2b6mh5p0rjxpy3m88gg9xa2rcc4gcmscndzk";​ 
-            }; 
-          }); 
-    }; 
-</​code>​ 
- 
-==== Details ==== 
- 
-Log contents 
-<​code>​ 
-Failed to canonicalize path /​etc/​systemd/​system/​local-fs.target.d:​ Too many levels of symbolic links 
- 
-$ journalctl -o verbose 
-    _EXE=/​nix/​store/​n5ksbh1hx275zfbqbalhghzpxp1w73lf-systemd-234/​lib/​systemd/​systemd 
-    _CMDLINE=/​run/​current-system/​systemd/​lib/​systemd/​systemd --system --deserialize 19 
-    CODE_FILE=src/​shared/​dropin.c 
-    CODE_LINE=133 
-    CODE_FUNC=unit_file_find_dir 
-    ERRNO=40 
-    MESSAGE=Failed to canonicalize path /​etc/​systemd/​system/​local-fs.target.d:​ Too many levels of symbolic links 
navody/distribuce/nixos.1552303772.txt.gz · Poslední úprava: 2019/03/11 12:29 autor: martyet