我们校园里有几百台 MacBook,全部由我们管理。我们希望找到一种简单易行的方法,一次性在所有 MacBook 上设置主页。问题是,使用的浏览器类型多种多样 - 有些用户喜欢 Firefox,有些喜欢 Safari,有些喜欢 Chrome。Mac 运行的是 10.6 和 10.7 的混合版本。
Safari 的操作非常简单:defaults write com.apple.Safari HomePage http://www.newhomepage.com
Firefox 也相当简单,在其配置文件目录中使用 user.js 文件 - 但是,该配置文件位于 中~/Library/Application Support/Firefox/Profiles/xxxxxx.default
,其中 xxxxxx 是一个随机的六位字符串。我们无法找到一种轻松将 user.js 放入每个用户配置文件的方法。
Google Chrome 是一个奇怪的浏览器 -~/Library/Application Support/Google/Chrome/Default/Preferences
似乎是主页字符串所在的位置 - 但是我并不想将整个新的首选项文件放入其中,因为这将重置用户的其他设置。
有人知道有一种方法可以同时在三个浏览器上轻松设置主页吗?理想情况下,我们可以创建一个 .pkg 并部署它。
谢谢您的帮助!
答案1
在 Chrome 上设置此功能有两种方法:
- 使用 Workgroup Manager 设置 MCX 首选项,以配置 RestoreOnStartupURLs 策略。请参阅http://www.chromium.org/administrators/policy-list-3#RestoreOnStartup。
- 设置一个具有所需主页/启动 URL 的主首选项文件,它将自动导入到新的 chrome 配置文件中。
有关这两种解决方案的更多详细信息,请访问http://www.chromium.org/administrators。
答案2
我不知道 sed 和 grep 在 Linux 和 MacOS 中的行为是否相同,但让我们尝试一下。
对于 Chrome,你可以使用 sed 来实现:
sed -i ~/Library/Application Support/Google/Chrome/Default/Preferences -e 's/"homepage"*/"homepage": "www.newhomepage.com"/'
对于 Firefox,你可以使用相同的技巧:
USERDIR=`grep 'Path' profiles.ini | cut -d'=' -f2`
sed -i $USERDIR -e 's/user_pref("browser.startup.homepage".*,user_pref("browser.startup.homepage", "http://www.newhomepage.com");/'
对于 Safari,您已经这样做了。