I have created a linux service that runs as a deamon (and gets started from /etc/init.d/X). I need to set some environment variables that can be accessed by the application.
Here's the scenario. The application is a bunch of Perl AGI scripts that depend on (and therefore need to run as) asterisk user but asterisk doesn't have a shell. Ideally I'd just set this in /home/asterisk/.bashrc but that doesn't exist for asterisk.
How can I set environment variables for my app in the asterisk user's running environment so that my app can use them?
To make the change permanent, enter the command PATH=$PATH:/opt/bin into your home directory's . bashrc file. When you do this, you're creating a new PATH variable by appending a directory to the current PATH variable, $PATH .
In the Settings window, under Related Settings, click Advanced system settings. On the Advanced tab, click Environment Variables. Click New to create a new environment variable. Click Edit to modify an existing environment variable.
Either set them in the startup script (/etc/init.d/yourdaemon
), or put a line in that file that looks like:
. /etc/yourdaemon.env
and put the environment variables in that file, using the syntax export VAR=value
. On Red Hat-like systems, I believe the correct place for such a file is /etc/sysconfig
. Debian/Ubuntu seems to have /etc/default
for this purpose.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With