我想用沙盒技术将一个 Java 程序置于其中firejail
并使用该选项--private-etc=
,因此我使用的命令如下所示:
firejail --private-etc=none java -jar ...
但如果我添加该选项,它会引发错误:
/bin/bash: java: command not found
我知道我需要添加所需的文件来--private-etc=
代替none
,这就是问题所在,我必须添加哪些文件才能识别该命令java
。
谢谢!
答案1
允许程序访问 /etc/alternatives,即使用--private-etc=alternatives
长答案(可能对其他“未找到命令”错误有帮助):找出实际执行了哪个二进制文件
$ whereis javac
javac: /usr/bin/javac /usr/share/man/man1/javac.1.gz
$ ls -l /usr/bin/javac
lrwxrwxrwx 1 root root 23 /usr/bin/javac -> /etc/alternatives/javac
罪魁祸首就是这里:/etc/alternatives