sshでリモートログインしたMac OS X Leopard上でアカウント追加を行い、sudoでそのアカウントになれるようにする必要があったので調べてみたところ、dscl(Directory Service command line utility)というコマンドで行えることがわかりました。
以前はNetInfo(NetInfo Manager)でゴニョゴニョやったものですが、LeopardからはバックエンドがdsLocalというデータベースに変わったので、このあたりの勝手も変わっているようです。
アカウントの一覧
$ dscl . -list /Users
アカウントの追加
$ sudo dscl . -create /Users/foo
アカウントの詳細表示
$ dscl . -read /Users/foo
また、そのままでは新しく追加したアカウントでのログインができないので、UIDの設定、ホームディレクトリの設定、パスワードの設定も行います。
UIDの設定
$ sudo dscl . -create /Users/foo UniqueID 502
ホームディレクトリの設定
$ sudo dscl . -create /Users/foo NFSHomeDirectory /Users/foo
パスワードの設定
$ sudo passwd foo
以上で、新たに追加したfooアカウントにsudoすることができるようになりました。
関連する記事:
- Chefを使用してEC2インスタンスを操作するチュートリアル:その1
- よろしい、ならばxmlstarletだ
- Chefを使用してEC2インスタンスを操作するチュートリアル:その2
- ruby+html+javascriptでデスクトップアプリケーション開発
- AmazonCloudFront-CustomOriginを試してみた
タグ: Mac
