После обновления Perforce он больше не запустится. Я исправил несколько вещей, например добавил переменную env P4PORT в файл master.conf
. Раньше в этом не было необходимости. Я также вручную восстановил БД из последнего файла журнала. Кроме того, если я запускаю p4d в командной строке, он работает нормально с пустой базой данных.
Вот текущие ошибки, которые я получаю:
× helix-p4dctl.service - LSB: Starts all Perforce services
Loaded: loaded (/etc/init.d/helix-p4dctl; generated)
Active: failed (Result: exit-code) since Thu 2024-05-30 09:45:30 EDT; 1h 49min ago
Docs: man:systemd-sysv-generator(8)
Process: 7496 ExecStart=/etc/init.d/helix-p4dctl start (code=exited, status=1/FAILURE)
CPU: 39ms
May 30 09:45:28 myserver p4dctl[7505]: error: Connect to server failed; check $P4PORT.
connect: 127.0.0.1:1666: Connection refused
May 30 09:45:28 myserver p4dctl[7507]: error: Connect to server failed; check $P4PORT.
connect: 127.0.0.1:1666: Connection refused
May 30 09:45:28 myserver p4dctl[7508]: error: Connect to server failed; check $P4PORT.
connect: 127.0.0.1:1666: Connection refused
May 30 09:45:29 myserver p4dctl[7509]: error: Connect to server failed; check $P4PORT.
connect: 127.0.0.1:1666: Connection refused
May 30 09:45:30 myserver p4dctl[7501]: error: 'master' p4d: '/opt/perforce/sbin/p4d -p ssl:localhost:1666' exited with status 255.
May 30 09:45:30 myserver p4dctl[7501]: Started 0 services.
May 30 09:45:30 myserver p4dctl[7501]: error: Not all services started successfully.
May 30 09:45:30 myserver systemd[1]: helix-p4dctl.service: Control process exited, code=exited, status=1/FAILURE
May 30 09:45:30 myserver systemd[1]: helix-p4dctl.service: Failed with result 'exit-code'.
May 30 09:45:30 myserver systemd[1]: Failed to start LSB: Starts all Perforce services.
Мой конфигурационный файл:
#-------------------------------------------------------------------------------
# p4dctl configuration file for Helix Core Server
#-------------------------------------------------------------------------------
p4d master
{
Owner = perforce
Execute = /opt/perforce/sbin/p4d
Umask = 077
# Enabled by default.
Enabled = true
Environment
{
P4PORT = ssl:localhost:1666
P4ROOT = /opt/perforce/servers/master/root
P4USER = super
P4SSLDIR = ssl
PATH = /bin:/usr/bin:/usr/local/bin:/opt/perforce/bin:/opt/perforce/sbin
# Enables nightly checkpoint routine
# This should *not* be considered a complete backup solution
MAINTENANCE = true
}
}
Посмотрите в файле журнала экземпляра P4D (возможно, вы захотите настроить P4LOG для регистрации в файле; по умолчанию используется stderr) на предмет ошибки, возникающей при запуске. Ошибки запуска сервера почти всегда являются одними из следующих:
p4d -xu
для переноса базы данных (исправление: сделайте это)