我需要在 CORE 中启动一些模拟。在 ubuntu 16.04 上,我没有遇到任何纠正配置的问题。我按照网络教程中的步骤操作,一切正常。但在 17.10 上,我遇到了奇怪的麻烦。星型模拟后,zebra 守护进程不会在所有路由器上自动启动,我需要在每个“设备”上手动启动。我为此奋斗了 5 天多,开始感到沮丧。
我发现 quagga 的安装与教程中展示的不同,但我不知道如何修复它。示例:之后
aptitude install quagga
我看到该文件quagga
未/etc/init.d/
创建。类似/etc/quagga/daemons
真的不知道我应该输入什么来发帖来帮助你帮助我......
例如,我按照本教程中的步骤进行操作:http://www.brianlinkletter.com/how-to-build-a-network-of-linux-routers-using-quagga/
答案1
好的,经过几天的漫长等待,我找到了解决方案。
首先,我修复了默认安装的链接,zebra.service
我们可以在 上找到/lib/systemd/system/
。运行zebra.service
一些文本编辑器并更改第 4、10、11、13 行。写入目录:
/usr/lib/quagga/zebra.conf
反而/etc/quagga/zebra.conf
最终的文件看起来应该是:
1 [Unit]
2 Description=GNU Zebra routing manager
3 After=network.target
4 ConditionPathExists=/usr/lib/quagga/zebra.conf
5 Documentation=man:zebra
6
7 [Service]
8 Type=forking
9 ExecStartPre=/sbin/ip route flush proto zebra
10 ExecStartPre=-/bin/chmod -f 640 /etc/quagga/vtysh.conf /usr/lib/quagga/zebra.conf
11 ExecStartPre=-/bin/chown -f quagga:quagga /run/quagga /usr/lib/quagga/zebra.conf
12 ExecStartPre=-/bin/chown -f quagga:quaggavty /etc/quagga/vtysh.conf
13 ExecStart=/usr/sbin/zebra -d -A 127.0.0.1 -f /usr/lib/quagga/zebra.conf
14 Restart=on-abort
15 RuntimeDirectory=quagga
16
17 [Install]
18 WantedBy=network.target
保存文件并使用 重新启动系统守护程序systemctl daemon-reload
。使用 启动 zebra 服务system zebra start
。
另一种方法是创建符号链接zebra.conf
。为此使用:
ln -s /usr/lib/quagga/zebra.conf /etc/quagga/zebra.conf
现在您已经修复了从 Ubuntu 16.04 到现在错误实施的软件包存储库。
第二步,我们需要修复 CORE 安装。默认情况下,只有少数东西没有配置。我注意到组访问存在问题。CORE 不想自动启动 zebra.service,因为 root 用户无法访问特定的临时文件夹。正如我所见,root 用户不是“quaggavty”组的成员。
要改变这种情况,只需将 root 添加到组:
usermod -a -G quaggavt root
重新启动CORE并享受财产工作程序。