
Ubuntu日本語フォーラム

ログインしていません。
更に、ログインの名前リストにも表示されなくなり、ログインもできなくなります。
usermod -u 1001 <user name> すると、元に戻ります。
ご事情がお解りの方、教えていただければ幸です。
※ もともとは、CentOSサーバーにNFSする際のUIDのトラブルを解消するのが目的です。
オフライン
「$ man usermond」で調べて見ました。
$man usermod
USERMOD(8) USERMOD(8)
名前
usermod - ユーザアカウントを修正する
書式
usermod [-c comment] [-d home_dir [-m]]
[-e expire_date] [-f inactive_time]
[-g initial_group] [-G group [,...]]
[-l login_name] [-p passwd]
[-s shell] [-u uid [-o]] [-L|-U] login
説明
usermod コマンドは、 コマンドライン上での指定によって、 システムアカウントファイルを修正する。 usermod コマンドに指定できる
オプションは次の通り。
-c comment
パスワードファイルのコメントフィールドに与える新しい値。 通常は chfn(1) ユーティリティによって変更される。
-d home_dir
新しいログインディレクトリ。 -m オプションを用いると、 現在のホームディレクトリの中身が新しいホームディレクトリに移
動される (後者が存在しない場合は新たに作成される)。
-e expire_date
そのユーザアカウントが使用不能になる日付。 日付は YYYY-MM-DD という書式で指定する。
-f inactive_days
パスワードの使用期限が切れてからアカウントが永久に使用不能になるまでの日数。 0 にすると、 パスワードの期限が切れると
同時にこのアカウントは使用不能になる。 -1 にするとこの機能が無効になる。デフォルト値は -1。
-g initial_group
新たにそのユーザのログイン時初期グループとするグループ名または ID。 グループ名は既に存在していなければならない。 グ
ループ番号は既存のグループを参照していなければならない。 デフォルトのグループ番号は 1。
-G group,[...]
ユーザが属する補助グループ (supplementary groups) のリスト。 グループはコンマで区切り、間に空白文字を入れてはならな
い。 指定できるグループには -g オプションと同様の制限がある。 現在そのユーザが、 新しいリストにないグループのメン
バーになっている場合は、 そのグループから削除される。
-l login_name
ユーザのログイン名を login から login_name に変更する。 他は何も変更しないので、 おそらく新しいログイン名に合わせて
ホームディレクトリの名前を変更する必要があるだろう。
-p passwd
crypt(3) の返り値である暗号化パスワード。
-s shell
ユーザの新しいログインシェルの名前。 このフィールドを空白にした場合は、 システムがデフォルトのログインシェルを選択す
る。
-u uid ユーザの ID 番号。 この値は、-o オプションを用いる場合を除き、他と重複してはならない。 また非負値でなくてはならな
い。 0 から 999 までの値は、通常システムアカウント用に予約されている。 ホームディレクトリ以下の、 そのユーザ所有のす
べてのファイルのユーザ ID は、 自動的に新しい値に変更される。 ホームディレクトリ以下にないファイルは手作業で変更しな
ければならない。
-L ユーザのパスワードをロックする。 これは暗号化されたパスワードの前に '!' を追加し、 実質的にパスワードを無効にする。
このオプションを -p や -U と同時に用いることはできない。
-U ユーザのパスワードをアンロックする。 これは暗号化されたパスワードの先頭の '!' を取り除く。 このオプションを -p や -L
と同時に用いることはできない。
警告
usermod は現在ログインしているユーザの名前を変更できない。 このコマンドを使用してユーザの ID 番号を変更する際には、 指定し
たユーザのプロセスが一つも実行されていないことを 事前に確認しなければならない。 crontab ファイルの所有者は手作業で変更しな
ければならない。 at ジョブの所有者は手作業で変更しなければならない。 NIS に関する作業は NIS サーバ上で行なわなければならな
い。
ファイル
/etc/passwd - ユーザアカウント情報
/etc/shadow - 安全なユーザアカウント情報
/etc/group - グループ情報
関連
chfn(1), chsh(1), passwd(1), crypt(3), groupadd(8), groupdel(8), groupmod(8), useradd(8), userdel(8)
著者
Julianne Frances Haugh ([email protected])
USERMOD(8)使い方は、これ以外にないのでは?
オフライン
/etc/login.defsのUID_MIN=1000 をaccounts-daemon経由で見ていて、それ未満はシステムアカウント扱いで表示しない作りになっているからです。
前にも類似のトピックがありました。
https://forums.ubuntulinux.jp/viewtopic.php?pid=90827#p90827
書き忘れました。
Ubuntuのバージョンが書いてないので12.04という前提で書きますが、Ubuntu 12.04の「ユーザアカウント」の一覧に表示されるか否かについては前述の投稿の通りです。
しかし、ログイン時のリストに表示されるか否かがどうなっているのか、私には分からないです。
レス、ありがとうございます。
試しに、uid = 1001 のユーザーに対して、
# usermod -u 1020 <user name>
とした場合には、アカウント管理ツールにリストされますが、
# usermod -u 500 <user name>
とした場合は、アカウント管理ツールにリストされません。
やはり、~999 はだめなようです。
###
もともとは、NFS サーバーが稼動している CentOS のユーザーが uid = 500 なので、NFS クライアントである Ubuntu のユーザーの uid を変更できないか、と考えたことに端を発します。
NIS サーバーを使うべきでしょうか?
スタティックマッピング的な仕組みは無いでしょうか?(以前は有ったが、現在は無い?)
NIS 環境で Ubuntu を新規インストールする手順を知りたいのですが、参考になるサイトや書籍はないでしょうか?
もしおわかりでしたら、
よろしくお願いいたします。
オフライン
tolmachevyさん、話の主旨を明確にしてもらえますか?
目的は、CentOS サーバーが1台、CentOS クライアントが2台という構成の下で、クライアントからサーバーに NFS マウントして利用している環境に、新たに Ubuntu クライアントを追加することです。試しに、Ubuntu クライアントから CentOS サーバーに NFS マウントしてファイルをコピーしたのですが、大量にエラーもしくは警告が出ました。
原因を探るなかで、同一ユーザーの uid が CentOS サーバーと Ubuntu クライアントとで異なっていることが判明したため、これを同一にすれば解消できると考え、その方法をお尋ねした次第です。
ということで、
「異なる OS 間でスムースに NFS マウントしたい」というのが本来の課題です。
同課題の解消に向けてヒント等ございましたら、教えていただければ幸いです。
オフライン