macOS Big Sur 解决系统文件不可修改

起因

本是为了删除 macOS 11.4 自带的 PHP,经历了一下步骤:

  • 先关闭 SIP
1
csrutil disable
  • 再删除 PHP 相关文件
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
cd /private/etc/ && sudo rm -rf php-fpm.conf.defaultphp.ini php.ini.default

cd /usr/bin/ && sudo rm -rf php php-config phpdoc phpize

cd /usr/include && sudo rm -rf php  // 10.14之后没有此目录

cd /usr/lib && sudo rm -rf php

cd /usr/sbin && sudo rm -rf php-fpm

cd /usr/share && sudo rm -rf php

cd /usr/share/man/man1 && sudo rm -rf php-config.1 php.1 phpize.1

cd /usr/share/man/man8 && sudo rm -rf php-fpm.8

Mac 开光指南 [2022.08.05更新]

💻 一份新 macOS 快速食用方法,普适新 Mac 或重装系统。

本文基于 MBP 14寸(2021)12.3 系统()和 MBP 13寸(2014)11.4 系统。

系统和软件的更新,部分内容可能没有及时更新,故操作界面或步骤会略有差别,但影响不大。

本指南涉及内容较广,请选择适合自己的操作。

本指南遵循许可协议 CC BY-NC-ND 4.0(请看转载要求

长期更新地址: https://github.com/shockerli/mac-initialize

最后更新于 2022-08-08

应用安装

安装软件

软件下载途径

  • App Store 搜索或排行榜
  • 软件的官网,都会提供下载
  • 第三方网站(不一定安全,需自行甄别)

有一些软件,是没有上架应用商店(如搜狗输入法)、或应用商店里的是阉割版本(如柠檬清理),就需要去官网下载。

下载软件时,尽量选择与架构匹配的,不要选 Universal,因为 Universal 会同时包含两个架构的软件包,体积更大但却没啥用。以下图 VSCode 为例,如果是 M1/M2 等苹果芯片则选 Apple Silicon,反之则选 Intel Chip

vscode-select-mac-platform

当然,目前绝大多数的软件是不支持这么选择的,也就是只提供了一个 Universal 通用版本,那安装后,电脑里就会多一个架构的软件,可以使用柠檬清理进行查找清理掉,不影响正常使用。

桌面上的安装包图标怎么去除?

  • 方法①:桌面上右键安装包图标,选择「推出“XXX”」。

移除桌面安装包镜像图标

  • 方法②:Finder(访达)左栏的「位置」处也有对应安装包,点按应用名称右侧的推出图标即可。

  • 方法③:重启系统后,安装包镜像会自动取消,对应的图标也会自动消失。

关闭软件更新

为何要关闭软件更新?因为默认会自动下载更新,也就会偷偷跑流量,而苹果系统更新都是几个G起步。不信看看 /Library/Updates 目录有多大。

关闭自动更新:

  • 系统偏好设置 → 软件更新 → 自动保持我的 Mac 运行最新版本(取消勾选)
  • 系统偏好设置 → 软件更新 → 高级... → 取消所有勾选(主要是下载可用的更新
  • App Store → 偏好设置 → 自动更新(取消勾选)、自动下载站其他设备上购买的App(取消勾选)

删除已下载的文件:

  • 关闭 SIP、删除目录 /Library/Updates 下的内容、再开启 SIP

进程 nsurlsessiond 会偷偷跑流量,有几个原因:

  • 正在下载系统或软件更新文件
  • iCloud 正在同步数据

如何不靠运气致富

美国风险投资家 Naval Ravikant 有一个很有名的长推特,一共40条,题目叫做《如何致富,不靠运气》,谈了他的商业观。

Naval Ravikant 后来还有一篇长文,详细解释这些观点。

中文版翻译

以下为和菜头翻译的中文版

  1. Seek wealth, not money or status. Wealth is having assets that earn while you sleep. Money is how we transfer time and wealth. Status is your place in the social hierarchy.

    去寻求财富,而非金钱或地位。财富就是你拥有资产,而资产在你睡觉的时候都还在为你赚钱;金钱是我们转换时间和财富的工具;身份是你在社会等级体系里所处的位置。

  2. Understand that ethical wealth creation is possible. If you secretly despise wealth, it will elude you.

    要明白一件事:一个人完全可以不靠坑蒙拐骗站着赚取财富。如果你在暗中鄙视财富,那么财富也会躲着你。

  3. Ignore people playing status games. They gain status by attacking people playing wealth creation games.

    别去理会那些热衷于玩身份游戏的人,他们通过攻击那些创造财富的人以获得自己的身份。

MySQL 源码阅读 —— macOS VSCode 编译调试 MySQL 5.7

最开始用的 CLion,但电脑扛不住,最终换成 VSCode,世界瞬间清净了😁

macOS + CLion 版本看 这里

环境

  • macOS Big Sur 11.5.2
  • VSCode 1.59.1
  • MySQL 5.7.35

依赖

如果以下软件未安装或版本不符合,使用 brew 安装即可

  • CMake
  • g++
  • openssl 1.1

VSCode 插件

在 VSCode 应用商店搜索并安装以下插件

  • C/C++
  • C/C++ Clang Command Adapter
  • CodeLLDB
  • CMake Tools

MySQL 源码阅读 —— 问题 expanded from macro MYSQL_VERSION_MAJOR

问题描述

在执行 make 构建时可能会报错

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
Building C object storage/myisam/CMakeFiles/myisam.dir/mi_rfirst.c.o
In file included from /path/to/mysql-5.7.35/storage/perfschema/cursor_by_account.cc:28:
In file included from /path/to/mysql-5.7.35/include/my_global.h:57:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX11.3.sdk/usr/include/c++/v1/math.h:309:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX11.3.sdk/usr/include/c++/v1/type_traits:417:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX11.3.sdk/usr/include/c++/v1/cstddef:37:
/path/to/mysql-5.7.35/version:1:1: error: expected unqualified-id
MYSQL_VERSION_MAJOR=5
^
/path/to/mysql-5.7.35/include/my_config.h:404:29: note: expanded from macro 'MYSQL_VERSION_MAJOR'
#define MYSQL_VERSION_MAJOR 5
                            ^