Help us understand the problem. What is going on with this article?

Unix/Linuxでのユーザ名・グループ名に関する制限

More than 3 years have passed since last update.

Overview

Unix/Linux系システムのアカウントを外部アプリケーションと連携させる時に各ディストリビューションでユーザ名やグループ名の制限(limitation)がどうなっているか気になったので調べてみた

ユーザ名の制限

ユーザ名長

Linux系ではlibcのバージョンによって変わってくる。libc5が使われている古いシステムとlibc6では制限が違う。また古いSolaris(8,9,10系)では8byte以上のユーザ名を作ろうとすると警告が表示され、ps系コマンドでユーザ名が暗黙的にtruncateされたりするなどユーザ名を使用するアプリケーションの挙動が変わってくる。

hard limit

種類 長さ
libc5 8
libc6 32

soft limit

種類 長さ
Solaris 8
libc6 32

使用可能文字

  • 数字、アルファベット、アンダーバーを使用可能
  • 大文字は使用不可
  • 先頭文字は数字は使用不可

正規表現で表すと ([a-z_][a-z0-9_]{0,30}) となる。

グループ名の制限

種類
Linux 32
Solaris 32

グループ名の長さを回避

GNU groupaddを--with-group-name-max-lengthオプションを付けてソースからコンパイルし直す。
ただしグループ名を使用するアプリケーションで32文字以上のグループ名が動作する保証はない。

グループ数の制限

長さとは関係ないが1ユーザが所属出来るグループ数にはNISやNFSにより上限がある

種類 グループ数
Linux Kernel < 2.6.3 16
Linux Kernel >= 2.6.3 32
Solaris 16

まとめ

各システムでのユーザ・グループの制限を確認し、すべてのシステムで使用可能なサイズとしてはユーザ名・グループ名ともに 8文字 ということが分かった。
レガシーなUnixシステムとの互換性を保つためにアプリケーション側でユーザ名やグループ名をあえて8文字までしか認識しないよう実装している可能性もあるため、念を入れたい場合はユーザ名・グループ名共に8文字までに抑えよう。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした