562
iPhone_iPad_Mac_手机_平板_苹果apple
Mac OS 10.12.3如何添加永久静态路由
我电脑是2016年底最新的MAC BOOK PRO,现在系统版本是10.12.3
因为工作原因需要在设置电脑IP为172.16.10.27,通过这个IP连接到其他网段。需要在MAC OS上设置两条静态路由。
sudo route add 172.16.0.0/16 172.16.10.89
sudo route add 172.16.11.0/24 172.16.10.82
在终端添加这两条路由没问题。但是每次重启系统都要重新添加。在网上查询了,那些在/system/Library/StartupItems/AddRoutes/下添 加AdaRoutes和StartupParameters.plist两个文件实现开机启动自动添加路由的方法根本不适用此版本的Mac OS。
以下是两个文件的内容:
BaoYe:AddRoutes root# ls -l
total 16
-rwxrwxrwx 1 root wheel 334 Mar 24 13:25 AddRoutes
-rwxrwxrwx 1 root wheel 173 Mar 24 11:13 StartupParameters.plist
BaoYe:AddRoutes root# more AddRoutes
#!/bin/sh
# Set up static routing tables
. /etc/rc.common
StartService ()
{
sudo route -nv add 172.16.0.0/16 172.16.10.89
sudo route -nv add 172.16.11.0/24 172.16.10.82
}
StopService ()
{
return 0
}
RestartService ()
{
return 0
}
RunService "$1"
BaoYe:AddRoutes root# more StartupParameters.plist
{
Description = "Add static routing tables";
Provides = ("AddRoutes");
Requires = ("Network");
OrderPreference = "None";
}
网上介绍的方法都是类似的这些,我的电脑启动的时候不是以root用户启动,而是以我自己的用户启动,这开机自动添加默认路由的方法根本不生效。
一开始怀疑是sudo route -nv add 172.16.0.0/16 172.16.10.89需要输入密码的原因,用了expect更改脚本中这两条语句为以下内容还是不能生效。
{
sudo route -nv add 172.16.0.0/16 172.16.10.89
expect "Password:"
send "*****密码 "
sudo route -nv add 172.16.11.0/24 172.16.10.82
expect "Password:"
send "*****密码 "
}
哪位好心的大神帮帮我呀?
已不建议使用StartupItems。就你目前的叙述来说,可以用下面的方法:
1. 创建目录
mkdir -p /usr/local/bin
2. 创建第一个文件,添加路由的脚本, 把它保存到/usr/local/bin/addroute.sh。其中添加了一个日志语句(logger),如不需要可以删除.
#!/bin/bash
route add 172.16.0.0/16 172.16.10.89
route add 172.16.11.0/24 172.16.10.82
logger -i "addRoute: Done with error code: $?"
3. 创建第二个文件,纯文本文件,把它保存为:/Library/LaunchDaemons/org.mylocalmachine.addroute.plist
这一步需要管理员权限才能保存。使用你编辑脚本的编辑器,直接把下边内容复制到你的编辑器里保存即可。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "https://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Disabled</key>
<false/>
<key>KeepAlive</key>
<false/>
<key>Label</key>
<string>org.mylocalmachine.addroute</string>
<key>Program</key>
<string>/usr/local/bin/addroute.sh</string>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
3. 运行下面命令以修正权限:
sudo chmod 755 /usr/local/bin/addroute.sh
sudo chmod 644 /Library/LaunchDaemons/org.mylocalmachine.addroute.plist
sudo chown root:wheel /usr/local/bin/addroute.sh/Library/LaunchDaemons/org.mylocalmachine.addroute.plist
4. 如需要全部卸载/删除,就是把上面前两步的文件都删除就可以了。
每次重新启动都会自动添加路由了。
如果有问题,确认每个文件的文件名路径和权限都正确.
最后更新:2017-05-11 01:20:38
上一篇:
mac连接电源自动开机 冲不进去电
下一篇:
Macbook pro不充电开不了机
现在high sierra出来了,想获取10.12.6怎么办呢
Apple Store 免费兑换:Plotagraph 帮你做出大片级的 GIF 动图
itunes 未能连接到此iphone 发生未知错误(OxE8000015)
请联系itunes store支持以完成此交易,怎么解决。?
iTunes要求您的电脑运行Windows 7 Service Pack 1 或更高版本
win10 电脑用iCloud备份手机照片C盘被大量占用
iTunes12.7的版本中没有App Store,如何下载应用并且更新到手机上?
我需要立即取消Apple music会员资格
Adobe CC 2018版本破解包,支持Win/Mac系统,亲测有效
我Mac的itunes连接iphone不显示应用,怎么设置?
热门内容
冬日里的小确幸英式苹果派 Delicious and Seasonal Apple Pie
为什么你比从前更需要一份 AppleCare+?
Apple Watch遇时区问题 一问Siri今天天气就重启
美国吃定中国市场?不仅iPhone热售,apple也想卖给中国
Apple Park访客中心将于下周五向公众开放
Apple Pay 的扩张之路继续 中国也新增两家
iPhone X有“烙印”属正常现象?Apple 建议四大避免方法
晒单大赛#屏幕是最大惊喜—Apple 苹果 iPhone X 手机 使用5天全感受
传博通最快今天宣布收购高通计划;Apple Watch 3被曝出故障:通过Siri询问当天天气会死机
海外有人问到 Apple Watch 天气状况时,突然就重启了