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.scalaConsole.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