diff --git a/nvmet/nvme.py b/nvmet/nvme.py index 3316cabbf6b8e09c05c0c69e2e5dd41d2004b10d..c245a4240dd956f52f775f103a7e298aa4b63a7c 100644 --- a/nvmet/nvme.py +++ b/nvmet/nvme.py @@ -290,6 +290,11 @@ class Root(CFSNode): else: savefile = DEFAULT_SAVE_FILE + savefile_abspath = os.path.abspath(savefile) + savefile_dir = os.path.dirname(savefile_abspath) + if not os.path.exists(savefile_dir): + os.makedirs(savefile_dir) + with open(savefile + ".temp", "w+") as f: os.fchmod(f.fileno(), stat.S_IRUSR | stat.S_IWUSR) f.write(json.dumps(self.dump(), sort_keys=True, indent=2))