最近使用 macOS 自带的 Migration Assistant(迁移助手)将系统从一台 M1 Mimi 上迁移到了笔记本上,与此同时发现 Syncthing 也无缝迁移过来了,但是 Syncthing 在新旧两台 Mac 上出现相同的设备 ID。这是因为 Syncthing 的设备 ID 由其配置文件夹中的cert.pem
和key.pem
文件决定。如果这些文件在迁移过程中被复制,两台设备就会拥有相同的 ID,从而导致 Syncthing 操作出现冲突。
要解决这个问题,需要为其中一台 Mac 生成新的设备 ID。
以下是详细的步骤指南:
关闭新 Mac 上的 Syncthing
因为我直接使用 brew 安装的,所以直接停止服务
brew services stop syncthing
定位 Syncthing 配置文件夹
~/Library/Application Support/Syncthing
。删除cert.pem
和key.pem
文件
cert.pem
和key.pem
文件。这些文件负责生成设备的唯一 ID。重启 Syncthing
cert.pem
和key.pem
文件,从而创建新的设备 ID。brew services start syncthing
重新配置 Syncthing
验证同步
BitRemote 是一款专为 Apple 平台设计的 BT/PT 下载任务管理工具,作为一款原生应用,BitRemote 旨在为 iOS 和 macOS 用户提供全面的下载管理体验,填补了苹果生态系统中这一领域的空白。我个人之前在 Android 上使用一款开源的 [[Transdroid]],支持非常多的客户端,但是转移到 iOS 之后很久都没有找到类似的代替品,我在去年内测的时候就使用了 BitRemote,但是看过我之前文章,都知道我使用 ruTorrent 和 rTorrent 这两个比较小众的客户端,Transdroid 是支持的,但是 BitRemote 截止目前也还是不支持的,但是如果使用 [[qBittorrent]],[[Transmission]],[[Aria2]] 的用户不妨试一试。
BitRemote 可以在 Mac、iPhone、iPad 上 管理 BT、PT 下载任务 ,支持 iPhone,iPad,macOS 等。
支持客户端
BitRemote 使用原生技术开发,提供流畅的使用体验。
在 Android 下 BT 客户端 Transdroid 一款应用即可搞定,并且还有很多代替的应用。反而在 iOS 平台下,BT 客户端应用相对来说比较少。如果你在寻找一款能够在 iOS 下管理 BT 客户端的应用,那么不妨考虑一下 BitRemote。
目前 BitRemote 正式版本,提供 14 天免费试用,之后 200 日元一个月,一年是 2000 日元。因为我在日区,就直接使用日元计价了,其他区可以自行查看一下。
另外如果你的 BT 客户端是部署在局域网内的,不妨考虑通过 frp, ZeroTier 或者 Tailscale 等[[内网穿透工具]] 来组件虚拟局域网,然后安全的进行访问。
Dokploy 是一个开源的,可以自托管的 PaaS 平台,Dokploy 可以一站式部署管理平台,简化应用程序和数据库的部署和管理。结合了 Docker 和 Traefik 的功能,为用户提供了一个经济高效的自托管平台即服务 PaaS 解决方案。
Dokploy 可以用来代替 [[Heroku]],[[Vercel]],[[Netlify]] 等平台。
要在 VPS 上安装 Dokploy,首先需要通过 SSH 登录到服务器,然后执行以下命令
curl -sSL https://dokploy.com/install.sh | sh
该命令会自动安装 Dokploy 及其所需的 Docker 环境。
安装完成之后,系统会显示一个 URL,服务器 IP:3000 ,在浏览器访问 URL,用户进入注册页面,设置邮箱和密码完成注册。
登录后,进入 Settings 标签页,在 Server Domain 中输入已设置 A 记录的管理域名(如 web.example.com)。在 Letsencrypt Email 中输入邮箱地址,并选择 Letsencrypt 作为证书提供商,然后点击 Save。系统会自动获取 SSL 证书,之后可以通过 https://web.example.com 访问管理界面。
Dokploy 支持两种主要的部署方法:直接部署应用程序和使用 Docker Compose 部署。
通过 Docker Compose 部署
之前也介绍过一款使用 Go 语言实现的最小的 PaaS 项目 Dokku,开发者也是可以非常轻松地部署应用程序,Dokku 也是基于 Docker,非常轻量,可以安装在一台非常低配置的服务器中。
相较于 Dokku,Dokploy 则是提供了更有好的交互界面,并且支持 Docker Compose,还支持多节点部署。
Dokploy 的优势
之前还介绍过一个叫做 Coolify 的 PaaS 应用,Coolify 同样非常的强大,相比于 Coolify,Dokploy 胜在内建的多节点部署支持,以及内建的监控。
但是 Coolify 更友好的一点是,Coolify 支持内建的应用市场,支持通过界面点击完成安装。另外 Coolify 拥有非常活跃的社区,文档相对丰富。
Syncwise 是一款可以同步 Twitter,Reddit 等社交软件书签的工具,安装 Syncwise 的 Chrome 扩展,就可以一键将 Twitter 的书签同步到该平台中。可以在 Syncwise 中对书签的内容进行检索,打标签等。
Syncwise 支持多个平台,我个人最主要使用的就是 Twitter,因为 Twitter 自己的书签管理系统做得太差了,收藏的内容无法检索,也无法分类,经常无法找到自己收藏的内容,或者需要翻阅很久。
Syncwise 解决了一直以来的一个管理 Twitter 书签栏的痛点,我常常收藏了很多的内容而来不及阅读,这些内容最后都成为了 Twitter 书签中「死掉」的内容,借助这个工具,一方面我可以试试得进行检索我当下关心的内容,另一方面常常去翻阅我的书签。
Syncwise 支持包括 Twitter,Pinterest,YouTube,TikTok,Facebok,Quora 在内的很多个平台。
Syncwise 还支持导入浏览器书签。
即使像我这样有超过 1 万条记录,检索的结果返回也非常的快。
Syncwise 支持对书签进行标签分类 (Label),方便用户更好地管理自己的收藏内容。
Syncwise 的界面设计简洁明了,操作起来非常直观,用户可以快速找到自己需要的功能。
熟知域名的生命周期可以让自己对域名抢注有更好的了解,前段时间我有一个域名到期没有续费,因为不是很重要,所以就放着让其过期了,但好奇心使然,让我想要知道如果我不续费了,那么是不是可以等过期删除之后,再从别的域名注册商那边将其低价购买回来,因为毕竟很多域名注册商都是提供第一年非常低的价格出售的。
基于上面的想法,所以有了这一篇文章,在整理文章的过程中还顺便通过查询 whois 更加深了一下,还写了一段 Python 程序来监控域名的各种状态,想着再最后一刻再抢注回来,但是发现这个世界上还有另外一波人关注着过期的域名,会随时随地地进行抢注,也相应的存在一些服务,专门用来抢注过期的域名。这个等有时间的时候再整理吧。
总得来说,域名的生命周期包含了以下的几个状态。
如果有人对扫描域名和域名状态变更检测有兴趣的话也欢迎随时联系我或着加入我的群组。
域名尚未被注册,任何人都可以注册该域名。
注明已经被注册的阶段,通常的注册周期可以是 1~10 年。
过期阶段指的是,域名过期,为续费。
通常有 30~45 天的宽限期,可以以正常的价格续费。
但是域名相关的服务,网站,邮箱等会停止工作。
赎回期是域名过期后,在被完全删除之前的一个额外宽限期,允许原注册人通过支付额外费用来恢复域名。
时间通常在域名过期 30 到 45 天开始,持续 30 天。
目的是为了防止域名被意外删除,给原注册人最后一次机会恢复域名。
在赎回期内,域名相关的 DNS 记录都会被删除,所以网站,邮箱等都会停止工作。
恢复域名的费用需要在正常的续费费用上加上额外的赎回费用,赎回费用通常比较昂贵,可能高达 150 美元。
赎回期内根据 ICANN 的规定是不允许转让的。
赎回期结束后,域名进入 5 天左右的待删除状态。
此阶段域名无法被恢复。
域名被完全删除,重新开发给公众注册。
我一直都有这样的需求就是将不认识的日语单词查询字典之后,立即自动存入 Anki,以便于复习。在学习日语之前,学习英语的时候也有类似的需求,虽然之前借助字典应用部分解决了这个需求,但是问题一直还存在,因为 Anki 毕竟还是比字典自带的背诵记忆要强大很多,并且可自定义的部分很多。
那么今天介绍的这一款 Yomichan 就是这样的一个解决方案,Yomichan 是一个开源的日语查词插件,但是它有一个强大的地方就是他可以连结 Anki,在查询完成之后可以一键将查询内容以及结果保存到 Anki 中,完美地解决了我当前的问题,唯一的遗憾就是 Yomichan 这一款插件已经不再更新,作者也在自己的官方主页上说了,之后不在维护,但好在代码是开源的,并且截止目前为止依然还可以在我本地完美的工作。
可以从 Yomichan 的 GitHub 页面拉取代码 ,然后根据官方的教程编译 Chrome 插件,然后通过 Chrome 安装插件。
AnkiConnect 是一个 Anki 插件,它给 Anki 暴露了一个本地的 RESTful 接口,这使得外部的应用可以通过 API 来和 Anki 交互,在 Anki 上安装此扩展,并启用。
在 Yomichan 的设置中和 Anki 进行关联。然后打开 Yomichan 的监听粘贴板。在使用连接之前还需要在 Yomichan 中设置发送到 Anki 的字段,比如在 Anki 中想要有多个字段,比如日语,ふりがな,日语解释,英语解释,例句等,可以分别在 Yomichan 中做关联,那么 Yomichan 会根据查询的内容,将这些字段发送到 Anki 模板对应的字段中。
那么如果遇到想要查询的日语词,直接复制,就会弹出一个查询的结果框,点击上面的 + 号就可以直接将查询的内容发送到 Anki 中。
初步的使用体验已经非常完美的接近了我的工作流,但是还是存在一些小的遗憾,我通常在桌面端会使用 GoldenDict,GoldenDict 中有一些我非常喜欢的日中字典,比如说小学馆等,但是这些字典都无法在 Yomichan 上使用。
Mighty Networks 是一个为创作者和品牌提供可以共创和发展社区的专业平台。创作者可以通过 Mighty Networks 维系粉丝,举办活动和在线直播课程。
Mighty 为用户提供了一个平台,像创建电商独立站一样创建社区,和 Shopify 一样,Mighty Networks 也在为数字订阅和数字支付领域做贡献,只不过不是电商,而是从内容。
最低 41 USD 美元每月。
记录一次 VPS 被日志写满,VPS 重启后,导致 Redis 备份文件格式错误的问题。
今天早上起来的时候就收到了一台服务器服务的告警,但是没怎么注意,还以为是网络波动,但是到中午发现服务无法访问了,上到管理面板看了一下,发现日志写到 99%,幸好此时还可以登录,所以赶紧 ssh 登录上去,使用 gdu 扫描一下,发现 /www/wwwlogs/
文件占用了超过 60 GB,然后再一看网站的访问日志就写了超过 30GB,所以立马 less 排查一下没发现异常,就把文件清理了,但是 Ubuntu 下有一个问题,即使清理了文件,一时间系统也无法感知到文件被删除了,可能因为 Nginx 还在不断占用文件句柄写文件中,所以无奈只能临时重启一下服务器。
但是重启之后问题就出现了,首先是 Redis 无法启动
❯ sudo /etc/init.d/redis-server status
● redis-server.service - Advanced key-value store
Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Wed 2024-06-26 14:42:18 CST; 13s ago
Docs: http://redis.io/documentation,
man:redis-server(1)
Process: 6918 ExecStart=/usr/bin/redis-server /etc/redis/redis.conf (code=exited, status=0/SUCCESS)
Main PID: 6919 (code=exited, status=1/FAILURE)
Jun 26 14:42:18 gc4 systemd[1]: redis-server.service: Scheduled restart job, restart counter is at 5.
Jun 26 14:42:18 gc4 systemd[1]: Stopped Advanced key-value store.
Jun 26 14:42:18 gc4 systemd[1]: redis-server.service: Start request repeated too quickly.
Jun 26 14:42:18 gc4 systemd[1]: redis-server.service: Failed with result 'exit-code'.
Jun 26 14:42:18 gc4 systemd[1]: Failed to start Advanced key-value store.
然后我根据 Redis ,查看了 /var/log/redis/redis-server.log
之后发现,原来是 AOF 文件的问题。
8882:M 26 Jun 2024 14:43:42.161 * Reading RDB preamble from AOF file...
8882:M 26 Jun 2024 14:43:42.257 * Reading the remaining AOF tail...
8882:M 26 Jun 2024 14:43:42.935 # Bad file format reading the append only file: make a backup of your AOF file, then use ./redis-check-aof --fix <filename>
因为这一台服务器的 Redis 是直接通过 apt 安装,所以 AOF 文件默认被放在了 /var/lib/redis/appendonly.aof
,使用命令行
# back up aof file
cp appendonly.aof appendonly.aof.bak
redis-check-aof --fix appendonly.aof
然后再重启 Redis
sudo /etc/init.d/redis-server start
即可。
前两天偶然间收到一个推送,说有一款 AI 语音的笔记应用叫做 Voicenotes,今天终于有时间试用了一下,我的简单使用体验来说,这是一款通过语音来记录想法,备忘录的工具,它与其他笔记,备忘录的区别就在于 AI 的加持,Voicenotes 只允许通过语音输入,录音会通过识别转录成文字(AI),然后记录的所有内容都可以通过和 AI 提问的方式进行回顾,总结,或者进行 brainstorm。
Voicenotes 是跨平台的,目前提供了 Android 和 iOS 以及 Web 端,并且作者承诺之后会推出 Watch 版本。Voicenotes 的数据也是跨平台同步的。
每一个语音笔记都会自动生成一个标题
Voicenotes 会根据上一次的录音生成提问。
目前及未来 Voicenotes 将支持超过 55 种语言。
所有提及的名字都会被识别并记录下来以防止未来的误用。
为了给笔记爱好者保留习惯,Voicenotes 还是提供了标签功能,并且可以通过 AI 自动生成
可以通过搜索,快速检索所有录音笔记。
作者还提供了一个图表来记录每天的笔记,以及为了「炫耀」截图
简单地了解一下之后才发现,原来 Voicenotes 是 [[buymeacoffee]] 的作者 Jijo Sunny 和他妻子 Aleesa 的作品,他们目前也在官网进行了承诺,会保护用户的隐私,所有的音频内容及文字都不会被用来训练 AI,并且为了防止外部投资的影响,目前是通过 self-funded 方式来支持项目,并且作者也希望一直将项目进行下去。
目前 Voicenotes 免费用户可以每次都录制长达 1 分钟的录音,付费用户可以录制更长的录音。现在升级 Voicenotes 是 10 USD 每个月,现在可以 50 USD 购买终身授权。
在结帐时使用 z1CLp1
,可以额外再获得 10% 的减免。
虽然日常一直在用 MacBook,但是说实话我是没有去了解 M 系列芯片的具体性能的,虽然之前从 Intel 转向 M 系列芯片的时候有看过几个视频,说 M 系列的芯片确实在散热,省电和性能上碾压了 Intel,但是之后也没有继续再关注,直到前段时间在小红书上看到有闲着没事干的人分享了一个图片,图片内容是历年了 Apple 在 WWDC 上说的和前一代相比 CPU 性能又提升了多少,于是他把 M1 芯片作为基数 1 ,然后依次给不同系列的芯片乘以倍数,得出了一个非常有意思的图。
| 芯片 | CPU | GPU | NPU | | ——– | —- | —- | — | | M1 | 1 | 1 | 1 | | M1 Pro | 1.7 | 2 | 1 | | M1 Max | 1.7 | 4 | 1 | | M1 Ultra | 3.4 | 8 | 2 | | M2 | 1.18 | 1.35 | 1.4 | | M2 Pro | 1.9 | 2.6 | 1.4 | | M2 Max | 1.9 | 5.2 | 1.4 | | M2 Ultra | 4.08 | 10.4 | 2.8 | | M3 | 1.35 | 1.65 | 1.6 | | M3 Pro | 2.21 | 2.8 | 1.6 | | M3 Max | 3.06 | 6 | 1.6 | | M4 | 1.77 | 1.65 | 3.4 | 免责声明,此基数及倍数全部由 WWDC 官方宣传图得来,但具体实际性能还需要实际使用才能知道。
Apple silicon 的故事可以追溯到 2010 年,Apple 推出了首款自主研发的芯片 (Soc) —- Apple A4 ,芯片使用 ARM 架构,出现在第一代 iPad 和 iPhone 4 中。这个是 Apple 设计芯片的开端。
之后 A 系列的芯片被用在 iPhone,iPad 以及 Apple TV 中,A 系列的芯片也出现在已经停产的 iPod Touch 以及 HomePod 中。随着 Apple 不断地改进,提升核心数量,集成图形硬件和速度,逐渐拥有了媲美笔记本和台式机的性能。
随着技术积累,苹果决定脱离自 2006 年以来为 Mac 提供处理器的 Intel。2020 年宣布 Mac 全系列转向自家设计的芯片,于是 M 系列处理器的时代展开了。
Apple 自从 2020 年 WWDC 宣布将 Mac 全系列切换成 Apple silicon 过去已经有 4 年了,第一台搭载了 M 系列芯片的 Apple M1 MacBook 在 2020 年 11 月 10 号发售,直至今天所有的 Mac 产品线已经全部更换为 Apple silicon 芯片。
Apple M 系列的芯片至今为止也已经迭代了 4 代,短短的几年时间里面 M 系列芯片性能提升也非常巨大,苹果也一跃称为了顶尖的芯片制造商。
在目前的 M 系列芯片中包含了如下型号
芯片 | 发售日期 |
---|---|
M1 | 2020.11.10~2024.05.07 |
M1 Pro | 2021.1018~2023.01.17 |
M1 Max | 2022.03.08~2023.06.05 |
M2 | 2022.06.06~ |
M2 Pro | 2023.01.17~ |
M2 Max | 2023.01.17~ |
M2 Ultra | 2023.06.05~ |
M3 | 2023.10.30~ |
M3 Pro | 2023.10.30~ |
M3 Max | 2023.10.30~ |
M4 | 2024.05.07 |
介绍
产品线
芯片 | 标准版 | Pro | Max | Ultra |
---|---|---|---|---|
M1 | MacBook Air(2020) Mac mini(2020) MacBook Pro(13-inch 2020) iMac(2021) iPad Pro(2021) iPad Air(2022) |
MacBook Pro(14-inch and 16-inch, 2021) |
MacBook Pro (14-inch, 16-inch, 2021) Mac Studio(2022) |
Mac Studio(2022) |
M2 | MacBook Air(2022, 2023) MacBook Pro(13-inch, 2022) iPad Pro(2022) Mac Mini(2023) Vision Pro(2024) |
MacBook Pro(14-inch, 16-inch, early 2023) Mac mini(2023) |
MacBook Pro(14-inch, 16-inch, early 2023) Mac Studio(2023) |
Mac Studio(2023) Mac Pro(2023) |
M3 | MacBook Pro(14-inch, late 2023) iMac (2023) MacBook Air (13-inch, 15-inch, 2024) |
MacBook Pro (14-inch, 16-inch, late 2023) | MacBook Pro(14-inch, 16-inch, late 2023) |
CPU 和 GPU 的核心数影响了 Apple silicon 芯片的整体性能,以及多任务处理的能力。核心数越多在多任务处理,尤其是 CPU 和 GPU 资源消耗的任务来说有优势。
不同系列的芯片在核心数上也有不同的差别。
芯片 | 标准 | Pro | Max | Ultra |
---|---|---|---|---|
M1 | 4 高性能核心 4 高能效(energy efficient) 7, 8 核 GPU |
两个版本 6 个高性能核心 + 2 个高能效核心 + 14 核 GPU 8 个高性能核心 + 2 个高能效 + 16 核 GPU |
8 高性能 2 高能效 24 或 32 核 GPU |
16 高性能 4 个高能效 48 或 64 核 GPU |
M2 | 4 高性能 4 高能效 8,10 核 GPU |
6 或 8 个高性能 4 个高能效 16 或 19 核 GPU |
8 高性能 4 高能效 30,38 核 GPU |
16 高性能 8 高能效 60 或 76 核 GPU |
M3 | 4 高性能 4 高能效 8,10 核 GPU |
5,6 核高性能 6 高能效 14,18 核 GPU |
10,12 高性能 4 高能效 30,40 核 GPU |
单核性能
芯片 | (Standard) | Pro | Max | Ultra |
---|---|---|---|---|
M1 | 2,330–2,350 | 2,360–2,370 | 2,380–2,400 | 2,384 |
M2 | 2,570–2,630 | 2,640–2,650 | 2,740–2,800 | 2,760–2,770 |
M3 | 3,010 | 3,120 | 3,120 |
多核性能
芯片 | (Standard) | Pro | Max | Ultra |
---|---|---|---|---|
M1 | 8,250–8,390 | 10,300–12,200 | 12,180–12,430 | 17,810 |
M2 | 9,630–9,650 | 12,100–14,250 | 14,500–14,810 | 21,180–21,320 |
M3 | 11,763 | 14,010–14,410 | 19,160–21,215 |
M1、M2 和 M3 芯片在单核和多核任务中的性能逐步提升,尤其是 M3 芯片在各方面表现出更高的性能。然而,值得注意的是,基准测试并不能完全反映实际使用情况。基准测试专注于特定任务和合成负载,无法准确捕捉真实世界的使用场景和变化。
Apple Silicon 芯片采用统一内存架构,意味着内存直接与处理器相连,以实现最大速度和效率。这意味着所选的芯片决定了可用的内存选项,且内存无法在后期进行升级。
芯片 | (Standard) | Pro | Max | Ultra |
---|---|---|---|---|
M1 | 8GB 16GB |
16GB 32GB |
32GB 64GB |
64GB 128GB |
M2 | 8GB 16GB 24GB |
16GB 32GB |
32GB 64GB 96GB |
64GB 128GB 192GB |
M3 | 8GB 16GB 24GB |
18GB 36GB |
36GB 48GB 64GB 96GB 128GB |
决定需要多少内存取决于你的具体任务和使用模式。对于大多数用户来说,8GB 内存已经足够,但如果有更高强度的多任务需求,升级到 16GB 或 24GB 是合理的。超过 32GB 的内存通常适用于非常高要求的工作流程。
总体来说,如果是 Apple Silicon 的新用户,还不确定选择哪款芯片,可以参考以下原则:
通常来说,从任一 M1 芯片升级到其直接继任者并不值得。如果你已经是 M2 用户,可能更好等到 Apple 在未来几年推出 M4 系列芯片再进行升级。