フォローするこのガイドライン以下を提供するBuild Shadowgroupadd
注文する。今これを試してみるとエラーが発生します。
$ groupadd automake1.10
groupadd: 'automake1.10' is not a valid group name
英数字の名前を確認しましたが、正常に動作します。
ベストアンサー1
詳しくはソースコードをご覧くださいlibmisc/chkname.c
。 Shadowはかなり保守的です。名前は正規表現と一致する必要があり、[_a-z][-0-9_a-z]*\$?
最大GROUP_NAME_MAX_LENGTH
1文字まで可能です(設定オプション、デフォルトは16文字、ユーザー名は通常最大32文字まで可能で、コンパイル時に決定されます)。
Debian は多くの検査を軽減します。押出から始めて:
スペースと。バラよりバグ #264879そしてバグ #377844。
POSIX要件では、大文字または小文字、数字、および._-
(ファイル名と同様)。移植性に興味がなければ、POSIXはいかなる制限も設定しません。提案された制限の多くは、以下を使用して発生します。
/etc/passwd
コロン、改行、null はすべて除外されます。またはでは使用できません/etc/group
。- 数字だけで構成される名前は良くありません。一連の番号がユーザー/グループデータベースにある場合は名前で処理する必要がありますが、他のアプリケーションではすべての番号を数値IDとして扱うことができます
chown
。chgrp
- 多くのアプリケーションが外部ユーティリティ(たとえば)に渡すことを期待しているので、ユーザー名にイニシャルや
-
aを使用しないことをお勧めします。グループ名にAが含まれている場合は問題が少なくなりますが、まだ使用しないことをお勧めします。.
$user.$group
chown $user.$group /path/to/file
.
/
一部のプログラムでは、ファイル名にユーザー名を使用しようとしているため、問題が発生する可能性があります。- シェルが拡張するすべての役割は危険です。
- 他のエンコーディングを使用できるシステムとの共有に興味がない場合は、ASCII以外の文字も問題ありません。
1すべての最新の実装は以前のバージョンとの互換性を期待してchown $user:$group
いますが、chown $user.$group
サポートしており、あまりにも多くのアプリケーションが互換性サポートを削除するためにポイントを通過します。