OSX: 命令行制作U盘Recovery HD
使用命令行操作,非常easy,可是操作不当非常危急!
免责声明:假设操作不当造成的数据丢失,本人概不负责。
为什么?
不是有OSX恢复磁盘助理嘛?是的。假设仅仅想使用GUI的软件。能够去苹果官方站点:http://support.apple.com/kb/DL1433?viewlocale=zh_CN
唯一的原因就是:生命不息,折腾不止;只是还有另外一个诱因,就是看看究竟官方的恢复磁盘助理的原理,换句话说,用自己的办法达到相同的效果。
前提:你有一个工作的Recovery HD,你的Mac支持U盘启动。
1. 准备一个空白的不小于1GB的U盘。事实上650MB的就能够。
2. 执行命令,并记住各个參数:
diskutil list
我的机器是:
$ diskutil list /dev/disk0
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *160.0 GB disk0
1: EFI EFI 209.7 MB disk0s1
2: Apple_HFS Macintosh HD 159.7 GB disk0s2
/dev/disk1
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *1.0 GB disk1
1: Apple_HFS A 346.9 MB disk1s1
2: Apple_Boot Recovery HD 693.8 MB disk1s2
/dev/disk2
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *120.0 GB disk2
1: EFI EFI 209.7 MB disk2s1
2: Apple_HFS OSX94 29.5 GB disk2s2
3: Apple_Boot Recovery HD 650.0 MB disk2s3
4: Apple_HFS Data 58.0 GB disk2s4
5: Apple_HFS OSX10DP 23.5 GB disk2s5
6: Apple_Boot Recovery HD 650.0 MB disk2s6
7: Apple_HFS _OSX10DPInstaller_ 7.3 GB disk2s7
我要操作的是disk1这个盘。源Recovery HD是disk2s6。它是OS X 10.10 DP3的恢复盘。
3. 创建U盘恢复分区
执行命令和显示:
$ sudo -s
$ diskutil partitionDisk disk1 1 GPT jhfs+ Recovery\ HD 100% Started partitioning on disk1
Unmounting disk
Creating the partition map
Waiting for the disks to reappear
Formatting disk1s1 as Mac OS Extended (Journaled) with name Recovery HD
Initialized /dev/rdisk1s1 as a 992 MB case-insensitive HFS Plus volume with a 8192k journal
Mounting disk
Finished partitioning on disk1
/dev/disk1
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *1.0 GB disk1
1: Apple_HFS Recovery HD 1.0 GB disk1s1
4. 制作:
$ diskutil unmountDisk disk1 Unmount of all volumes on disk1 was successful $ gpt remove -b 40 disk1
disk1s1 removed $ gpt add -b 40 -t 426F6F74-0000-11AA-AA11-00306543ECAC disk1
disk1s1 added $ gpt -r show disk1
start size index contents
0 1 PMBR
1 1 Pri GPT header
2 32 Pri GPT table
34 6
40 2032634 1 GPT part - 426F6F74-0000-11AA-AA11-00306543ECAC
2032674 32 Sec GPT table
2032706 1 Sec GPT header $ dd if=/dev/dsik1s6 of=/dev/disk1s1 $ diskutil mount disk1s1
$ bless --folder /Volumes/Recovery HD/com.apple.recovery.boot
5. 验证:
$ diskutil list
/dev/disk0
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *160.0 GB disk0
1: EFI EFI 209.7 MB disk0s1
2: Apple_HFS Macintosh HD 159.7 GB disk0s2
/dev/disk1
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *1.0 GB disk1
1: Apple_Boot Recovery HD 1.0 GB disk1s1
/dev/disk2
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *120.0 GB disk2
1: EFI EFI 209.7 MB disk2s1
2: Apple_HFS OSX94 29.5 GB disk2s2
3: Apple_Boot Recovery HD 650.0 MB disk2s3
4: Apple_HFS Data 58.0 GB disk2s4
5: Apple_HFS OSX10DP 23.5 GB disk2s5
6: Apple_Boot Recovery HD 650.0 MB disk2s6
7: Apple_HFS _OSX10DPInstaller_ 7.3 GB disk2s7
6. 測试:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY25lZHVjYXRpb24=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
OSX: 命令行制作U盘Recovery HD的更多相关文章
- windows 基于命令行制作vhd虚拟磁盘
什么是VHD? VHD是Virtual Hard Disk的简称,就是虚拟硬盘,就是能把VHD文件直接虚拟成一个硬盘,在其中能像真实硬盘一样操作,读取.写入.创建分区.格式化.如果你用过虚拟机,就会知 ...
- [2014-08-18]Mac OSX 命令行快捷键
系统:OSX 10.9.4 将光标移动到行首:ctrl + a 将光标移动到行尾:ctrl + e 清除屏幕: ctrl + l 搜索以前使用命令:ctrl + r 清除当前行: ctrl + u 清 ...
- mac 命令行读取 u盘
mac 系统命令行读取u盘
- java console ( mac osx ) 命令行编码
方法 vi ~/.bash_profile #添加新行, UTF-8表示你平台的编码方式 #例如你是GBK.GB18030的 #替换成你平台console可现实字符编码即可 export JAVA_T ...
- sublime mac osx 命令行打开
sudo ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/bin/subl 参考地址:htt ...
- Mac OSX 快捷键&命令行总览
大家初用Mac OSX可能不习惯,特别收集总结了Mac OSX 上的快捷键,方便大家参考 ,请叫我雷锋. 一.Mac OSX 快捷键 ctrl+shift ...
- Mac OSX 快捷键&命令行
一.Mac OSX 快捷键 ctrl+shift 快速放大dock的图标会暂时放大,而如果你开启了dock放大Command+Op ...
- Mac制作U盘系统(OS X El Capitan)教程
前言部分 重装过Mac OS X系统的人应该都深有体会,通过自带的重新安装 Mac OS X功能恢复系统(开机时按Command+R) 要耗费10几个小时才能完成(请求苹果国外服务器),但如果通过U盘 ...
- 使用Java命令行方式导入第三方jar包来运行Java程序的命令
1.首先使用命令行进入到a.java所在的文件夹:(比如我的在D:\javaeeworkspace\SharedPS_WS\src\com\dyf\main 这样一个路径下,) d: 回车, cd D ...
随机推荐
- wsgi的学习(2):uWSGI的概念
uWSGI是一个Web服务器,它实现了WSGI协议.uwsgi.http等协议.Nginx中HttpUwsgiModule的作用是与uWSGI服务器进行交换. 要注意 WSGI / uwsgi / u ...
- es6记录
3.5? 一.const 1.冻结对象 const foo = Object.freeze({}); // 常规模式时,下面一行不起作用: // 严格模式时,该行会报错 foo.prop = ; 2. ...
- springBoot 微服务
微服务,是OO (面向对象,Object Oriented) 专家 Martin Fowler 于2014年在他一篇文章<Microservice>提出的.在 Mattin 的头脑中,兴奋 ...
- HDU 6237.A Simple Stone Game-欧拉函数找素因子 (2017中国大学生程序设计竞赛-哈尔滨站-重现赛)
A Simple Stone Game Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Ot ...
- Bug预防体系
Web常见产品问题及预防 测试人员在每次版本迭代中,会对项目的整体质量有一个把控,对于项目常见的问题,开发经常犯的错误都会有所了解,为了避免或者减少这样的错误或不规范的事情在发生,测试人员可以整理构建 ...
- Struts的线程安全
Servlet/JSP技术和ASP.PHP等相比,由于其多线程运行而具有很高的执行效率.由于Servlet/JSP默认是以多线程模式执行的,所以,在编写代码时需要非常细致地考虑多线程的安全性问题.然而 ...
- Java中堆和栈有什么区别
stack 和 heep 都是内存的一部分stack 空间小,速度比较快, 用来放对象的引用heep 大,一般所有创建的对象都放在这里. 栈(stack):是一个先进后出的数据结构,通常用于保存方法( ...
- stack栈和Queue队列
1.push将对象插入 System.Collections.Generic.Stack<T> 的顶部. Stack st = new Stack(); //栈是先进后出 st.Push( ...
- Python学习笔记——常量和变量
数字常量 如下是python的一些常量表示形式: 2 整数 3.23 浮点数 52.3e-4 科学技术法表示的浮点数 -5 -4.6j ...
- GTK+重拾--09 GTK+中的组件(一)
(一):写在前面 在这篇文章中主要介绍了GTK+程序中的各种构件,这是解说构件的第一个部分,另外一部分将在下一个小节中讲到. 构件是建立一个GUI程序的基础.在GTK+的长期发展过程中.一些特定的构件 ...