Использование 2-х резервных серверов для сетевых загрузочных устройств по сети

Возможно ли это, и как бы вы поступили следующим образом.

У меня есть 2 сервера (1 основной, а другой - резервный) и множество устройств, подключенных к этим серверам . Я хотел бы настроить загрузку по сети (возможно, используя PXE, DHCP или другой метод). В частности, мне нужно использовать IP / адрес порта, потому что эти устройства могут быть заменены (поэтому о физическом MAC-адресе не может быть и речи). Детали среды и то, что я пробовал, изложены ниже. Кто-нибудь знает, что мне не хватает или что я делаю неправильно?

Ошибка

================================================================================
Error executing action `create` on resource 'user[Webserver user and group]'
================================================================================

Mixlib::ShellOut::ShellCommandFailed
------------------------------------
Expected process to exit with [0], but received '6'
---- Begin output of ["usermod", "-s", "/bin/false", "-d", "/var/opt/gitlab/nginx", "gitlab-www"] ----
STDOUT:
STDERR: usermod: user 'gitlab-www' does not exist in /etc/passwd
---- End output of ["usermod", "-s", "/bin/false", "-d", "/var/opt/gitlab/nginx", "gitlab-www"] ----
Ran ["usermod", "-s", "/bin/false", "-d", "/var/opt/gitlab/nginx", "gitlab-www"] returned 6

Среда

RHEL 7.2 (Maipo), Chef Client, версия 12.12.15 (взято для gitlab-ctl reconfigure output)

Что я пробовал

  • Следующие шаги установки здесь для RHEL 7.
  • Добавьте пользователя gitlab-www вручную: при выполнении этого sudo useradd -s / bin / false -d / var / opt / gitlab / nginx gitlab-www Я получаю сообщение об ошибке useradd: пользователь 'gitlab-www' уже существует . Однако я подтвердил, что запись для gitlab-www не существует в /etc/passwd.
  • Переименованные пользователи в gitlab.rb: я переименовал следующих пользователей в /etc/gitlab/gitlab.rb [git, gitlab-www, git-redis и gitlab-psql]. Это позволяет мне успешно запустить gitlab-ctl reconfigure , но это похоже на суперхак, и я не знаю, как это повлияет на установку Gitlab. Мне пришлось переименовать всех этих пользователей, потому что после переименования gitlab-www я получал ту же ошибку с пользователем git, затем git-redis и т. Д.
1
задан 13 April 2017 в 21:04
1 ответ

Когда пользователь создан правильно , он добавляется в два файла - / etc / passwd и / etc / shadow . Первый содержит информацию о домашнем каталоге, оболочке входа и т. Д .; последний содержит зашифрованный пароль для пользователя.

Из вашего описания я должен предположить, что пользователь существует в / etc / shadow , но не в / etc / passwd . . 1215] Самое простое решение - отредактировать / etc / shadow (с помощью sudo) и удалить строку, которая выглядит примерно как

gitlab-www:!!:12345::::::

. Другой вариант - вручную добавить пользователя в / etc / passwd . Сначала найдите UID в теневом файле:

[jenny@finch ~]$ sudo grep gitlab-www /etc/shadow | cut -d: -f3
12345
[jenny@finch ~]$ sudo vi + /etc/passwd

Затем добавьте следующую строку:

 gitlab-www:x:12345:12345:Gitlab WWW user:/var/opt/gitlab/nginx:/bin/false
0
ответ дан 4 December 2019 в 04:59

Теги

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