为什么要做这个呢,由于BootCamp仅仅有在默认的Mac上才会有生成USB安装盘的选项。这个脚本就是为了确保用户使用它在不论什么一个Mac机器上都能够生成Windows的USB安装盘。当然了,假设你的Mac机器不支持使用USB启动,那么也是枉然。

这个脚本应该支持10.7.x到10.9.x的Boot Camp. 10.10DP2应该也能够。

Boot Camp.app应该在它默认的文件夹中。也就是/Applicaitons/Utilities/里面。

拷贝到一个文本文件,变更属性为能够执行,然后sudo执行之。

#!/bin/bash
sudo killall "Boot Camp Assistant" BCA="/Applications/Utilities/Boot Camp Assistant.app/Contents/"
ROMver=$(system_profiler | grep "Boot ROM Version:" | awk '{print $4}')
Model=$(system_profiler | grep "Model Identifier:" | awk '{print $3}')
ROMpar=$(echo $ROMver | awk -F. '{print $1}') if [ ! -e "$BCA/Contents/Info_backup.plist"]; then
sudo cp "$BCA/Info.plist" "$BCA/Info_backup.plist"
fi sudo /usr/libexec/PlistBuddy -c "add :DARequiredROMVersions:0 string '$ROMver'" "$BCA/Info.plist" sudo /usr/libexec/PlistBuddy -c "print USBBootSupportedModels" "$BCA/Info.plist" if [ $? != 0]; then
# OS X 10.8.x & up to 10.9
sudo /usr/libexec/PlistBuddy -c "add :PreUSBBootSupportedModels:0 string '$Model'" "$BCA/Info.plist" sudo /usr/libexec/PlistBuddy -c "copy PreUSBBootSupportedModels USBBootSupportedModels" "$BCA/Info.plist" sudo codesign -fs - /Applications/Utilities/Boot\ Camp\ Assistant.app
else
# Lion OS X 10.7.x
sudo /usr/libexec/PlistBuddy -c "add :USBBootSupportedModels:0 string '$ROMpar'" "$BCA/Info.plist" fi

恢复原样非常easy:

#!/bin/bash

if [ -e "$BCA/Contents/Info_backup.plist" ]; then
sudo cp "$BCA/Info_backup.plist" "$BCA/Info.plist"
fi




