В настоящее время у меня нет 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
пользователь? Может ли это потребоваться и для других систем баз данных?
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:
Это проблема PATH. Mac OSX Lion теперь включает Postgresql в систему. Если вы выполните команду which psql, вы, скорее всего, увидите usr / bin / psql вместо usr / local / bin / psql, который является правильным для HomeBrew. Если вы запустите brew doctor, вы должны получить сообщение о том, что вам нужно добавить usr / local / bin в заголовок вашей переменной env PATH.
Редактирование вашего .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