Резюме
Могу ли я создать нового пользователя без создания почтового спула и без изменения /etc/default/useradd
?
Explaination
Я хочу создать пользователя с домашним каталогом и скелетом, но я не хочу, чтобы useradd
скрипт добавлял почтовый файл в систему Unix.
Мой /etc/default/useradd
файл утверждает, что
CREATE_MAIL_SPOOL=yes
но я не хочу изменять поведение по умолчанию.
Сейчас я использую
useradd nomailuser
rm /var/spool/mail/nomailuser
Также я знаю о, -d
но кажется, что я не могу найти вариант, чтобы не создавать почтовую папку .
Я думаю о том, есть ли возможность использовать пользовательский /etc/default/useradd
файл.
linux
user-accounts
drinchev
источник
источник
-K CREATE_MAIL_SPOOL=no
которая не работает вообще?/etc/login.defs
.-K MAIL_DIR=/dev/null
я получил ошибку:Creating mailbox file: Not a directory
-K CREATE_MAIL_SPOOL=no
я получил ошибкуconfiguration error - unknown item 'CREATE_MAIL_SPOOL' (notify administrator)
.echo "CREATE_MAIL_SPOOL no" >> /etc/default/useradd
Я устанавливаю образ Docker с пакетом Alpine и shadow и получаю ту же ошибку.
Чтобы избежать этой ошибки «Создание файла почтового ящика: нет такого файла или каталога», мне пришлось добавить следующую встроенную замену, прежде чем пытаться добавить пользователя:
Это директива Dockerfile . Если вы боретесь с уже работающим хостом, просто отредактируйте файл / etc / default / useradd и измените настройки соответствующим образом. Это изменение помешает любому другому создателю пользователя получить свой почтовый ящик.
Если это нежелательное поведение, вы можете просто создать папку / var / mail с
Или в Dockerfile:
Надеюсь, это помогло.
источник
Как ни странно, ответ - нет. Я только что прочитал исходный код, и для этого нет возможности, хотя есть обходной путь (своего рода): maildirs не создаются для системных учетных записей.
Так что вы можете сделать
useradd -r -m
. Вы также должны будете указать UID / GID вручную, так как они выбираются из разных диапазонов.источник