Некоторые команды (например, modprobe или usermod) не работают как поздние команды в автоматической установке Ubuntu

Я пытаюсь настроить containerd для кубернетов через механизм автоматической установки Ubuntu (для Ubuntu 20.04).

Некоторые команды при использовании в ] late-commands , похоже, не работают без очевидной причины. (Exit> 0 без описательного вывода). Фрагмент сбоя из late-commands выглядит так:

  late-commands:
    - printf 'overlay\nbr_netfilter\n' > /target/etc/modules-load.d/containerd.conf
    - curtin in-target --target=/target -- /usr/sbin/modprobe overlay
    - curtin in-target --target=/target -- /usr/sbin/modprobe br_netfilter

Ошибка установщика показывает, что Вызов modprobe завершается 1.

enter image description here

Я перезапускаю виртуальную машину, вхожу в систему как ubuntu и становлюсь root . В это время я могу запустить modprobe оверлей успешно (выход 0). Я также не вижу / var / crash / 16238 ... (см. выше), поскольку он не существует на цели (я предполагаю, что это) существует в среде установщика.) / var / log / installer тоже не содержит ничего полезного.

Учитывая вышеизложенное, что именно может привести к сбою modprobe как late-command ? По-видимому, не имеет отношения к этому, я также попытался выполнить вызов chage -d 0 , который также завершился ошибкой с нулевым сообщением об ошибке.Есть ли какое-то объяснение того, почему некоторые команды могут не существовать или не работать должным образом в целевой среде на этом этапе?


Редактировать 1: относительно сбоя usermod, я предполагаю, поскольку этот ответ намекает на то, что пользователь ubuntu не создан на этом этапе процесса установки.

Редактировать 2: Я добавил error-command , который кажется полезным для отладки:

  error-commands:
    - /usr/bin/tail -n 250 /var/log/syslog

Теперь это показывает оверлей модуля, не найденный в / lib / modules / ... :

enter image description here

0
задан 17 June 2021 в 16:54

0 ответов

Другие вопросы по тегам:

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