環境:MacOSX10.5.2 PostgreSQL8.3.0
PostgreXをインストールすると、ユーザが作成されない(っぽい。うまくいってるのかなあ?いってたら教えてください。)
postgersグループとユーザを作成
(ここがLeopardで変わったところ。いくつかサイトに紹介がありますが、それぞれちょっとずつ違いますね。PrimaryGroupIDなどは下記のように-listで確認して、無いものになってればよいようです。)
sudo dscl . -create /Groups/_postgres
sudo dscl . -create /Groups/_postgres PrimaryGroupID 110
sudo dscl . -append /Groups/_postgres RecordName postgres
sudo dscl . -create /Users/_postgres
sudo dscl . -create /Users/_postgres UniqueID 110
sudo dscl . -create /Users/_postgres PrimaryGroupID 110
sudo dscl . -create /Users/_postgres UserShell /bin/bash
sudo dscl . -create /Users/_postgres RealName "PostgreSQL Server"
sudo dscl . -create /Users/_postgres NFSHomeDirectory /usr/local/pgsql
sudo dscl . -append /Users/_postgres RecordName postgres
作成済みのユーザの確認
sudo dscl . -list /Users
作成済みのグループの確認
sudo dscl . -list /Groups
作成したユーザの削除
sudo dscl . -delete /Users/postgres
作成したグループの削除
sudo dscl . -delete /Groups/postgres
作成したユーザ情報の確認
sudo dscl . -read /Users/postgres
Password:(きかれます)
OKだと以下のように表示される。
AppleMetaNodeLocation: /Local/Default
GeneratedUID: 848E3A50-76E0-4766-B4D0-E6CA91344C60
NFSHomeDirectory: /usr/local/pgsql
PrimaryGroupID: 110
RealName:
PostgreSQL Server
RecordName: _postgres postgres
RecordType: dsRecTypeStandard:Users
UniqueID: 110
UserShell: /bin/bash
コンパイルのときにパーミッションで怒られたら
sudo chown -R postgres:postgres /usr/local/src/postgresql-8.3.0
※-Rはする必要ないと言われたけど、いろいろやってたので、こうしないと、.shのファイルとかにroot権限がついたままになってしまったの。
sudo chown postgres:postgres /usr/local/pgsql
↑は同じ。
postgresユーザになる
(ここでずっとひっかかってた。。。)
sudo su - postgres
psqlもきた
postgresユーザでpsql hogedbするとちゃんときた。
hogedb=# SELECT CURRENT_DATE;
dsclのUserShell /bin/bashのところなのかなあ。
ユーザ作成の時に、下記のように書いてあるサイトもありました。
sudo dscl . create /Users/postgres shell /dev/null
sudo dscl . create /Users/postgres shell /usr/bin/false
0 件のコメント:
コメントを投稿