Пользователи Samba не добавляются, пока не войдут в систему? Редактировать: Как добавить пользователей в tdbsam без запроса пароля?

Я добавляю пользователей на свой сервер с помощью команды useradd -m -p PASS_HASH -s /usr/sbin/nologin USERNAMEЗатем я пытаюсь получить доступ к их общему ресурсу samba, но он никогда не появляется, пока я не войду с пользователем:

root:~$sudo login failtest
Password:######
Added user failtest.

Есть ли способ добавить пользователя без входа в систему?

Редактировать: Проблема в том, что пользователь добавляется с помощью команды useradd, но Ubuntu, похоже, запускает сценарий инициализации при первом входе пользователя в систему. Затем этот скрипт добавляет этого пользователя в базу данных пользователей tdbsam. Поиск сценария инициализации или метода, который он использует для добавления пользователя в базу данных tdbsam, не требуя ввода данных пользователем (поскольку smbpasswd -a USER запрашивает у пользователя пароль).

Поэтому все, что мне нужно, это способ добавить пользователя + пароль в базу данных tdbsam, не запрашивая у пользователя пароль (например, samaba-add-user.sh USERNAME PASSWORD).

3 ответа

Я считаю, что вы можете решить эту проблему, используя "adduser" вместо "useradd". Скрипт adduser должен создать остальную часть того, что вы ищете.

Это связано с тем, что samba синхронизируется с passwd после входа пользователя в систему. Если вы хотите, чтобы пользователь мог войти в samba, прежде чем выполнять какие-либо входы в оболочку, запустите smbpasswd -a failtest после создания пользователя. Это добавит правильную запись в базу данных.

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

Моя интуиция связана с PAM. Существует ли домашний каталог пользователя до того, как он войдет в систему, или вы используете pam_mkhomedir для создания каталога и загрузки skel? Если вы используете pam_mkhomedir, правильно ли он настроен в вашей конфигурации PAM для samba?

Можете ли вы опубликовать всю конфигурацию PAM, если не возражаете?

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