我在宏碁C720 Chromebook上运行Lubuntu LXDE,没有太多空间。我需要运行Android SDK,但它占用了很多空间。现在我还想在外部硬盘驱动器上安装JDK;然而,我似乎做不好。我将.tar.gz文件解压缩到外部硬盘驱动器的一个目录中,并设置了路径,但如果我进入lxterminal查看版本,它看起来像这样:
(Android_Dev)taserman21@localhost:/$ java -version
bash:/media/movable/USB Drive/java/jdk1.8.0_45/bin/java: Permission denied
我已经尝试更改整个外部硬盘驱动器,目录和java文件本身的权限,但似乎没有任何工作。
我也手动安装了Ant,并试图运行它,但发生了以下情况:
(Android_Dev)taserman21@localhost:~$ ant -version
错误:没有正确定义JAVA_HOME。
我们无法执行/media/movable/USB Drive/java/jdk1.8.0_45/bin/java
请帮助,因为我还没有找到一个教程,甚至是否这是可能的。
这个问题是由Ubuntu在默认设置下拒绝执行NTFS分区中的文件引起的。(Lubuntu是Ubuntu的一个变种)
如果您重新挂载外部硬盘驱动器没有noexec
和users
选项(需要root),或者如果您有EXT3
格式化的外部硬盘驱动器(需要时间和/或金钱:-)),它将工作得很好。请参阅下面的示例来更改挂载选项。也可以使用图形用户界面更改此挂载选项。
你应该知道,NTFS实际上是 is POSIX兼容和支持权限,如果适当地挂载。
如果您想了解更多,您应该通过发出命令阅读ntfs-3g
的手册页:
man ntfs-3g
似乎你知道JAVA_HOME
环境变量并正确设置它,因为否则shell无法找到它,因为它可以在你的输出中找到它。
正如Ho1所说,您不能在ntfs分区中执行某些操作,默认情况下
在ntfs分区上执行文件的方法在这里
第一个问题是,如果你试图从NTFS分区执行某些操作,Ubuntu默认不允许这样做。编辑文件/etc/fstab
并从映射中删除noexec
命令。
第二个问题可能与您的环境如何设置有关。在控制台中设置了环境属性吗?最简单的方法是从命令行运行set
。它将显示该控制台的所有属性。如果你没有看到JAVA_HOME
,那么你需要set
和export
它。
set JAVA_HOME=/PATH/TO/YOUR/JDK
export JAVA_HOME