Nginx安装后command not found
问题:我在我的Debian 12服务器上安装了nginx,安装过程完全按照官方文档Installing NGINX Open Source | NGINX Documentation。刚开始,一切正常,运行sudo nginx -v
也正确返回了nginx的版本😇。
但是最近我运行相同的命令,却给我返回command not found
:
sudo nginx
sudo: nginx: command not found
nginx
bash: nginx: command not found
无论是sudo nginx
还是nginx
都给我返回相同的结果😣。
解决方案:想要解决这个问题,首先你需要确定nginx的安装路径。它可能安装在/usr/local/sbin
或 /usr/sbin
中。一旦你找到你的nginx路径,比如/usr/local/sbin/nginx
,直接运行
sudo /usr/local/sbin/nginx -v
nginx version: nginx/1.22.1
就会输出nginx的版本,问题解决。
如果你不想每次都输入nginx的完整路径,那么你必须根据下面的做法将nginx的路径写进环境变量里:
首先,运行echo $PATH
输出环境变量。你可能会发现nginx的路径并不在输出的结果里。同时,运行命令which nginx
得到的结果也是空。因此,你需要检查环境变量的文件:
sudo vim /etc/profile
在/etc/profile
中, 我发现 /usr/local/sbin
和 /usr/sbin
都只在用户是root时候的 PATH
中。因此,我们需要将/usr/local/sbin
或 /usr/sbin
添加到另一种情况的PATH
中:
if [ $(id -u) -eq 0 ]; then
PATH="/usr/local/sbin:/usr/local/sbin:..."
else
PATH="/usr/local/sbin:/usr/local/sbin:..."
fi
export PATH
保存好/etc/profile
后,重置命令行
source /etc/profile
然后运行nginx -v
,看看问题是否得到解决。不出意外的话,现在已经能输出nginx的版本了😄
nginx -v
nginx version: nginx/1.22.1
暂无评论,来发布第一条评论吧!