LINUX.ORG.RU

Проблема при вводе компьютера в AD под chroot

 , , ,


0

1

Приветствую! Возникла проблема при вводе компьютера на Alt Linux в виндовую AD. При попытке использования команды system-auth получаю следующую ошибку:

Failed to connect to bus: No such file or directory
Failed to connect to bus: No such file or directory
ads_print_error: AD LDAP ERROR: 21 (Invalid syntax): 00000057: LdapErr: DSID-0C090CB9, comment: Error in attribute conversion operation, data 0, v2580
Failed to join domain: failed to set machine os attributes: Invalid syntax

Несложно предположить, что проблема в dbus, которая не запускается из-за неработающего под chroot’ом systemd. Пытаюсь запустить вручную с помощью dbus-run-session, появляется процесс:

[root@host-245 /1# ps aux | grep dbus
root    36746 0.0 0.0 6148 1236 tty2  S  12:28 0:00 dbus-run-session -- bash
root    36747 0.0 0.0 7528 3964 tty2  S  12:28 0:00 dbus-daemon --nofork --print-address 4 --session
root    36977 0.0 0.0 2964 1584 tty2  S+ 12:30 0:00 grep dbus

но ошибка остаётся прежней, попробовал запустить напрямую dbus-daemon --system --fork, на что получил ответ:

Failed to query system properties: Launch helper exited with unknown return code 1
Failed to query system properties: Launch helper exited with unknown return code 1
ads_print_error: AD LDAP ERROR: 21 (Invalid syntax): 00000057: LdapErr: DSID-0C090BD1, comment: Error in attribute conversion operation, data 0, u1773
Failed to join domain: failed to set machine os attributes: Invalid syntax

хотя сообщения по шине вполне себе проходят:

[root@host-245 /1# dbus-send --system --dest=org.freedesktop.DBus --type=method_call --print-reply /org/freedesktop/DBus org.freedesktop.DBus.ListNames

method return time=1723182934.513082 sender=org.freedesktop. DBus -> destination=:1.0 serial-3 reply_serial=2
    array [
        string "org.freedesktop.DBus"
        string "1.0"
    ]

Проблема при вводе компьютера в AD под chroot

Не я один захотел ввести компьютер в домен на этапе установки…

хотя сообщения по шине вполне себе проходят:

Шина есть, а отвечать на ней некому, т.к. скрипт для добавления компьютера в домен использует hostnamectl, который в свою очередь требует сервис systemd-hostnamed. Нужно смотреть, почему он не запускается (helper failed намекает на проблемы с systemd или права на запуск, что маловероятно).

Строка 769 system-auth:

https://git.altlinux.org/gears/a/alterator-auth.git?p=alterator-auth.git;a=blob;f=alterator-auth/sbin/system-auth;h=9e37c33644f0619c7f0e6d456f4b994cc46f7f4c;hb=9edb6995c17f6128c57618750ad3ea5729bf1a80

Можно попробовать запустить hostnamectl вручную и посмотреть логи dbus или сообщения на шине. Или же обратиться к службе systemd-hostnamed по шине.

toreonify
()
Ответ на: комментарий от toreonify

Благодарю за объяснение!

Попробовал упростить себе работу, воспользовавшись сразу net ads join и даже получилось присоединиться к домену, но пользователей не ищет.

[root@host-245 /1# net ads join --use-kerberos=required --no-dns-updates -U username Password for [DOMAIN\username]:
Using short domain name -- DOMAIN
Joined 'COMPUTER_NAME' to dns domain 'domain.local'
[root@host-245 /1# id user
id: 'user': no such user
[root@host-245 /1# wbinfo -u
could not obtain winbind interface details: WBC_ERR_WINBIND_NOT_AVAILABLE
could not obtain winbind domain name!
Error looking up domain users
magnelich
() автор топика
Ответ на: комментарий от magnelich

но пользователей не ищет

Если вы подключаете компьютер к домену без использования стандартного скрипта, то нужно вручную прописать параметры для Samba, PAM и прочих системных служб (например, /etc/nsswitch.conf), которые бы позволили системе получить пользователей из домена.

Скорее всего, что необходимо чтобы была запущена служба winbind, как и smb (аналогично и с альтернативным sssd).

toreonify
()