Leopardでコマンドラインからアカウントを追加する

記事タイトルとURLをコピーする

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することができるようになりました。