Skip to content

Instantly share code, notes, and snippets.

@Mic92
Created July 20, 2024 09:23
Show Gist options
  • Save Mic92/e48c0a98dfbbbe1f6eccb7902700f126 to your computer and use it in GitHub Desktop.
Save Mic92/e48c0a98dfbbbe1f6eccb7902700f126 to your computer and use it in GitHub Desktop.

Disko это утилита и модуль Nixos для декларативной разметки дисков.

Каталог Документации Disko

Использование

Следующий пример создаёт новую таблицу разделов GPT для диска /dev/vda включая два раздела для EFI boot и корневой раздел файловой системы bcachefs.Следующая команда применит расположение дисков, указанное в конфигурации, и смонтирует их после этого. Внимание: При этом все данные на диске будут удалены.<syntaxhighlight lang="console">

  1. sudo nix run github:nix-community/disko -- --mode zap_create_mount ./disko-config.nix
</syntaxhighlight>В качестве альтернативы можно использовать конфигурацию разметки диска в удаленном репозитории, содержащем файл flake.nix, как точку входа. Параметр --arg задает целевой диск /dev/sda.<syntaxhighlight lang="console">
  1. sudo nix run github:nix-community/disko -- --mode zap_create_mount --flake github:Lassulus/flakes-testing#fnord --arg disks '["/dev/sda"]'
</syntaxhighlight>Приведенные выше команды требуют наличия в вашей системе функций Flake.

Чтобы убедиться, что оба раздела смонтированы правильно, выполните команду<syntaxhighlight lang="console">

  1. mount | grep /mnt
</syntaxhighlight>

Настройка

Если базовая система NixOS была установлена на макет раздела, развёртываемого с помощью Disko, сам конфиг диска может быть интегрирован в систему. Сначала скопируйте файл, например disko-config.nix, в каталог конфигурации системы<syntaxhighlight lang="console">

  1. cp disko-config.nix /etc/nixos/
</syntaxhighlight>Добавьте модуль Disko в систему с поддержкой Flake. Вставьте нужный входной файл и ссылайтесь на него и на ваш файл disko-config.nix в разделе Модулей. .

Для получения информации об альтернативных методах установки обратитесь к краткому руководству Disko.Убедитесь, что в файле /etc/nixos/hardware-configuration.nix нет автоматически генерируемых записей опций fileSystems в /etc/nixos/hardware-configuration.nix. Disko автоматически сгенерирует их за вас. Пересоберите систему, чтобы применить конфигурацию Disko.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment