安装了 Sun Java 6 - 以 sudo 身份运行时出现配置问题

安装了 Sun Java 6 - 以 sudo 身份运行时出现配置问题

我已经在 Ubuntu 服务器上安装了 Sun Java 6,并按照以下说明在默认配置文件中设置了环境变量http://www.edugate.ie/workshop-guides/shibboleth-2-identity-provider-installation-linux-debian-or-ubuntu

然后我尝试运行 Java servlet 的安装程序 - 但当我以自己的身份运行它时,它无法在 /opt 中创建所需的目录。当我以 sudo 身份运行它时,我被告知 JAVA_HOME 不正确,它甚至没有启动安装程序 - 这难道不应该像我的普通用户一样来自 /etc/profile 吗?

答案1

不要通过 sudo 运行它,而是在 root shell 中运行它...
sudo su
然后检查您的环境变量并根据需要进行修复 echo $JAVA_HOME
然后运行安装程序或设置变量(如果需要设置)

答案2

尝试这个:

export JAVA_HOME=/path/to/java/home

例子:

export JAVA_HOME=/usr/lib/jvm/java-6-sun

然后像下面这样运行你的小程序:

sudo env JAVA_HOME=$JAVA_HOME your_applet_or_script

例子:

sudo env JAVA_HOME=$JAVA_HOME /usr/bin/eclipse

希望这可以帮助。

答案3

非常一般地讲(并且只是看看非常(简要地查看您链接的那些说明)您需要以非 root 用户身份运行 tomcat。这样更安全也更方便(因为您不必以 root 身份执行所有操作)。

但这也意味着 tomcat 必须在更高的端口上运行(例如 8080 或类似端口)。为了在更常见的端口 80 上为客户端请求提供服务,您需要在 Tomcat 前面的端口 80 上运行 Apache(说明中也概述了这一点),Apache 通过 mod_jk 在另一个端口上连接到 tomcat(例如 8009 (http) 或 8443 (https) 或类似端口)。

现在,为了在 Tomcat 中安装 Java 应用程序,只需 chown/chmod 您的 tomcat 目录,以便您的“Web 用户”(可能是您自己的非 root 用户帐户)可以写入它。例如,

 $ sudo mkdir /opt/tomcat

然后通常使用 chown (或者只是 chmod):

 $ sudo chown my_user:my_group /opt/tomcat

现在,以非 root 帐户执行所有操作,无需 sudo。如果这是共享服务器,最好使用半受限的“web-admin”帐户,而不是使用您自己的登录名。

相关内容