お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2012-10-08 13:03:57

tolmachevy
新しいメンバ
登録日: 2012-10-08

# usermod -u 500 <user name> すると、アカウント管理から消えてしまうのですが・・・

更に、ログインの名前リストにも表示されなくなり、ログインもできなくなります。

usermod -u 1001 <user name> すると、元に戻ります。

ご事情がお解りの方、教えていただければ幸です。

※ もともとは、CentOSサーバーにNFSする際のUIDのトラブルを解消するのが目的です。

オフライン

 

#2 2012-10-08 14:39:14

funatogawa
メンバ
From: 関東
登録日: 2009-02-01

Re: # usermod -u 500 <user name> すると、アカウント管理から消えてしまうのですが・・・

「$ 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)

使い方は、これ以外にないのでは?

オフライン

 

#3 2012-10-08 18:07:47

STGSAGWAN
ゲスト

Re: # usermod -u 500 <user name> すると、アカウント管理から消えてしまうのですが・・・

/etc/login.defsのUID_MIN=1000 をaccounts-daemon経由で見ていて、それ未満はシステムアカウント扱いで表示しない作りになっているからです。

前にも類似のトピックがありました。
https://forums.ubuntulinux.jp/viewtopic.php?pid=90827#p90827

 

#4 2012-10-08 18:18:27

STGSAGWAN
ゲスト

Re: # usermod -u 500 <user name> すると、アカウント管理から消えてしまうのですが・・・

書き忘れました。
Ubuntuのバージョンが書いてないので12.04という前提で書きますが、Ubuntu 12.04の「ユーザアカウント」の一覧に表示されるか否かについては前述の投稿の通りです。
しかし、ログイン時のリストに表示されるか否かがどうなっているのか、私には分からないです。

 

#5 2012-10-12 00:02:34

tolmachevy
新しいメンバ
登録日: 2012-10-08

Re: # usermod -u 500 <user name> すると、アカウント管理から消えてしまうのですが・・・

レス、ありがとうございます。

試しに、uid = 1001 のユーザーに対して、

# usermod -u 1020 <user name>

とした場合には、アカウント管理ツールにリストされますが、

# usermod -u 500 <user name>

とした場合は、アカウント管理ツールにリストされません。

やはり、~999 はだめなようです。

###

もともとは、NFS サーバーが稼動している CentOS のユーザーが uid = 500 なので、NFS クライアントである Ubuntu のユーザーの uid を変更できないか、と考えたことに端を発します。

NIS サーバーを使うべきでしょうか?
スタティックマッピング的な仕組みは無いでしょうか?(以前は有ったが、現在は無い?)
NIS 環境で Ubuntu を新規インストールする手順を知りたいのですが、参考になるサイトや書籍はないでしょうか?

もしおわかりでしたら、
よろしくお願いいたします。

オフライン

 

#6 2012-10-12 00:31:45

STGSAGWAN
ゲスト

Re: # usermod -u 500 <user name> すると、アカウント管理から消えてしまうのですが・・・

tolmachevyさん、話の主旨を明確にしてもらえますか?

 

#7 2012-10-13 10:18:01

tolmachevy
新しいメンバ
登録日: 2012-10-08

Re: # usermod -u 500 <user name> すると、アカウント管理から消えてしまうのですが・・・

目的は、CentOS サーバーが1台、CentOS クライアントが2台という構成の下で、クライアントからサーバーに NFS マウントして利用している環境に、新たに Ubuntu クライアントを追加することです。試しに、Ubuntu クライアントから CentOS サーバーに NFS マウントしてファイルをコピーしたのですが、大量にエラーもしくは警告が出ました。

原因を探るなかで、同一ユーザーの uid が CentOS サーバーと Ubuntu クライアントとで異なっていることが判明したため、これを同一にすれば解消できると考え、その方法をお尋ねした次第です。

ということで、

「異なる OS 間でスムースに NFS マウントしたい」というのが本来の課題です。

同課題の解消に向けてヒント等ございましたら、教えていただければ幸いです。

オフライン

 

Board footer

Powered by FluxBB