• ベストアンサー

UNIX/uidからusernameを参照するには?

UNIXでuidからユーザネームを参照したいのですが、どこにこの情報があるかわかりません。手がかりだけでもよいのでご存じの方がいらっしゃったら教えてください。

  • basil
  • お礼率31% (40/127)

質問者が選んだベストアンサー

  • ベストアンサー
  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.6

nireportというコマンドを見つけました。 こんなのはどうでしょう。 uidが501番のアカウント名が知りたい時は # nireport . /users name uid | grep 501 | cut -f 1

basil
質問者

お礼

おお! ビンゴです!ありがとうございます。とても助かりました。

その他の回答 (5)

  • k2_kazu
  • ベストアンサー率50% (9/18)
回答No.5

  MacOS Xは、良く分かりませんが、調べてみると NetIndoデータベースの内容をUNIX形式で出力する nidumpがあるようです。 参考URL http://www.math.nagoya-u.ac.jp/~naito/MacOSX_Beta/netinfo.html  

参考URL:
http://www.math.nagoya-u.ac.jp/~naito/MacOSX_Beta/netinfo.html
basil
質問者

お礼

ありがとうございます。 参考URLは今回に限らず、とても参考になりそうです。

  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.4

MacOSXはNetInfoマネージャで管理しているので、普通のUNIXとは少し違います。 NetInfoマネージャからpasswdファイルを書き出すにはターミナルで、 nidump passwd . > passwd.new と実行します。 他に、niutilコマンドでわかるかもしれません。 ターミナルで、niutilと打つと使い方が表示されるはずです。 もっと便利なコマンドがあると思いますが、今手元にMacOSXが無いので、すみません。

basil
質問者

お礼

ありがとうございます! 上記「nidump~」のコマンドでファイルが出来ました。 とりあえずはこれで使えます。 でも... アカウントに変更がある度にこれを実行するのも効率がわるいのでどこかに参照できるパラメタファイルが見つかればいいんですが。。

  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.3

もしかして、NISやLDAPで一元管理しているのでは? たとえば、ローカルの/etc/passwdではなく、 NISサーバのpasswdファイルを見に行く様になってるとか?

basil
質問者

補足

そういうことはありません。単独で動いています。

  • k2_kazu
  • ベストアンサー率50% (9/18)
回答No.2

  > 肝心なアカウントユーザがリストされていないんです…。 一般ユーザが1つも登録されていないのではないですか? 現在rootでログインしているのであれば、一般ユーザを 登録(追加)して下さい。 ユーザを登録(追加)すれば、/etc/passwdファイルに 反映されます。 OSにより登録(追加)方法が多少異なりますが、 基本的には管理ツールやuseraddコマンド等で 出来る筈です。  

参考URL:
http://www.wakhok.ac.jp/sysadmin/node16.html,http://vinelinux.org/manuals/login-5.html,http://www.glasscom.com/tone/linu
basil
質問者

補足

大切なことを伝えていませんでした。すみません。 UNIXといってもMacOS Xなので違うのでしょうか。

  • k2_kazu
  • ベストアンサー率50% (9/18)
回答No.1

  /etc/passwdファイルの内容を見て下さい。 形式は、参考URLを見て下さい。 http://x68000.startshop.co.jp/~68user/unix/pickup?%2Fetc%2Fpasswd  

参考URL:
http://x68000.startshop.co.jp/~68user/unix/pickup?%2Fetc%2Fpasswd
basil
質問者

お礼

早速回答ありがとうございます。 このファイルも確認したのですが、ルートやデーモンなどのユーザ名はリストされているものの、肝心なアカウントユーザがリストされていないんです…。

