adduser コマンドが不便だ
Ubuntu のユーザー追加には adduser
が推奨されているが、
adduser
で使用できる正規表現が以下の通りとなっている。
[/etc/adduser.conf]
NAME_REGEX="^[a-z][-a-z0-9_]*\$"
これだとメールサーバーとして構築した時に、ドットが使用できない。
なので adduser.conf の正規表現を書き換えれば使用できるようになる。
しかし、adduser
はユーザー作成とパスワード設定が、コマンド1行で実行できない。
ホームディレクトリの指定が面倒。オプション項目の要求も無駄に多い。
とにかく adduser
が不便と言いたい。
useradd コマンドを使う
回避策として useradd
を使用する。
Ubuntu 20.04 の場合(18.04 も同じ?)、useradd
の設定が全てコメントアウトされている。
基本的に 設定行 の コメント を外すだけでいい。念のため備忘録も兼ねてサンプルも載せておく。
[/etc/default/useradd]
SHELL=/bin/sh GROUP=100 HOME=/home INACTIVE=-1 EXPIRE= SKEL=/etc/skel CREATE_MAIL_SPOOL=yes
これで ユーザー追加時 に ホームディレクトリ や メールスプール も一緒に設定される。
ユーザー追加コマンド
1行で、ユーザー追加 + ホームディレクトリ作成 + パスワード設定 をする。
sudo useradd -m -p `perl -e "print(crypt('password', 'XY'));"` username
-m
はホームディレクトリ作成のオプションusername
とpassword
とXY
の部分は任意
補足
XY
の部分は crypt 関数の SALT値 という パスワード暗号化 に使用する パラメーター です。
任意の英数字2文字を指定します。使用可能文字の正規表現は [./0-9A-Za-z]
となります。
crypt - Perldoc Browser