summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/vyatta-cfg.vyatta-router.service1
-rwxr-xr-xetc/init.d/vyatta-router12
2 files changed, 12 insertions, 1 deletions
diff --git a/debian/vyatta-cfg.vyatta-router.service b/debian/vyatta-cfg.vyatta-router.service
index c3e6fd2..0ecf6f4 100644
--- a/debian/vyatta-cfg.vyatta-router.service
+++ b/debian/vyatta-cfg.vyatta-router.service
@@ -3,7 +3,6 @@ SourcePath=/etc/init.d/vyatta-router
Description=VyOS Router
Before=runlevel2.target runlevel3.target runlevel4.target runlevel5.target shutdown.target getty@tty1.service getty@tty2.service getty@rrt3.service getty@tty4.service getty@tty5.service getty@tty6.service
After=systemd-journald-dev-log.socket time-sync.target local-fs.target
-Wants=frr.service
Conflicts=shutdown.target
[Service]
diff --git a/etc/init.d/vyatta-router b/etc/init.d/vyatta-router
index f5c9ebd..530fe5c 100755
--- a/etc/init.d/vyatta-router
+++ b/etc/init.d/vyatta-router
@@ -152,6 +152,16 @@ bind_mount_boot ()
start ()
{
+ # Fixup for FRR
+
+ # In 5.1 master, zebra thinks existence of /var/run/netns is
+ # a requirement for netns support
+ mkdir /var/run/netns
+
+ # Since systemd doesn't work without watchfrr and watchfrr restarts
+ # all daemons if just one failed, do the start manually
+ /usr/lib/frr/frr start
+
log_action_begin_msg "Mounting VyOS Config"
# ensure the vyatta_configdir supports a large number of inodes since
# the config hierarchy is often inode-bound (instead of size).
@@ -203,6 +213,8 @@ stop()
log_action_begin_msg "Un-mounting VyOS Config"
umount ${vyatta_configdir}
log_action_end_msg $?
+
+ /usr/lib/frr/frr stop
}
case "$action" in