Практически в каждом дистрибутиве используется pam_env, который читает настройки из /etc/security/pam_env.conf и /etc/environment. Обычно он подключен для login, ssh, cron и таким образом заданные в этих файлах переменные будут видны всем процессам, запущенным из консоли либо по расписанию.
Кроме того, переменные можно задавать в локальных и глобальных конфигах шелла (/etc/profile, /etc/profile.d/*, /etc/bashrc, ...) , но это повлияет только на процессы, запускаемые из шелла.
Ещё могут быть какие-то специфичные для используемого дистрибутива варианты, например в Gentoo есть общесистемная /etc/env.d/*
Но вообще, это зависит от способа запуска софта, которому нужно скормить переменную. Может быть, надо указывать что-то в его конфигах. Для передачи специфичных переменных демонам в Debian обычно используется /etc/default/{service_name}, а в RedHat /etc/sysconfig/{service_name}. Но стоит проверить init-файл демона, читает ли он эти конфиги.