23.6. Массовое преобразование системных пользователей

Проблема
Вам совершенно не хочется вручную создавать учетные записи Samba для всех
пользователей, как описано в предыдущем разделе. Можно ли автоматизировать
процесс преобразования?
Решение
Да, до определенной степени. В поставку Samba включен сценарий mksmbpasswd,
который преобразует все записи /etc/passwd в формат smbpasswd и копирует их
в /etc/samba/smbpasswd. Сценарий не копирует пароли (он не может это сделать,
потому что они зашифрованы и хранятся в /etc/shadow), поэтому пароли придет ся задавать по отдельности. Новые учетные записи остаются заблокированными
до тех пор, пока не будут созданы пароли.
Сначала создайте копию /etc/passwd:
# ср /etc/passwd /etc/passwd-old
Отредактируйте /etc/passwd-old и удалите все учетные записи, которые не долж ны использовать сервер Samba. He нужно создавать для них учетные записи Samba,
это лишь создаст потенциальную угрозу для безопасности. Преобразуйте учет ные записи в /etc/samba/smbpasswd:
# cat /etc/passwd-old | /usr/sbin/mksmbpasswd > /etc/samba/smbpasswd
Новые учетные записи Samba активируются командой smbpasswd:
# smbpasswd henna
New SMB password:
Retype new SMB password:
Комментарий
Обычно mksmbpasswd рекомендуется запускать только один раз, для проведения
первого преобразования. Если внимательно отредактировать рабочую копию /etc/
passwd-old, избегая повторений, можно использовать mksmbpasswd для присоеди нения дополнительных пользователей:
# cat /etc/passwd-old | /usr/sbin/mksmpasswd » /etc/samba/smbpasswd
См. также
mksmbpasswd(8), smbpasswd(5), smbpasswd(8).