GNU/Linux >> Linux の 問題 >  >> Linux

メールスプールを作成せずにuseraddでLinuxアカウントを作成する方法

解決策 1:

man useradd

   -K, --key KEY=VALUE
       Overrides /etc/login.defs defaults (UID_MIN, UID_MAX, UMASK, PASS_MAX_DAYS and others).

       Example: -K PASS_MAX_DAYS=-1 can be used when creating system account to turn off password ageing, even though
       system account has no password at all. Multiple -K options can be specified, e.g.: -K UID_MIN=100 -K UID_MAX=499

だから、これを試してください:

# useradd -K MAIL_DIR=/dev/null nomailuser

警告が表示されます (Creating mailbox file:Not a directory ) ですが、無視してかまいません。

解決策 2:

Alpine とシャドウ パッケージを使用して Docker イメージをセットアップしていますが、同じエラーが発生しました。

この「メールボックス ファイルを作成しています:そのようなファイルまたはディレクトリはありません」を回避するには エラー ユーザーを追加する前に、次のインライン置換を追加する必要がありました:

RUN sed -i 's/^CREATE_MAIL_SPOOL=yes/CREATE_MAIL_SPOOL=no/' /etc/default/useradd

これは Dockerfile ディレクティブです .すでに実行中のホストに問題がある場合は、/etc/default/useradd ファイルを編集して、それに応じて設定を変更してください。この変更により、他のユーザーが作成したメールボックスが作成されなくなります。
望ましい動作ではない場合は、

で /var/mail フォルダーを作成するだけです。
[ -d /var/mail ] || mkdir /var/mail

または Dockerfile で:

RUN mkdir /var/mail 

これが役に立ったことを願っています。

解決策 3:

奇妙なことに、答えはノーです。ソースコードを読んだだけで、これに対するオプションはありませんが、(一種の) 回避策があります:メールディレクトリはシステム アカウント用に作成されません。

だからあなたは useradd -r -m をすることができます .ただし、異なる範囲から選択されるため、UID/GID も手動で指定する必要があります。


Linux
  1. Linuxでuseraddを使用してユーザーを管理する方法

  2. Pleskでメールアカウントを作成する方法

  3. Linuxで特定のサイズのファイルを作成するには?

  1. Linuxユーザーアカウントを手動で作成する方法

  2. Pythonを使用してLinuxでユーザーを作成する方法

  3. C++ を使用して Linux でウィンドウを作成するにはどうすればよいですか?

  1. LinuxでSSHを使用してパーソナルファイルサーバーを作成する方法

  2. Linux でスレッドを作成する方法 (C サンプル プログラムを使用)

  3. Linux でファイル圧縮を使用して ZFS ファイルシステムを作成する方法