関連するQ&A

  • uid=0への変更

    AIX6.0で一般権限のユーザーIDのuidをroot権限のuid=0に変更したいと思っています。 usermod -u 0 <ユーザーID> 上記コマンドを実行したところ、既にuidは使われていますとエラーになってしまいました。 複数のIDをuid=0に変更するコマンドを教えていただけないでしょうか。 ご回答よろしくお願いします。

  • UID.GIDについて

    「CentOS release 5.5」で、Apache/2.2.3 ProFTPD Version 1.3.2 でWEBサーバを作り、ユーザ管理は、別立てのldapサーバで行い動いています。 ユーザからsuexec機能が欲しいということで実装すると、cgiが動かないという問合せがきました。 調べるとldap 上のUID.GID(hoge.hoge=UIDとGIDが同じ)と、ファイルシステム上(フォルダ、ファイル)のUID.GID(hoge.users)が異なる為、suexecが policy violation:を起こしていました。 両方のUID.GID(hoge.users)を一致させ動くようになりましたが、構築者(業者)は、UID.GIDがldapとファイルシステム上と異なる事で問題になるのはsuexec機能だけなので大きな問題ではないと主張しています。 質問: 今後、メールサーバ(postfix)等もldapを使う予定ですが、ldapとファイルシステム上のUID.GIDが異なる事でどの様な問題が起こる可能性があるのでしょうか。 ldapとファイルシステム上のUID.GIDを一致させないのは普通(default)のやり方なのでしょうか。 通常、/etc/passwd,group,shadowでアカウントは管理されていますが、これらとファイルシステム上のUID.GID は一致しています。→当然ldapにした場合も同じにすべきと私は考えていますがこの考えは正しいのでしょうか。 よろしくお願いします。

  • OpenLDAPの”uid”属性について質問です。

    OpenLDAPの”uid”属性について質問です。 【環境】 RHEL5(64-bit) OpenLDAP2.3.43 【質問内容】 OpenLDAPを認証サーバとして、Webアプリケーションを構築しようと考えています。 ユーザID:オブジェクトクラスinetOrgPersonにおける”uid”属性 パスワード:オブジェクトクラスPersonにおける”userPassword”属性 で作成していますが、1点困っています。 ユーザIDに大文字小文字の区別がされないのです。 この件、調べてみたところ、 uid属性の等価比較する場合のルール(EQUALITY)が 、大文字/小文字を区別しない 状態になっているのでは?と考えました。 OpenLDAP(に標準添付されるスキーマ定義ファイル)のデフォルト値としても EQUALITY caseIgnoreMatch となっているようです。 そこで、/etc/openldap/schema/core.schema の内容を確認したところ、 該当箇所は以下のようになっていました。 #attributetype ( 0.9.2342.19200300.100.1.1 # NAME ( 'uid' 'userid' ) # DESC 'RFC1274: user identifier' # EQUALITY caseIgnoreMatch # SUBSTR caseIgnoreSubstringsMatch # SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} ) また、他のスキーマ定義ファイルを見ても属性uidを定義している箇所は 存在しておりませんでした。 ここで疑問なのは、 ・属性uidの定義箇所はコメントアウトされており、未設定に見える ・ですが、大文字小文字の判断の問題はあれど、属性値としてのuidは  登録できているように見える です。 ・未記載の場合に適用されるデフォルト値があり、そちらを参照している 等あるのでしょうか? 最終的に当方が実施すべきと考えていることは、属性uidに対し EQUALITY caseExactMatch を実施する、とかんがえておりますが、上記の通りその実施箇所が わからなくなっております。 以上、ご存じの方がいらっしゃれば御回答頂きたく存じます。 (参考) slapd.confにて以下のように定義しており、他のスキーマ定義ファイルを 参照していることは無いと認識しております。 include /etc/openldap/schema/core.schema include /etc/openldap/schema/cosine.schema include /etc/openldap/schema/inetorgperson.schema include /etc/openldap/schema/nis.schema include /etc/openldap/schema/その他、独自スキーマ また、全てのスキーマ定義ファイルについて、キーワード”uid”で検索し、 有意な設定箇所が無いことを確認しております。

  • uidとgidの変更

    こんばんは。 RedHat Linuxを使用しています。 とあるユーザのuidとgidを変更したいのですが、 どのように変更すれば良いでしょうか?。 一旦ユーザの削除が必要でしょうか・・。 例: uid=500(oracle) gid=500(oinstall) を uid=501(oracle) gid=501(oinstall) また関連していくつかのOSファイルの編集も必要でしょうか。 細かくて恐縮ですが、 よろしくお願いします。

  • TeraStationでUIDがずれる現象

    バッファロー製の1TBのNAS(TeraStation)でファームを上げたらsambaのUIDがずれてユーザ不明(Unix_userとかいうID)になってしまいました。 仕方がないので改造ネタにあったtelnetが利用可能な形にしてログイン、chownでなんとか乗り切りましたが、日本語コードが通らず、chownで日本語のみのファイルやフォルダが指定できません。仕方が無いのでPCのファイル共有からアルファベット名に変更してからchownをかけるというなんとも手間のかかる作業。たまにこの現象が発生するので大変困ってます。 皆さんは同じ経験をされたことないでしょうか?

  • OracleのUID

    初歩的な質問ですが教えてください。 現在、RHEL4+Oracle10gを使用してデータベースを運用中ですが、 運用中にOSに登録してるOracleユーザのUIDは変更しても問題ないのでしょうか? 変更する必要に迫られ、再インストールしないといけないので考え中です。 もしUID、GIDを変更しても影響がないのであればそのまま使用したいのですが。 よろしくお願いします。

  • UID通知について

    携帯のサイトで画像をとろうとしたら、「UID通知がオフになっています」と表示されました。でも、my softbankでユーザーIDの設定をみてみると「通知する」に設定されています。どういうことでしょうか?

  • SuperServer の UID について

    とある事情からSuperServer6015P-8をベースにしたアプライアンスを担当し始めた超初心者です。 ”UID”という前後にあるボタンがどういう機能を持っているのかが分かりません。ユーザマニュアルや検索したりして調べてるのですが不明です。助けてください。よろしくお願いします。

  • UID通知はどこで設定すればいいんですか

    メールアドレス変更をしようとしたときに ユーザーIDの通知 などがでてきたのですが、 それを通知しないにしたところ、 そのあとアドレス変更などができなくなってしまいました。 アドレス変更を押しても、「オリジナルメール設定をご利用いただくには、UID通知の同意が必要です」となり、 それ以上は進めなくなってしまいます。 UID通知の同意はどこですればいいのでしょうか。 お早い返事まっています

  • UNIX系ユーザ登録で・・・

    UNIX系ユーザ登録で、8桁の数字(例:01234567)で構成されたユーザを登録したいのですが、Redhat9ではエラーになり登録できませんでした。他のUNIX系OSで試したいのですが持っていないため、登録できるかどうかご存知でしたら教えてください。またSolarisのNISを利用してこの8桁数字ユーザをどうしても利用したいのですが、できるできない(バージョンも含めて)を教えてください。