我需要如何配置 NetworkManager 才能使用只读根文件系统?
我有一个嵌入式设备(使用 16.04),我正在尝试以只读方式挂载根文件系统。我读过很多指南,99% 的工作正常。/var
以读写方式挂载,以/
只读方式挂载。当我尝试加入 wifi 网络时,出现以下错误:
# nmcli d wifi connect mySSID password myPassword
Error: Connection activation failed: (7) Secrets were required, but not provided.
如果我以/
读写方式重新启动:
# nmcli d wifi connect mySSID password myPassword
Device 'wlan0' successfully activated with 'aefcb407-86af-4b40-aaab-9913410ac305'.
我注意到它在中创建了一个文件,/etc/NetworkManager/system-connections
因此我将目录创建为一个符号链接/var/local/system-connections
,然后使用只读的新副本再次尝试/
......但出现同样的错误。
我验证了当我收到错误时,我可以在该目录中手动创建一个文件:
# touch test_rw_fs
# ls test_rw_fs
test_rw_fs
我遗漏了什么?如何在此配置中配置 NetworkManager?
答案1
阅读man strace
。然后,在工作状态下,
strace -e trace=open nmcli d wifi connect mySSID password myPassword
将显示每次调用open
,以及文件是否已打开进行写入。
每个打开进行写入的文件都必须配置为存活/
。