невозможно использовать mysql на сервере mariadb без ясной причины

В двух словах, чтобы использовать спящий режим в зашифрованном разделе подкачки, вам нужно создать ключевой файл, который затем используется для разблокировки зашифрованного раздела подкачки LUKS -. Это отличается от использования случайного ключа шифрования, варианта, несовместимого с гибернацией.

Конечно, при таком подходе расположение ключевого файла имеет значение. Лучше всего также зашифровать корневую файловую систему, а затем поместить туда ключевой файл, (ex. /root/swap.key ). В этом случае вам будет предложено ввести пароль корневой файловой системы во время загрузки, что затем сделает ключевой файл доступным для процесса загрузки, чтобы затем он мог разблокировать контейнер подкачки LUKS и использовать «разблокированное» устройство в качестве устройства подкачки.

Инструкции

ПРИМЕЧАНИЕ.:Считайте эти инструкции общим руководством, а не тем, что можно просто скопировать -вставить.

После загрузки установочного носителя...

Создайте свои разделы, контейнеры LUKS, файловые системы и смонтируйте их.

Создать ключевой файл:dd count=1 bs=512 if=/dev/urandom of=/mnt/root/swap.key

Создайте контейнер LUKS для вашего зашифрованного свопа, используя ключевой файл.

Разблокируйте контейнер swap LUKS, отформатируйте его с помощью mkswapи активируйте с помощью swapon.

Продолжить создание конфигурации NixOS. Пока это похоже на обычную установку NixOS.

Создать ключевой файл:dd count=1 bs=512 if=/dev/urandom of=/mnt/root/swap.key

Переместите конфигурацию swapDevicesс /mnt/etc/nixos/hardware-configuration.nixна /mnt/etc/nixos/configuration.nix. Примечание. :Вам нужно будет повторить этот шаг, если вы когда-нибудь снова запустите nixos-generate-config.

Отредактируйте swapDevicesв /mnt/etc/nixos/configuration.nix, чтобы включить шифрование. Вот пример:

swapDevices =
[ {
    device = "/dev/disk/by-uuid/..."; #This is already done for you. Leave as-is.
    encrypted = {
      enable = true;
      keyFile = "/mnt-root/root/swap.key"; #Yes, /mnt-root is correct.
      label = "..."; The name used with `cryptsetup` when unlocking the LUKS container. It can be whatever you want, ex "luksswap".
      blkDev = "/dev/disk/by-uuid/[UUID of the LUKS partition]";
    };
  }
];

Вы можете получить UUID раздела LUKS с помощью lsblk -o name,uuid.

Наконец, nixos-rebuild bootи перезагрузите систему. После перезагрузки NixOS разблокирует зашифрованный раздел подкачки и активирует его. Если нет, проверьте journalctl -bна наличие связанных ошибок.

0
13.05.2021, 12:29
1 ответ

which mysql возвращает /etc/init.d/mysql. Это так, потому что /etc/init.dнаходится в вашем PATH перед /usr/bin, что приводит к тому, что вы выполняете /etc/init.d/mysqlпри вводе mysql.

Вам необходимо убедиться, что расположение клиента mysql предшествует /etc/init.dв PATH. Или удалите /etc/init.dиз ПУТИ; Я не вижу причин, почему это там. Кроме того, чтобы сделать это изменение постоянным, вам необходимо изменить настройку PATH в вашем профиле или файле bashrc.

Если у вас есть причины не изменять переменную PATH, вам нужно запустить клиент mysql, указав его полное имя пути:/usr/bin/mysql.

0
28.07.2021, 11:32

Теги

Похожие вопросы