Создание пользователя postgres в OSX LION

В настоящее время у меня нет postgres пользователь.

~$ sudo su - postgres
Password:
su: unknown login: postgres

Итак, я следовал этим инструкциям как быстрый старт postgres http://www.sd-kyber.com/library/onlineNotes/psqlOSX.html, но на шаге 5где они создают пользователя, они ссылаются на страницу http://developer.apple.com/internet/opensource/postgres.html, который является неработающей ссылкой.

Какие шаги для создания postgres пользователь? И еще вопрос, почему postgres требуют иметь postgres пользователь? Это тот случай, когда другие системы баз данных требуют этого также?

2 ответа

Решение

Lion действительно имеет пользователя postgres (и даже группу postgres), но его имя имеет префикс "_" (как большинство системных учетных записей в последних версиях OS X):

$ id _postgres
uid=216(_postgres) gid=216(_postgres) groups=216(_postgres),12(everyone),61(localaccounts)

Postgres требует пользователя, потому что в Unix все службы часто имеют своего собственного пользователя по соображениям безопасности. Это ограничивает возможность захвата всей системы, если она была нарушена.

Теперь OSX Lion поставляется в комплекте с PgSQL, поэтому нет причин для его установки.

Двоичный файл можно найти по адресу: /usr/bin/psql или введите в cmd psql -d postgres -U postgres

Если это не помогло, и вы обновили свою систему со Snow Leopard до Lion:

Переполнение стека:

Это проблема ПУТИ. Mac OSX Lion теперь включает в себя Postgresql. Если вы сделаете psql, вы, скорее всего, увидите usr/bin/psql вместо usr/local/bin/psql, который является правильным для HomeBrew. Если вы запустите brew doctor, вы получите сообщение о том, что вам нужно добавить usr / local / bin в заголовок переменной PATH env.

Отредактируйте ваш.bash_profile или.profile, или какую бы оболочку вы не использовали и добавьте: export PATH=/usr/local/bin:$PATH

в качестве первого экспорта для PATH, либо выйдите из сеанса оболочки, либо создайте файл с исходным кодом ~/.bash_profile, и теперь все должно быть в порядке.

Вы также можете отредактировать / etc / paths и убедиться, что / usr / local / bin находится сверху.

Если по какой-либо другой причине вы все еще хотите добавить пользователя:

# dscl / -create /Users/portingunix
# dscl / -create /Users/portingunix UserShell /bin/bash
# dscl / -create /Users/portingunix RealName "Porting Unix 
# dscl / -create /Users/portingunix UniqueID 503
# dscl / -create /Users/portingunix PrimaryGroupID 1000
# dscl / -create /Users/portingunix NFSHomeDirectory /Local/Users/portingunix
# passwd portingunix
Другие вопросы по тегам