「记录」制作macOS High Sierra 10.13.6的ISO安装镜像

  最近掏了一个dell 9020sff,心血来潮想要装mac虚拟机,但是折腾了好久总是出各种奇怪的问题,后来还是在一个台湾的博客里找到解决方法,在这记录一下。废话不多说,先上干货。

制作macOS High Sierra 10.13.6的ISO安装镜像

  首先准备好一个mac系统,不管是实体mac还是mac虚拟机都行,甚至比较老的OS X也行(我用的10.8,虽然官方说这个版本支持升级到10.13,但从store下载的原版app在10.8里提示已损坏无法打开,但这并不影响iso的制作)。然后需要下载好10.13的安装应用,建议从mac app store下载,把app放在应用程序目录。

注意:下面的代码中默认的10.13安装app路径是:”/Applications/Install\ macOS\ High\ Sierra.app”,如果你的安装app不在默认位置,请自行替换路径。

  如果没有意外,你就可以在桌面找到iso安装镜像了。

参考资料:製作 macOS High Sierra 10.13 的可開機安裝隨身碟及 ISO 映像檔

神奇的坑

  在找到正确的解决方法之前,我当然也踩了不少坑,一度甚至想放弃,但「缘,妙不可言!」,所以在这记录一些比较神奇的坑。

1、用官方推荐的createinstallmedia创建的dmg,用磁盘工具另存为“DVD/CD 主映像”,会储存为.cdr文件,但这个文件不能直接改后缀成.iso!

  直接改后缀看似没有什么问题,在win里也能打开,也可以在esxi里挂载,但是在安装中要么无法引导,要么在引导的最后阶段出现禁止符号!!!没错,就是这个符号🚫。黑色的背景,白色的禁止符,我一直以为是我虚拟机的问题,废了好大劲才晓得是镜像问题。

2、不可以在mac以外的系统里将dmg或cdr转为iso,不管用什么工具都不行,必须用mac!

  我试过百度上几乎所有的转换方案,包括软碟通啊,或是什么其他的软件,最后事实证明,都TMD在骗人,浪费我的时间和精力!SB百度!

3、VMware虚拟macOS需要加两个高级参数

有两个修改方法。第一个是直接改vmx文件,另一个是在vsphere client里“编辑虚拟机设置”,“虚拟机选项”选项卡,展开“高级”,点“编辑配置”。确保下面两个参数正确,否则无法打开虚拟机,或运行出现奇怪的错误。

smc.present = “TRUE”
smc.version = 0

在Mac中用pip安装Scrapy

遇到了两个大问题,第一个在这里已经解决。

第二个问题是:

我使用了这个文章里的解决办法:

成功安装lxml后,再运行:

安装成功。

 

在OS X 10.11 (El Capitan)中用pip安装Scrapy遇到无法更新six包的错误

在OSX 10.11 (El Capitan) 中用pip安装Scrapy时遇到了这样的问题:

去网上查找解决方法,看到了这个:“OSError: [Errno 1] Operation not permitted” when installing Scrapy in OSX 10.11 (El Capitan) (System Integrity Protection),发现问题一模一样,于是就按照回答开始尝试。

按照最高票回答的方法尝试手动更新six:

然而并没有成功更新!于是去看了:Source: github.com/pypa/pip/issues/3165

按照里面的某些讨论进行尝试:

的确没有再次报错,但是我觉得并没有解决这个问题(后来检查日志应该是更新成功了)。

另一个同学在尝试中使用easy_install升级six,解决了这个问题,我也进行了这种尝试:

非常顺利就能完成six的升级。

 

一些思考:

在解决这个问题的过程中我一开始觉得是10.11中SIP的问题,而且很多文章也说是SIP的问题。

但是后来另一个同学用easy_install很容易的就升级了six,我突然意识到可能是six这个包本来是用easy_install安装的,因此pip才无法卸载six。

Xcode资源文件清理:删除无用的旧设备支持文件

Mac硬盘只剩下20G可用空间了,做了清理也只清理出了3G可用空间,但是印象里自己并没有在电脑存太多东西啊!于是开始做手动磁盘清理,在检查用户目录下的资源库时,发现这个目录异常的大:

~/Library/Developer/Xcode/iOS\ DeviceSupport

1

里面似乎是各个版本的iOS支持文件,甚至还有6.1.3版本的支持文件。如果能删除旧版的支持文件,那就能给电脑腾出一大块空间啊!于是找了一下资料,看能不能删除。

根据这个回答,删除旧版支持文件是完全没有问题的,甚至可以全部删除,并且应该定期删除!

AFDFCD85-9FAF-4097-92E6-0B086784478E

Linux下批量替换文件名中的部分字段

从网上下载了一批旧的影视剧资源,命名倒是挺规范,但是不和我的胃口,想要重新命名。

但是不能用简单的批量重命名,因为原文件名里包含一个集名的字段,这个字段一定是不同的。如果用批量重命名,会导致这个字段消失,然而我想保留它,于是想批量替换掉我不想要的字段。

Mac上用brew安装了rename,默认安装的是Perl 语言版本。

命令格式:rename ‘s/原字符串/新字符串/’ 文件名

字符串支持正则,要注意字符元的使用和转义。

同时,原字符串只会在一个文件名中匹配一次,例如:

[舌尖上的中国][01][高清版][HR-HDTV].mp4

执行:rename ‘s/\]\[/./’

[舌尖上的中国.01][高清版][HR-HDTV].mp4

 

tree命令在Mac终端中文文件名显示异常

想要给一个朋友发自己硬盘里电子书资源列表,于是想到了tree命令。

安装后一试,

居然是这个样子!!!

A5C34B7A-E320-4EF5-AE1D-B236392E4B55

最先想到的是编码错误,于是百度『linux tree 乱码』,尝试若干种解决方法,并没有什么卵用!

无意中发现了这篇文章http://wwdd23.github.io/2015/01/09/mac-tree-chinese-display-error.html,终于解决了问题。

只需要加一个参数『-N』。

4315FF7E-7125-4F58-874A-153795587850