32.3 C
Colombia
lunes, julio 7, 2025

homebrew – El demonio PostgreSQL no funciona


Tengo problemas para crear un demonio exitoso. Antes de que PostgreSQL comenzara a nombrar sus carpetas con un símbolo @, tenía un demonio en funcionamiento, pero ahora algo, en algún lugar, ha cambiado y no puedo entenderlo.

Si corro:

sudo -u _systemuser /choose/homebrew/choose/postgresql@14/bin/postgres -D /choose/homebrew/var/postgresql@14

PostgreSQL comienza bien.

Sin embargo, este plist no funciona:

<?xml model="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist model="1.0">
<dict>
    <key>Label</key>
    <string>homebrew.mxcl.postgresql</string>
    <key>RunAtLoad</key>
    <true/>
    <key>GroupName</key>
    <string>_systemuser</string>
    <key>UserName</key>
    <string>_systemuser</string>
    <key>ProgramArguments</key>
    <array>
        <string>/choose/homebrew/bin/postgres</string>
        <string>-D</string>
        <string>/choose/homebrew/var/postgres</string>
    </array>
</dict>
</plist>

En LaunchControl, cube “Este trabajo falló sin motivo aparente”.

Entonces, si habilito el registro:

<?xml model="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist model="1.0">
<dict>
    <key>Label</key>
    <string>homebrew.mxcl.postgresql14</string>
    <key>RunAtLoad</key>
    <true/>
    <key>GroupName</key>
    <string>_systemuser</string>
    <key>UserName</key>
    <string>_systemuser</string>
    <key>ProgramArguments</key>
    <array>
        <string>/choose/homebrew/choose/postgresql@14/bin/postgres</string>
        <string>-D</string>
        <string>/choose/homebrew/var/postgres@14</string>
    </array>
    <key>StandardErrorPath</key>
    <string>/choose/homebrew/var/log/[email protected]</string>
    <key>StandardOutPath</key>
    <string>/choose/homebrew/var/log/[email protected]</string>
</dict>
</plist>

Recibo el error “El usuario _systemuser no puede escribir en el archivo: “file:///choose/homebrew/var/log/[email protected]“”

Cambié los permisos a esas carpetas con:

sudo chown -R _systemuser /choose/homebrew/var/postgresql@14
sudo chgrp -R _systemuser /choose/homebrew/var/postgresql@14

Sin embargo, el uso de este plist de registro genera un nuevo error en LaunchControl:

2024-12-26 11:06:02.649106 <Error> Service couldn't initialize: posix_spawn(/choose/homebrew/choose/postgresql@14/bin/postgres), error 0xd - Permission denied

Pero como dije al principio, PostgreSQL se inicia bien desde CLI.

Perplejo. ¿Alguna concept sobre cuál podría ser el problema?

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles