scala-devel文件夹权限如果用户不是root用户,并且tmp文件夹的访问权限有限 - java.io.IOException:权限被拒绝
问题描述:
我的Ubuntu机器有两个用户(root和Bikram)并且tmp文件夹具有以下权限。scala-devel文件夹权限如果用户不是root用户,并且tmp文件夹的访问权限有限 - java.io.IOException:权限被拒绝
**drwxr-xr-x 1 root root tmp**
现在我试图与比克拉姆用户在控制台
$scala helloworld.scala
运行helloworld.scala
(Console.println("Hello, world!")
)程序,但它已抛出以下异常
java.io.IOException: Permission denied
at java.io.UnixFileSystem.createFileExclusively(Native Method)
at java.io.File.createTempFile(File.java:2024)
at scala.reflect.io.File$.makeTemp(File.scala:29)
at scala.reflect.io.Directory$.makeTemp(Directory.scala:27)
at scala.tools.nsc.ScriptRunner.compile$1(ScriptRunner.scala:93)
at scala.tools.nsc.ScriptRunner.$anonfun$withCompiledScript$2(ScriptRunner.scala:156)
at scala.tools.nsc.ScriptRunner.runScript(ScriptRunner.scala:124)
at scala.tools.nsc.ScriptRunner.runScriptAndCatch(ScriptRunner.scala:200)
at scala.tools.nsc.MainGenericRunner.runTarget$1(MainGenericRunner.scala:63)
at scala.tools.nsc.MainGenericRunner.run$1(MainGenericRunner.scala:88)
at scala.tools.nsc.MainGenericRunner.process(MainGenericRunner.scala:99)
at scala.tools.nsc.MainGenericRunner$.main(MainGenericRunner.scala:104)
at scala.tools.nsc.MainGenericRunner.main(MainGenericRunner.scala)
相同的节目我已经重新运行用root用户它工作,并在tmp文件夹内scala-develroot已创建。
那么如何处理这个问题呢?我不想使用root作为用户,而且我也无法更改文件夹权限tmp。有什么方法可以指定一个目录来写scala-develroot?
Note :
[email protected]:/tmp# scala -version
Scala code runner version 2.12.2 -- Copyright 2002-2017, LAMP/EPFL and Lightbend, Inc.
在此先感谢。
答
您必须运行scala helloworld.scala
住里面的/ tmp目录只根访问。解决您的问题的办法是将helloworld.scala
复制到用户Bikram有权访问的任何其他目录。并运行停留在该目录中的命令。
注意scala
可执行文件应该存在为用户比克拉姆和SCALA_HOME变量环境变量必须为用户设置比克拉姆
而且你可以给须藤(根)访问用户Bikram做的事sudo usermod -a -G sudo Bikram