Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux Can';将CD发送到根目录中的目录_Linux_Permissions_Chmod_Cd_Chown - Fatal编程技术网

Linux Can';将CD发送到根目录中的目录

Linux Can';将CD发送到根目录中的目录,linux,permissions,chmod,cd,chown,Linux,Permissions,Chmod,Cd,Chown,我目前正在创建一个需要独立用户运行重复程序的应用程序。由于安全原因,它们无法在root下运行,因此它们是由我正在开发的Java应用程序启动的,我使用runuser-l启动它们。但是,我无法将cd刻录到目录中,即使该目录归用户所有,并且用户在该文件夹中拥有770个权限 以下是我正在运行的: runuser -l lp1 -c 'java \-jar /root/Desktop/workspace/LitePanel/servers/server1/server.jar \-Xms1024M nog

我目前正在创建一个需要独立用户运行重复程序的应用程序。由于安全原因,它们无法在root下运行,因此它们是由我正在开发的Java应用程序启动的,我使用runuser-l启动它们。但是,我无法将cd刻录到目录中,即使该目录归用户所有,并且用户在该文件夹中拥有770个权限

以下是我正在运行的:

runuser -l lp1 -c 'java \-jar /root/Desktop/workspace/LitePanel/servers/server1/server.jar \-Xms1024M nogui'
这个的输出是:

runuser: warning: cannot change directory to /root/Desktop/workspace/LitePanel/bin/servers/server1/: Permission denied
这是一个ls-all:

drwxr-xr-x. 3 root root 4096 Jan 30 14:03 .
drwxr-xr-x. 7 root root 4096 Jan 30 14:02 ..
drwxrwx---. 2 lp1  lp1  4096 Jan 31 03:07 server1
在目录中:

drwxrwx---. 2 lp1  lp1     4096 Jan 31 03:07 .
drwxr-xr-x. 3 root root    4096 Jan 30 14:03 ..
-rwxrwx---. 1 lp1  lp1  9170551 Jan 31 03:07 server.jar
下面是/etc/passwd:

lp1:x:501:501::/root/Desktop/workspace/LitePanel/bin/servers/server1/:/bin/false

有人知道为什么会这样吗?用户似乎拥有执行此操作所需的权限。

您已经说过目录本身具有权限
770
,并且由用户拥有,但是它的父目录呢?我相信
cd
命令至少需要对父目录进行读取访问(并可能执行)。

您确定java应用程序正在以lp1运行吗?也许可以尝试在java应用程序中执行“whoami”,以确保它作为user@Xeli我确信它是以lp1的形式运行的,因为如果我在终端上运行它,我也会得到同样的结果。我对所有子目录都有权限,同样的问题。