- 论坛徽章:
- 0
|
本帖最后由 zhy2111314 于 2011-08-21 08:45 编辑
系统版本:Mac OS X Snow Leopard 10.6.8
修改网卡MAC地址的原因主要是我们上网是通过IP和MAC地址绑定的,如果换了电脑需要将MAC地址设为当时绑定的电脑的MAC地址,在Windows和Linux下都比较容易实现,但这次换了MacBook Pro,通过launchd的方式在命令行下通过ifconfig查看网卡en0的MAC地址确实变成了想要设置的MAC地址,但是在“网络偏好设置”中“以太网”->“高级”->“以太网 ID”仍然是机器自身的MAC地址,而且这样的情况下上网来看仍然没有绑定想要设置的MAC地址,不知道如何才能让“网络偏好设置”中的“以太网 ID”也能被修改(spoof 欺骗),这样应该就没问题了。
launchd修改的过程是在/Library/LaunchDaemons/目录下创建一个com.flyzhy.chether.en0.plist(可根据自己喜好命名)的文件:- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
- <plist version="1.0">
- <dict>
- <key>Label</key>
- <string>com.flyzhy.chether.en0</string>
- <key>ProgramArguments</key>
- <array>
- <string>/Users/flyzhy/bin/chether.sh</string>
- </array>
- <key>KeepAlive</key>
- <false/>
- <key>RunAtLoad</key>
- <true/>
- <key>StandardErrorPath</key>
- <string>/tmp/chether.err</string>
- <key>StandardOutPath</key>
- <string>/tmp/chether.out</string>
- </dict>
- </plist>
复制代码 /Users/flyzhy/bin/chether.sh的内容为:- #!/bin/sh
- /sbin/ifconfig en0 up
- /sbin/ifconfig en0 ether xx:xx:xx:xx:xx:xx
复制代码 其中xx为要修改的MAC地址。
以上的方法可以“永久”修改网卡的mac地址,同样该方法也适用于其它类似情况。
Mac OS已经逐渐取消了类似UNIX/Linux修改crontab的方式来设定守护进程,通过新的launchd的方式不仅可以设定守护进程,还可以设定开机启动脚本等,具体情况大家可以到网上搜索关于Mac OS X的launchd资料,谢谢大家。
上面是如何设定开机启动脚本的例子,再贴一个我的守护进程的例子供大家参考吧。
本身Time Machine已经很不错的备份方案了,但有一些重要资料还是希望能够双重备份,所以我这里设定一个脚本每天定时向服务器rsync同步。
这个跟具体用户有关系,所以在 ~/Library/LaunchAgents/ 下面创建一个 com.flyzhy.crontab.rsync.plist 文件,内容如下:
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
- <plist version="1.0">
- <dict>
- <key>Label</key>
- <string>com.flyzhy.crontab.rsync</string>
- <key>ProgramArguments</key>
- <array>
- <string>/Users/flyzhy/bin/rsync.sh</string>
- </array>
- <key>KeepAlive</key>
- <false/>
- <key>RunAtLoad</key>
- <false/>
- <key>StartCalendarInterval</key>
- <dict>
- <key>Hour</key>
- <integer>16</integer>
- <key>Minute</key>
- <integer>28</integer>
- </dict>
- <key>StandardErrorPath</key>
- <string>/tmp/rsync61.err</string>
- <key>StandardOutPath</key>
- <string>/tmp/rsync61.out</string>
- </dict>
- </plist>
复制代码 这样可以实现每天下午4:28分进行rsync同步,具体同步命令可以在脚本中描述。 |
|