< meta name="referrer" content="origin">
Home » Ошибки » Invalid idmap backend rid configured as the default backend!

Invalid idmap backend rid configured as the default backend!

После очередного обновления файлового сервера Samba на CentOS 7, отказался запускаться Winbind. Соответственно, сетевые шары перестали работать. Сразу вспомнил мудрую админскую поговорку: «Не было печали, апдейтов накачали». Сервер стоял в локальной сети и без обновлений прожил бы до пенсии, но я привык накатывать обновления.

Сразу расскажу решение. У меня были такие параметры в smb.conf:

idmap config * : backend = rid
idmap config * : range = 5000-10000000
idmap config * : base_rid = 0

С какой-то версии самбы, предположительно 4.6, beckend rid стал depreciated. Winbind отказывался стартовать, выдавая ошибку:

Sep 30 22:58:02 files winbindd[28721]: [2017/09/30 22:58:02.384908, 0] ../source3/winbindd/winbindd.c:1705(main)
Sep 30 22:58:02 files winbindd[28721]: main: FATAL: Invalid idmap backend rid configured as the default backend!
Sep 30 22:58:02 files systemd: winbind.service: main process exited, code=exited, status=1/FAILURE
Sep 30 22:58:02 files systemd: Failed to start Samba Winbind Daemon.
Sep 30 22:58:02 files systemd: Unit winbind.service entered failed state.

Проблема решилась на удивление просто. Я не стал менять бэкенд на tdb. Достаточно было вместо * указать имя домена. Получилось вот так:

idmap config XS : backend = rid
idmap config XS : range = 5000-10000000
idmap config * : range = 5000-10000000
idmap config XS : base_rid = 0

XS здесь имя домена. И о чудо, winbind запустился и даже не похерил старые UID. Все права доступа для пользователей домена сохранились. Я не понял, почему он изначально не хотел работать, а с указанием домена заработал. Решение нашел в буржуинском гугле. Winbind ругается только тогда, когда rid установлен как дефолтный бэкенд. А если для конкретного домена, то нормально.

Признаться, я немного напрягся, когда словил эту ошибку. Проблемы с winbind частенько приводят к тому, что слетают права доступа на шарах из-за нарушения соответствия доменных учеток и локальных UID. Но в этот раз обошлось. Позже напишу статью, как сохранять и восстанавливать UID доменных учетных записей, чтобы можно было восстановить права доступа к шарам, если они слетают.


Помогла статья? Есть возможность отблагодарить автора

5 комментариев

  1. Заметил что, когда установил rid, то на серверах онлайн uid меняться перестал, но на машинах которые ведены в домен иногда их забывают, хотя часть данных пользователя остаются (uid и главный gid) но после 5 минут онлайн данные возвращались обратно. На просторах вычитал что в файле nsswitch.conf нужно заменить параметр (passwd: compat winbind) на (passwd: files winbind), заменил, пока тихо))))))
    А и еще вроде в доках самбы писал что параметр idmap config * : base_rid = 0 устарел (https://www.samba.org/samba/docs/man/manpages-3/idmap_rid.8.html)

    • Ну так он и устарел. Я же об этом и написал. Но устарел, только если ты его используешь как дефолтный параметр для всех доменов. Если прописать для конкретного, как сделал я, то нормально работает. Я не понял, в чем смысл такого поведения.

      Кстати, эту же ссылку читал.

  2. Доброе.

    «Признаться, я немного напрягся, когда словил эту ошибку»

    Так не пишут _грамотные_ люди. Исправьте, пож-та.

Добавить комментарий

Ваш e-mail не будет опубликован.