A melhor maneira de saber quantos descritores de arquivos abertos seu processo tem é usar:
$ ls /proc/8301/fd/ | wc -l
(Assumindo o PID 8301, como em seu log.)
A execução de lsof
percorrerá a árvore /proc
inteira e tentará resolver os nomes de todos os arquivos (são pseudo-links simbólicos e precisam de uma chamada para cada link para resolução), portanto, executar lsof
levará um muito tempo (dependendo do quão ocupada sua máquina é), então quando você olhar para o resultado, é possível que tudo já tenha mudado. Usar ls /proc/${pid}/fd/
será rápido (apenas uma chamada readdir), muito mais provável de capturar algo próximo da situação atual.
Em relação à solução do problema, você pode considerar aumentar o número de descritores de arquivos permitidos para o seu serviço, o que pode ser feito por definindo a diretiva LimitNOFILE=
no seu arquivo unitário systemd.