画餅展覧会

2009 年 8 月 30 日

Mac OS X Leopardでuid/gid変更

カテゴリー: Macintosh — jk78 @ 7:08 PM

逃げ回ってたのだが、とうとうMac OS Xのuid/gidを変更することになった。いろいろあってね。

TigerまではNeXT譲りのNetInfoがあったので簡単(知ってる人には)だったのだが、LeopardにはNetInfoが無い、などと何を2年遅れの話題を。でもあんまり情報ありませんね。調べるのが面倒だったから、書いておこうかと。

System PreferenceのAccauntsで右クリックからAdvanced Optionsを選べばUser ID/Group IDの変更はできますが、ディスク上のファイルのuid/gidはそのままです。rootユーザーを有効にしてrootとして作業するのがいいでしょうね。二度とログインできない巨大文鎮になっても知らんぞ。rootユーザーはDirectory UtilityのEditメニューから有効にします。

で、AccauntsでUser IDは変更してくれるんだけど、Group IDを変更しても、ユーザーのデフォルトグループの数値が変わるだけで、gourpデータベースは何の変更もありません。groupのgid変更は、Directory Utilityを使ってもできるのかも知らんけど、ターミナルからdsclコマンド(Directory Service CLient?)を使ったほうが速そう。シェルからdsclと打ち込んでプロンプトが出たら、

> -read /Local/Default/Groups/groupname

と打ち込めば、現在の情報を表示します。gid変更するには

> -change /Local/Default/Groups/groupname PrimaryGroupID <古い番号> <新しい番号>

と打ち込めば変更できます。

あとはターミナルからfindして古いuid/gidを総ざらいしてあげればOK。

コメントはまだありません »

コメントはまだありません。

このコメント欄の RSS フィード トラックバック URL

コメントをどうぞ

Powered by WordPress