标签归档:macOS

m1 MacBook 安装 asahi linux 磁盘调整失败解决

尝试在 MacBook Air m1 安装 asahi linux ,在磁盘分区过程遭遇报错,具体过程没有留下来,是类似这样的报错:

error: doc-id tree: record exists for doc-id 64, file-id 9665861 but no inode references this doc-id

大致解决是要进恢复模式,之后使用急救程序尝试修复。

尝试后发现还是报错,后来在 asahi linux 的 github 找到一个类似问题,使用下列方法解决:

I had a similar issue, where /dev/disk3s5 had warnings that wouldn’t go away, and I solved it as follows:

Boot into recovery and open a terminal
`diskutil unmountdisk /dev/disk3`
`fsck_apfs /dev/disk3` (and hit y in response to the various prompts)

I believe unmounting was the important part.

之后磁盘分区就不报错了。

参考文献: https://github.com/AsahiLinux/asahi-installer/issues/88#issuecomment-1095019173

macOS 使用 arping 扫描 ip 冲突

最近工作网络不稳定,多个常用 IP 出现冲突,就连 DHCP 获取到的 IP 也会立刻冲突,原因等待相关人员去解决,今天简单记录 macOS 下 IP 冲突检测的原因。

一般检查 IP 是否被占用的方法是使用 ping

$ ping 119.29.29.29
PING 119.29.29.29 (119.29.29.29): 56 data bytes
64 bytes from 119.29.29.29: icmp_seq=0 ttl=50 time=14.477 ms
64 bytes from 119.29.29.29: icmp_seq=1 ttl=50 time=15.033 ms
64 bytes from 119.29.29.29: icmp_seq=2 ttl=50 time=15.330 ms
^C
--- 119.29.29.29 ping statistics ---
3 packets transmitted, 3 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 14.477/14.947/15.330/0.354 ms

但是这种方法看不到ip冲突,如果出现多个机器占用同个 IP,可以利用arp协议查一下 MAC 地址:

# macOS 下这样安装
$ brew install arping
# 使用 alias 定义快速使用别名
$ alias arping='sudo /opt/homebrew/opt/arping/sbin/arping'

另外发现 m1 下的 brew 安装 arping 默认不会进入 PATH ,因此在这里手动设定一个别名,方便使用。

之后扫描,如果出现 IP 冲突,可以看到有多个 MAC 地址回应:

$ sudo /opt/homebrew/opt/arping/sbin/arping 192.168.5.79
Password:
ARPING 192.168.5.79
60 bytes from 6a:f2:77:bd:bf:16 (192.168.5.79): index=0 time=463.000 usec
60 bytes from 6a:29:af:20:80:7f (192.168.5.79): index=1 time=1.002 msec
60 bytes from 6a:f2:77:bd:bf:16 (192.168.5.79): index=2 time=582.000 usec
60 bytes from 6a:29:af:20:80:7f (192.168.5.79): index=3 time=1.182 msec
60 bytes from 6a:f2:77:bd:bf:16 (192.168.5.79): index=4 time=658.000 usec
60 bytes from 6a:29:af:20:80:7f (192.168.5.79): index=5 time=1.117 msec
60 bytes from 6a:f2:77:bd:bf:16 (192.168.5.79): index=6 time=772.000 usec
60 bytes from 6a:29:af:20:80:7f (192.168.5.79): index=7 time=1.096 msec
^C
--- 192.168.5.79 statistics ---
4 packets transmitted, 8 packets received,   0% unanswered (4 extra)
rtt min/avg/max/std-dev = 0.463/0.859/1.182/0.257 ms

还可以通过 arping 来查看是否 IP 被占用,有些机器会禁止 PING 检测,使用 arp 这类二层协议检测占用情况会更准确些。

参考文献

macOS12 使用 UTM 体验 macOS 13 Ventura (多图预警)

UTM 是苹果 IOS、macOS 生态下的一款开源的虚拟机软件,底层基于 QEMU 或 Apple 虚拟化,能够在苹果操作系统上以半虚拟化(同 CPU 架构)或全虚拟化(异构 CPU 系统)的形式运行 Linux、Windows 以及 macOS。