OSX: Scripts,让BootCamp在不论什么Mac上支持生成Windows7的USB安装盘的更多相关文章

  1. Mac上制作Centos7系统U盘安装盘

    Centos7 下载地址: http://101.110.118.47/isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-DVD- ...

  2. OSX 10.11 El Caption USB安装盘制作方法

    OSX 10.11 El Caption USB安装盘制作方法 官方在线下载地址:https://developer.apple.com/osx/download/ 1. 用磁盘工具将USB盘抹掉或者 ...

  3. Mac 制作 10.11.3 U盘安装盘

    U盘要且只分一个区  Mac OS 拓展(日志式)  GUID分区表: 将“安装 OS X El Capitan” 放到  应用程序文件夹下 命令: sudo /Applications/Instal ...

  4. mac上使用生成RSA公钥和密钥

    关于RSA加密解密的问题,没事弄了一下,先把主要的流程保存下来,以备交流或者以后用. 首先确保你的电脑上安装了openssl,一般mac系统安装后都会自动安装!怎么安装??.....请百度...... ...

  5. 创建 Mac OS X 10.9 USB 安装盘

    通过 App Store 下载最新的 OS X 10.9 在“应用程序”目录找到下载的 OS X 10.9 安装文件,选中并鼠标右键,菜单中选择“显示包内容” 弹出的 Finder 中进入 Conte ...

  6. iphone 屏幕投射到Mac上

    在实际的工作中,我们往往需要演示iPhone上面的程序,但是由于手机屏幕太小,无法同时给很多人看,这时候就需要进行屏幕投射.目前我需要实现的是投射到Mac上.我使用有线USB和无线Airplay两种方 ...

  7. 制作 macOS Sierra 正式版U盘USB启动安装盘方法教程 (全新安装 Mac 系统)

    使用命令行创建制作 macOS Sierra 正式版 USB 安装盘 1.准备一个 8GB 或更大容量的 U盘,并备份好里面的所有资料. 2.下载好 macOS Sierra 正式版的安装程序(app ...

  8. 制作 macOS High Sierra U盘USB启动安装盘方法教程 (全新安装 Mac 系统)

    方法一:使用命令行创建制作 macOS High Sierra 正式版 USB 安装盘 首先,准备一个 8GB 或更大容量的 U盘,并备份好里面的所有资料. 下载好 macOS High Sierra ...

  9. 在任何mac上用u盘安装OSX和Windows10双系统的方法(支持老电脑、不用Bootcamp)

    Win10是微软主推的,兼容性做的还不错,安装工具做的适应性好. 而且很多Mac机上的Bootcamp不支持u盘安装. 1.先安装OSX,一般电脑自带(建议升级到最新版).如果装了新的ssd,重新安装 ...

随机推荐

  1. linux-more

    more 这个命令可以用来分页查看大篇幅的文件内容非常有效 命令参数: -num  : 这里的num 是一个数字,用来指定分页显示时每页的行数 +num  : 指定从文件的第几行num开始显示 ... ...

  2. day4--老Word模板使用指南

    Word常用快捷键 Ctrl + 1 一级标题 Ctrl + 2 二级标题 Ctrl + 3 三级标题 Ctrl + 5 代码块输入 Ctrl + 6 正文输入 专业的排版,一定要规范,目录,生成目录

  3. python的xlwt模块的常用方法

    工作中需要导出数据为excel格式,使用了xlwt模块,在此记录一下用到的内容. 1. 创建一个表,设置一个sheet import xlwt workbook = xlwt.Workbook(enc ...

  4. Asp.Net MVC 使用 Ajax

    Asp.Net MVC 使用 Ajax Ajax 简单来说Ajax是一个无需重新加载整个网页的情况下,可以更新局部页面或数据的技术(异步的发送接收数据,不会干扰当前页面). Ajax工作原理 Ajax ...

  5. kickstart 实现批量安装centos7.x系统

    1.1 安装系统的方法 l  光盘(ISO文件,光盘的镜像文件)===>>每一台物理机都得给一个光驱,如果用外置光驱的话,是不是每台机器都需要插一下 l  U盘:ISO镜像刻录到U盘==& ...

  6. JS事件流(W3C与IE区别)

    一.JS事件的3个阶段:捕获.目标.冒泡,低版本IE不支持捕获阶段: 二.在浏览器解析事件的时候,有两种触发方式:一种叫做Bubbling(冒泡),另外一种叫做Capturing(捕获). 冒泡的方式 ...

  7. 小白必看Python视频基础教程

    Python的排名从去年开始就借助人工智能持续上升,现在它已经成为了第一名.Python的火热,也带动了工程师们的就业热.可能你也想通过学习加入这个炙手可热的行业,可以看看Python视频基础教程,小 ...

  8. vue新手入门——谈谈理解

    毕业到现在大概4个月了,从java开发慢慢转到前端开发(其实是因为公司前端人不够),然后开始接触vue.所以我也只是一只小菜鸟. 首先附上vue的官网:vue官网 然后附上一些常用的vue框架,组件之 ...

  9. Java 面试题:百度前200页都在这里了

    基本概念 操作系统中 heap 和 stack 的区别 什么是基于注解的切面实现 什么是 对象/关系 映射集成模块 什么是 Java 的反射机制 什么是 ACID BS与CS的联系与区别 Cookie ...

  10. asp.net web api 文件上传

    1正确的做法 public class AvaterController : BaseApiController { [HttpPost] public async Task<IHttpActi ...