ドット付きのユーザを作成できない

Red Hat Enterprise Linux ES 3 でドット付きのユーザ(例 : test.user)を useradd コマンドで追加しようとすると以下のようなエラーが表示された。

# useradd test.user
useradd: invalid user name 'test.user'

調査してみると、useradd コマンドの本体は /usr/sbin/useradd であり、そのファイルを含む RPM パッケージは shadow-utils であることがわかる。

# which useradd
/usr/sbin/useradd

# rpm -qf /usr/sbin/useradd 
shadow-utils-4.0.3-23.08

そして、shadow-utils は五月下旬に up2date で 4.0.3-23.08 にバージョンアップしていた。

shadow-utils bug fix update

そこで、一つ前のバージョンである 4.0.3-22.02 を Red Hat Network からダウンロードしてダウングレードを実施。ダウングレード後、再度 useradd コマンドを発行すると、無事にドット付きユーザが作成された。

# rpm -Uvh --oldpackage shadow-utils-4.0.3-22.02.rpm

# rpm -q shadow-utils
shadow-utils-4.0.3-22.02

# useradd test.user

# cat /etc/passwd | grep test.user
test.user:x:500:500::/home/test.user:/bin/bash

というわけで、shadow-utils のバグなんだろうか。4.0.3-23.08 での変更内容はグループ名の長さが長くなったことと man ページが UTF-8 形式になったことだが、この環境に影響を及ぼすような変更ではないから、しばらくは 4.0.3-22.02 で運用することにする。

Previously, the length of a group name was arbitrarily limited to 16 characters. This update extends the length to the linux limit (31 characters).

Additionally, the man pages are now in UTF-8 format.