在 CentOS 上给 Java 配置权限,通常分几种常见场景,我按最常见的给你说:
java 可执行文件加执行权限如果你是自己上传/解压的 JDK(不是 yum 安装的),需要先给权限:
chmod +x /usr/local/java/bin/java
如果是整个 JDK 目录:
chmod -R 755 /usr/local/java
编辑环境变量文件:
vi /etc/profile
在最后加:
export JAVA_HOME=/usr/local/java
export PATH=$JAVA_HOME/bin:$PATH
生效:
source /etc/profile
验证:
java -version
如果你是普通用户报错 Permission denied:
chown -R 用户名:用户组 /usr/local/java
chmod -R 755 /usr/local/java
sudo java -jar xxx.jar
普通用户不能绑定 80/443:
# 用 root 启
sudo java -jar app.jar
# 或放行端口
sudo setcap CAP_NET_BIND_SERVICE=+eip /usr/local/java/bin/java
确保 Java 用户有读写权限:
chmod 755 /data
chown appuser:appuser /data
如果你是 Java 服务:
vi /etc/systemd/system/javaapp.service
[Service]
User=appuser
ExecStart=/usr/local/java/bin/java -jar /opt/app.jar
systemctl daemon-reload
systemctl start javaapp
查看:
getenforce
临时关:
setenforce 0
永久关(不推荐生产):
vi /etc/selinux/config
SELINUX=disabled
如果你能说清楚:
我可以直接给你精确命令。