アフィリエイト広告を利用しています

その他の最新記事

macのユーザ情報管理はOpenDirectoryだった

ことの発端は、~/.bashrcに自分用の設定を追加しようと思い立った時でした。

OSX では~/.bashrcファイルがデフォルトで存在しない、ということに気づきます。

新規に作成した.bashrcはそのままでは有効になりません。
man bashによると
bash起動時に/etc/profileを読み込み、さらに~/.bash_profile、 ~/.bash_login 、 ~/.profileを探すようです。

~/.bash_profieに~/.bashrcへの参照を追加すればいいことが判ります。


ターミナルを起動した時に実行させるshellはbashなのか?
と何気なく、確認しました。
/etc/passwd、/etc/master.passwdファイルを確認しますが、自分で作ったアカウントが一切ありません

man loginを確認したところSEE ALSOにchpassというコマンドがありました。
chpassは、ユーザーデータベース情報の更新、追加用のコマンドでした。

$chpass

# Changing user information for USERNAME.
# Use "passwd" to change the password.
##
# Open Directory: /Local/Default
##
Shell: /bin/bash
Full Name: FULL USER NAME
Office Location:
Office Phone:
Home Phone:

実ファイルは一体どこにあるのか、さっぱりわかりませんが
どうやらこのコマンドでshellがbashであることが確認できるようです。

Open Directoryというキーワードに気づきます。

ここでgoogle先生に確認したところ

dsclというコマンドがDirectory Service command line utility、つまりOpen Directoryを操作するためのコマンドであることがわかりました


macに登録したユーザー一覧は以下コマンドで見ることができました。
$dscl
Entering interactive mode... (type "help" for commands)
> cd Local/Default/Users
> ls
登録済みユーザのリストが出力されます。

さらに
> cd ユーザ
> read
とすることで
Pciture(ログインのイメージ画像)、PrimaryGroupID、RealName、RecordName、UniqueID、UserShellなどの情報が獲得できます。

/Contact/Users/でも同様の結果が得られました。

試していませんが、writeも可能なので設定の変更もできるようです。

 

 

macのユーザ情報管理はOpenDirectoryだった
サブコンテンツ

コメント

comments powered by Disqus

コメントシステムを利用したくない方はお問い合わせからお願いします。
2013.8.19 DISQUS(外部コメントサービス)の利用を開始しました。
Facebook, google, Twitter等のアカウントで投稿可能です。

Microsoft 365 プランの比較 icon

(Microsoft 365 Personal 2,500 円 キャッシュバック キャンペーン 実施中 2022/3/30まで)

  • 祝!初マック(mac book retina 13インチ)!retina美しいです^^マックに関係するTips、情報、はまったことの解決策等
  • Mac野郎なのか
  • プロフィール

このページの先頭へ