I deleted /config/config.boot on purpose but couldnt then reboot or shutdown the VyOS box through cli:
root@vyos:/config# reboot
Traceback (most recent call last):
File "/usr/libexec/vyos/op_mode/powerctrl.py", line 236, in <module>
main()
File "/usr/libexec/vyos/op_mode/powerctrl.py", line 219, in main
execute_shutdown(args.reboot, reboot=True, ask=args.yes)
File "/usr/libexec/vyos/op_mode/powerctrl.py", line 120, in execute_shutdown
check_unsaved_config()
File "/usr/libexec/vyos/op_mode/powerctrl.py", line 113, in check_unsaved_config
if unsaved_commits() and boot_configuration_success():
^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/vyos/config_mgmt.py", line 76, in unsaved_commits
ret = not cmp(tmp_save, config_file, shallow=False)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/filecmp.py", line 54, in cmp
s2 = _sig(os.stat(f2))
^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: '/opt/vyatta/etc/config/config.boot'root@vyos:/config# poweroff
Traceback (most recent call last):
File "/usr/libexec/vyos/op_mode/powerctrl.py", line 236, in <module>
main()
File "/usr/libexec/vyos/op_mode/powerctrl.py", line 227, in main
execute_shutdown(args.poweroff, reboot=False, ask=args.yes)
File "/usr/libexec/vyos/op_mode/powerctrl.py", line 120, in execute_shutdown
check_unsaved_config()
File "/usr/libexec/vyos/op_mode/powerctrl.py", line 113, in check_unsaved_config
if unsaved_commits() and boot_configuration_success():
^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/vyos/config_mgmt.py", line 76, in unsaved_commits
ret = not cmp(tmp_save, config_file, shallow=False)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/filecmp.py", line 54, in cmp
s2 = _sig(os.stat(f2))
^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: '/opt/vyatta/etc/config/config.boot'Suggestion to add errorhandling for this case which should include an option if config should be restored from archive (commit-revisions).
If admin answers "no" then during next boot a config.boot will be recreated from config.boot.default anyway.