summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/vyos-1x.install1
-rwxr-xr-xsrc/conf_mode/system-login.py3
-rwxr-xr-xsrc/etc/commit/post-hooks.d/00vyos-sync7
3 files changed, 8 insertions, 3 deletions
diff --git a/debian/vyos-1x.install b/debian/vyos-1x.install
index 11b488b22..6b5c7793d 100644
--- a/debian/vyos-1x.install
+++ b/debian/vyos-1x.install
@@ -1,3 +1,4 @@
+etc/commit
etc/dhcp
etc/ipsec.d
etc/logrotate.d
diff --git a/src/conf_mode/system-login.py b/src/conf_mode/system-login.py
index 5297ab939..e26b81e3d 100755
--- a/src/conf_mode/system-login.py
+++ b/src/conf_mode/system-login.py
@@ -322,9 +322,6 @@ def apply(login):
except Exception as e:
raise ConfigError(f'RADIUS configuration failed: {e}')
- # sync user data files to disk
- os.sync()
-
return None
diff --git a/src/etc/commit/post-hooks.d/00vyos-sync b/src/etc/commit/post-hooks.d/00vyos-sync
new file mode 100755
index 000000000..e3bde3abb
--- /dev/null
+++ b/src/etc/commit/post-hooks.d/00vyos-sync
@@ -0,0 +1,7 @@
+#!/bin/sh
+# When power is lost right after a commit modified files, the
+# system can be corrupted and e.g. login is no longer possible.
+# Always sync files to the backend storage after a commit.
+# https://phabricator.vyos.net/T4975
+sync
+