我已经在网络上设置了一个 PXE 引导服务器(不是 Ubuntu,而是任何感兴趣的人的 NethServer),并且已经从该服务器正确引导 Ubuntu 16.04。
这是pxelinux.cfg/default它的条目:
label 1
menu label ^1) Ubuntu Desktop 16.04.1 x64 Live
kernel ubuntu-16.04.1-desktop-amd64/casper/vmlinuz.efi
append rootfstype=nfs4 boot=casper persistent netboot=nfs nfsroot=10.1.1.1:/home/tftpdata/ubuntu-16.04.1-desktop-amd64 initrd=ubuntu-16.04.1-desktop-amd64/casper/initrd.lz --
Run Code Online (Sandbox Code Playgroud)
我可能不需要rootfstype=nfs4,但它有效,所以我现在就离开它。
我的问题与persistent选项有关。
从我能找到的与 16.04 相关的有限信息来看,如果我希望客户端具有任何类型的持久性,它必须有一个casper-rw设置,但我无法弄清楚如何在启动时通过 NFS 提供服务。
似乎没有任何开关或路径。
我发现了这个,这似乎暗示了我可能需要一个分区或类似分区的想法,命名为casper-rw? 我找不到更多细节。
我知道它casper-rw可以是一个循环文件,我知道它也可以是一个分区。但是是否可以在引导到 PXE 客户端时通过 NFS 提供服务?
其他所有参考似乎都与 14.04 或更早版本相关,大多数似乎与 9.10 及更低版本相关。
最终目标是拥有一个 PXE Boot 无盘工作站,我可以在上面安装驱动程序和应用程序。
我想沙箱一个 java 程序firejail并使用该选项,--private-etc=所以我使用的命令如下所示:
firejail --private-etc=none java -jar ...
Run Code Online (Sandbox Code Playgroud)
但是,如果我添加该选项,则会引发错误:
/bin/bash: java: command not found
Run Code Online (Sandbox Code Playgroud)
我知道我需要添加所需的文件--private-etc=而不是,none这就是我必须添加哪些文件才能识别命令的问题java。
谢谢!