自学内容网 自学内容网

Linux下如何实现不用加路径调用启动脚本

配置Systemctl启动

Linux下便于启停服务,可以配置systemcl,配置如下描述

说明

只有root用户可配置,文件路径为 /etc/systemd/system/XXX.service,本文将用nginx.service举例说明

1、创建文件

首先创建一个nginx.service文件,用于配置nginx的systemctl服务。可以使用任何文本编辑器,

vi /etc/systemd/system/nginx.service

2、在Nginx.service中增加以下内容,并保存关闭文件即可

[Unit]
Description=nginx
After=network.target

[Service]
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
PIDFile=/usr/local/nginx/logs/nginx.pid
PrivateTmp=true

[Install]
WantedBy=multi-user.target

3、重载使systemctl生效

sudo systemctl daemon-reload

4、试验systemctl启动、停止等操作

# 启动
systemctl start nginx
# 停止
systemctl stop nginx
# 重启
systemctl restart nginx
#状态查看
systemctl status nginx

5、如果没有root,配置环境变量

有公司为了安全不给开放root权限,只给appuser,那怎么做到方便启动nginx,不用每次进到sbin下执行命令呢,那就配环境变量即可

#1 修改用 户级环境变理
vi ~/.bash_profile

#2 追加上nginx配置并保存退出
# Source /root/.bashrc if user has one
[ -f ~/.bashrc ] && . ~/.bashrc
NGINX_HOME=/usr/local/nginx
PATH=$PATH:$NGINX_HOME/sbin
export PATH
~
# 3使环境变量生效
source ~/.bash_profile

#可以尝试任意地方启nginx了,直接nginx即可,无需路径或加./



后记

配环境变量时,写错了,生效后系统 自带的所有命令都无法使用了,包括vi、ps、cd命令,意味着无法找到环境变量文件进行修改了,慌的一批,不过还好聪明点,在当前窗口重新export了一下环境变量,然后可以用命令,进行~/.bash_profile修改,导系统环境变量让当前窗口生效的命令如下:

 export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin


原文地址:https://blog.csdn.net/xuxiannian/article/details/142529707

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!