1、在linux系统上只有root用户才可以访问1024以下的端口号,其余用户不能访问
今天在centos系统下,用非root用户启动 tomcat,默认端口是80,结果启动失败。
解决办法:
用sudo执行:
sudo ./startup.sh
结果报:
username is not in the sudoers file. This incident will be reported
需要设置 用户 可以用sudo执行命令
2、让用户能够以 sudo 执行命令
以 root 用户执行:
visudo
命令,编辑/etc/sudoers 文件。
在 root ALL=(ALL) ALL 下面添加一行
username ALL=(ALL) ALL
如果不想每次都输入密码可以用这一行
username ALL=(ALL) NOPASSWD:ALL
wq保存。
再次用 加入的用户执行以下命令:
sudo ./startup.sh
结果,每次都需要输入密码。
3、sudo执行脚本无需输入密码
执行:
visudo
编辑,将 #%wheel 前面的#去掉:
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL
## Same thing without a password
%wheel ALL=(ALL) NOPASSWD: ALL
wq保存。
将用户加入 wheel 组:
gpasswd -a YourUserName wheel
4、sudo执行脚本带不出环境变量
经过上面的设置,再次用该用户启动 tomcat,发现:
sudo ./startup.sh
找不到 JAVA_HOME 环境变量。
可以通过:
sudo -E ./startup.sh
执行解决。
本文详细介绍了在 CentOS 系统中,非 root 用户使用 sudo 权限启动 Tomcat 的步骤及配置环境变量的解决方法,包括设置 sudo 权限、加入 wheel 组以及解决环境变量找不到的问题。

1万+

被折叠的 条评论
为什么被折叠?



