diff options
Diffstat (limited to 'hscript/script_e.cc')
-rw-r--r-- | hscript/script_e.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/hscript/script_e.cc b/hscript/script_e.cc index 5917b19..cf004a0 100644 --- a/hscript/script_e.cc +++ b/hscript/script_e.cc @@ -169,7 +169,8 @@ bool Script::execute() const { if(!fs::exists(devpath, ec)) { fs::create_directory(devpath, ec); } - if(mount("/dev", devpath.c_str(), nullptr, MS_BIND, nullptr) != 0) { + if(mount("/dev", devpath.c_str(), nullptr, MS_BIND | MS_REC, + nullptr) != 0) { output_warning("internal", "could not bind-mount /dev; " "bootloader configuration may fail"); } @@ -184,7 +185,8 @@ bool Script::execute() const { if(!fs::exists(syspath, ec)) { fs::create_directory(syspath, ec); } - if(mount("none", syspath.c_str(), "sysfs", 0, nullptr) != 0) { + if(mount("/sys", syspath.c_str(), nullptr, MS_BIND | MS_REC, + nullptr) != 0) { output_warning("internal", "target sysfs could not be mounted"); } } |