[Unit] Description=TOTVS DBAccess Daemon # Garante que inicie após a rede estar pronta After=network.target [Service] # DBAccess roda em modo daemon, então Type=forking é obrigatório. Type=forking # Arquivo PID que o DBAccess deve gerar e que o systemd monitorará. PIDFile=/var/run/totvsdbaccess.pid # 1. Defina o caminho ABSOLUTO para o diretório do DBAccess. # Exemplo: /opt/totvs/dbaccess DBACCESS_PATH=<${INSTALL_PATH}/dbaccess/> # Define a variável de ambiente crucial para o DBAccess encontrar suas libs (.so) Environment=LD_LIBRARY_PATH=${DBACCESS_PATH} # Comando de Início: Executa o binário do DBAccess em modo daemon. # A chave "dbaccess64" é o nome comum do binário do DBAccess 64-bit no Linux. # Substitua por 'dbaccess' ou outro nome, se necessário. ExecStart=/bin/bash -c "exec ${DBACCESS_PATH}/dbaccess64 daemon" # Comando de Parada: Envia o sinal de término (SIGTERM -15) para o PID monitorado ExecStop=/bin/kill -TERM $MAINPID # 2. Usuário de Operação (MUITO IMPORTANTE!) # Substitua pelos valores corretos para segurança e permissão de arquivos. User= Group= # 3. Limites de Recursos (substitui os ulimits do script antigo) # Ajuste conforme sua necessidade (Ex: 32768) # LimitNOFILE=32768 # LimitAS=2G # Configuração de reinicialização em caso de falha. Restart=on-failure RestartSec=5s [Install] # Habilita o serviço para iniciar no boot WantedBy=multi-user.target