Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash 为什么服务以root用户身份运行,而用户名设置为其他名称_Bash_Upstart - Fatal编程技术网

Bash 为什么服务以root用户身份运行,而用户名设置为其他名称

Bash 为什么服务以root用户身份运行,而用户名设置为其他名称,bash,upstart,Bash,Upstart,我正在使用Upstart为我的Python应用程序设置Linux服务。下面是/etc/init中的conf文件/ description "AAE client app" start on runlevel [2345] stop on runlevel [!2345] respawn env PATH=/home/ec2-user/aae_client/env/bin env PROGRAM_NAME="aae" env USERNAME="ec2-user" # Main scrip

我正在使用Upstart为我的Python应用程序设置Linux服务。下面是/etc/init中的conf文件/

description "AAE client app"

start on runlevel [2345]
stop on runlevel [!2345]

respawn

env PATH=/home/ec2-user/aae_client/env/bin
env PROGRAM_NAME="aae"
env USERNAME="ec2-user"

# Main script to be run
script
    echo "[`date -u +%Y-%m-%dT%T.%3NZ`] (sys) Ready to run..." >> /var/log/$PROGRAM_NAME.sys.log

    export HOME="/home/ec2-user"
    echo $$ > /var/run/$PROGRAM_NAME.pid

    cd /home/ec2-user/aae_client
    exec python -m app.run >> /var/log/$PROGRAM_NAME.sys.log 2>&1
end script
我已经将用户名设置为ec2用户。但是,当我运行该服务时,它显示它是由root用户运行的。显然,其他变量(如PATH)设置正确。为什么在指定USERNAME时它仍以root用户身份运行?

更改USERNAME或规范用户变量不会更改进程运行的上下文。看一看这张照片