Персональный блог zaqwery

Start PostgreSQL server on login (Mac OS X Snow Leopard)

  •  
January 25, 2010 01:080 коммент.

 

Тут описано решение проблемы с ошибкой/ Here is the solution to the 'dubious ownership error'
 
launchctl: Dubious ownership on file (skipping)
 
подходит для любого .plist, в моем случае это был автозапуск сервера PostgreSQL/ You may use it with any .plist file, in my case that was automatically loading PGDB server on login
 
 
 После установки PostgreSQL в /usr/local (http://zaqwery.rubyclub.com.ua/blogs/159-Установка-Git--Homebrew--Ruby-Gems--Nginx--Thin--PostgreSQL-на-Mac-OS-X-Snow-Leopard.html) мы хотим чтобы сервер БД запускался при любом входе в систему
 
1.создаем файл/create file
 
 org.postgresql.postgres.plist
 
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>KeepAlive</key>
  <true/>
  <key>Label</key>
  <string>org.postgresql.postgres</string>
  <key>ProgramArguments</key>
  <array>
    <string>/usr/local/bin/postgres</string>
    <string>-D</string>
    <string>/usr/local/var/postgres</string>
    <string>-r</string>
    <string>/usr/local/var/postgres/server.log</string>
  </array>
  <key>RunAtLoad</key>
  <true/>
  <key>UserName</key>
  <string>your_user</string>
  <key>WorkingDirectory</key>
  <string>/usr/local</string>
</dict>
</plist>
 
2. сохраняем его в/save file to /Library/LaunchDaemons/
3. меняем юзера на суперюзера/ change user to root
 
sudo chown -R root:wheel /Library/LaunchDaemons/org.postgresql.postgres.plist
 
4. устанавливаем .plist в автозагрузку/ setting the .plist file
 
sudo launchctl load /Library/LaunchDaemons/org.postgresql.postgres.plist
 
вот и все, перезагружаетесь и сервер БД автоматически запускается
 
 
Для тех кто основательно перешел на Homebrew нужно сделать предыдущие действия в другой папке/ for those who use Homebrew and want autoload .plist from parent Cellar directory
 
sudo chown -R root:wheel /usr/local/Cellar/postgresql/8.4.2/org.postgresql.postgres.plist
sudo launchctl load -w /usr/local/Cellar/postgresql/8.4.2/org.postgresql.postgres.plist
 
Во время следующей перезагрузки сервер БД уже будет запущен/ Next time you login PGDB server will have already been loaded 
 
Good luck!
 
, , , , , , , , , , , ,
Зарегистрируйтесь для добавления сообщений