macOS 13 (Ventura) 是苹果公司用于麦金塔桌面操作系统macOS的第19个主要版本,于2022年6月7日的苹果全球开发者大会(WWDC)上发布,成为macOS 12 Monterey的继任版本。此版macOS命名自加州南部的滨海旅游胜地范朵拉市

基于此前苹果系统的一些历史丑闻,导致本人在内的许多人对苹果推送的新固件保持谨慎态度。作为生产力存在的 macOS 更加需要小心谨慎了。

但一味的观望总是毫无进展的,还是上手体验一番最有说服力。虽然在 macOS 12 下使用 UTM 不可以直接启动 macOS 13 虚拟机,但是可以通过安装 macOS 12 虚拟机然后再更新到 macOS 13 的形式体验到最新的 macOS。

下面介绍方法和效果展示,多图预警!!

材料准备

为了安装 macOS 12 虚拟机,需要至少准备以下资源:

  • UTM
  • macOS12 IPSW 文件(约14GB)
  • 大约 64GB 的磁盘空间

其中 UTM 用于启动虚拟机,按照官网的流畅安装即可,非常简单。

IPSW 文件可理解为苹果生态下的 ISO 镜像,其中包含所有系统资源,可通过 这里这里 下载到 macOS 12 系统镜像。

IPSW(iPhone软件)是一种文件格式,用于为装有Apple芯片的设备安装iOS,iPadOS,tvOS,HomePod和最近的macOS固件。

需要注意的是,macOS 13 无法直接在 macOS 12 下启动,因此即使能够获取到 macOS 13 的 IPSW 文件,也无法启动。

磁盘空间需要预留至少 64GB,因为本人在尝试分配 64G 硬盘后,发现安装过程中几乎全部耗尽,如果空间不足会导致虚拟机卡死。

一切准备就绪,就可以开始了。

开始 Ventura 之旅

以下使用图片加注释的形式进行,按照图示一步一步走过来即可,赶时间也可以直接看图片效果:

这一步载入 macOS IPSW 文件

建议磁盘选择 64GB,32 GB 无法安装 macOS 13

等待系统安装

登入 macOS 13

系统信息

软件展示

台前调度

总结

使用 UTM 足以体验所有 macOS13 的所有新功能,用来评估是否可以用于自己的日常工作,以及个人喜好,避免降级。

本文介绍了 UTM 配置 macOS 12 虚拟机并升级到 macOS 13 的全过程,展示了 macOS 13 变动较大的设置、时钟、天气以及台前调度等功能,希望对大家起到一些参考意义,若有问题欢迎留言。

参考文献

macOS 使用 remote-viewer 连接 spice 服务 | PC 连接 spice 云桌面方法

最近需要使用到云桌面办公,但目前仅支持 windows 客户端。后经过询问,发现是使用 spice 协议链接,提供地址后,即可使用第三方客户端链接。

MacOS 平台下没有很好的支持 spice 协议的图形化客户端,但是可以使用 remote-viewer 这个工具,也比较好用,下面介绍安装方法:

# jeffreywildman/homebrew-virt-manager 有些问题
# Krish-sysadmin 对它进行了修复,因此首先卸载参与包和地址
brew remove virt-manager
brew remove virt-viewer
brew untap jeffreywildman/homebrew-virt-manager

# 安装工具
brew tap Krish-sysadmin/homebrew-virt-manager
brew install virt-manager virt-viewer

# 如果缺少某些依赖库,安装后重试即可

# 使用
remote-viewer

https://imagehost-cdn.frytea.com/images/2022/01/25/2022-01-25-2.59.39816bc8ffe02fa999.png

输入 spice 地址链接即可。

https://imagehost-cdn.frytea.com/images/2022/01/25/2022-01-25-3.03.34fe54a45c4b94b76c.png

总结

这次探索走了不少弯路,从尝试各种第三方远程桌面客户端,到 remote-viewer 的安装,工具的安装也遇到不少问题,最后在我的 MacBook Air m1 上成功安装,在这里分享方法。

在 Linux 下可以使用 remmina 这款工具,支持 「X2Go  RDP  SPICE  VNC  SSH  HTTP/HTTPS」。

在 Windows 下则可以使用 virt-mananger 来链接,参考「windows和linux下的spice客户端使用方法」。

至此,Windows、Linux、MacOS 链接 spice 服务的方法介绍完毕。

参考文献