それでは、なぜアンダースコアはDebian(およびおそらく他のディストリビューション)のユーザー名に無効な文字と見なされますが、Ubuntuはadduser
NAME_REGEXから削除されたのですか?
答え1
POSIX指定するポータブル使用置くユーザー名とグループ名の文字数。
_ - .
許可されている文字の場合は、NAME_REGEX
ユーザー名に指定された文字のみが含まれていることを確認してください。デプロイメント開発者は、追加の文字が拒否されるかどうかを定義します。たとえば、Ubuntuはデフォルトで無効にします.
。
この制限を追加すると、特殊文字を解釈できる他のシステムツールが妨げられません。$PATH
その名前を持つユーザーがいる場合は、変数を考慮してmy:user
ホームディレクトリを次に追加します$PATH
。
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:
/home/my:user/bin
ディレクトリが/home/my
存在user/bin
しない可能性があります。さらに、2つ以上/etc/passwd
ある予定だ:
。
編集する:
ユーザー名を確認するためのDebian adduser
(バージョン3.110)/^[_.A-Za-z0-9][-\@_.A-Za-z0-9]*\$?$/
、_
はいNAME_REGEX
禁止されていない限り許可されます。
答え2
同様の質問にはすでに回答がありますここ
理論的には、必要なほとんどすべてのASCII文字をユーザー名として使用できますが、特定のエラー(前の記事で説明したように)を回避するには、正規表現を設定して特定の問題を回避できます。
答え3
私はDebian Squeezeを使用していますが、下線付きのユーザーを作成しましたが、adduser user_1
なぜ許可されていないのですか?