2023-05-28

MacOS-use-Stable-Diffusion

1. Stable Diffusion
1.1 用法和争议
1.2 许可证
1.3 不可控性
1.4 一点想法
1.5 用途
1.6 教程链接
2. Setup
2.1 Draw Things
2.2 diffusionbee
2.3 AUTOMATIC1111
3. Models
3.1 模型名词
3.2 模型下载
3.3. 中文详解链接
4. Prompts

1. Stable Diffusion


Stable Diffusion是2022年发布的深度学习文本到图像生成模型。
它主要用于根据文本的描述产生详细图像,尽管它也可以应用于其他任务,如内补绘制、外补绘制,以及在提示词​(英语)指导下产生图生图的翻译。

它是一种潜在​扩散模型,由慕尼黑大学的CompVis研究团体开发的各种生成性人工神經网络。
它是由初创公司StabilityAI,CompVis与Runway合作开发的,并得到EleutherAI和LAION​(英语)的支持。

Stable Diffusion的代码和模型权重已公开发布,可以在大多数配备有适度GPU的电脑硬件上运行。
而以前的专有文生图模型(如DALL-E和Midjourney)只能通过云计算服务访问。

1.1 用法和争议

Stable Diffusion 对生成的图像不主张任何权利,并免费授予用户使用模型生成的任何图像的权利,前提是图像内容不违法或对个人有害。
为用户提供的图像使用自由引发了所有权伦理方面的争议,因为 Stable Diffusion 和其他生成模型是在未经所有者同意的情况下从受版权保护的图像中训练出来的。

由于视觉风格和构图不受版权保护,因此通常认为生成艺术作品图像的 Stable Diffusion 用户不应被视为侵犯视觉相似作品的版权。
然而,如果使用他们的肖像,生成的图像中描绘的个人可能会受到人格权的保护, 和知识产权例如可识别的品牌标识仍然受版权保护。
尽管如此,视觉艺术家表示担心,Stable Diffusion 等图像合成软件的广泛使用可能最终会导致人类艺术家以及摄影师、模特、电影摄影师和演员逐渐失去与基于 AI 的竞争对手的商业可行性。

与基于生成式 AI 的其他商业产品相比,Stable Diffusion 在用户可能生成的内容类型方面明显更加宽容,例如暴力或色情图像。
针对该模型可能被用于滥用目的的担忧,Stability AI 的首席执行官 Emad Mostaque 解释说,“[这是]人们的责任,即他们如何操作这个模型是否符合伦理、道德和法律技术”,并且将稳定扩散的能力交到公众手中将导致该技术提供净收益,尽管存在潜在的负面后果。
此外,Mostaque 认为,Stable Diffusion 的开放可用性背后的意图是结束企业对此类技术的控制和支配,这些技术以前只开发了用于图像合成的封闭人工智能系统。
这反映在以下事实中:由于源代码的可用性,Stability AI 对用户可能生成的内容施加的任何限制都可以很容易地被绕过。

1.2 许可证

与DALL-E等模型不同,Stable Diffusion 提供其源代码以及模型(预训练权重)。
它将 Creative ML OpenRAIL-M 许可证(一种 Responsible AI License (RAIL) 形式)应用于模型 (M)。
该许可证禁止某些用例,包括犯罪、诽谤、骚扰、人肉搜索、“剥削……未成年人”、提供医疗建议、自动产生法律义务、提供法律证据,以及“歧视或伤害个人或团体基于关于……社会行为或……个人或人格特征……[或]受法律保护的特征或类别”。
用户拥有其生成的输出图像的权利,并且可以自由地在商业上使用它们。

1.3 不可控性

  • 使用photoshop,blender等软件制作图片,模型的过程是使用各种工具,命令的过程,是可控的过程。
  • 使用ChatGPT,Stable-Diffusion等深度学习AI为基础的软件生成内容,仅使用期望的关键字即可生成,没有中间过程,结果不可控。
因此有2个特点
  • 无论如何都会出图。比如,使用极简关键字“white paper”,或者使用100个单词的详细描述,或者多个单词内容互相矛盾,或者有错字,都可以生成图片。而且使用大致相同的时间。
  • 出图结果概率。可能是惊喜,惊吓,搞笑,反胃,无语... 

1.4 一点想法

全新的许可,内容还比较模糊,本身也有争议的部分。软件可以自由使用,越来越多的人使用,产出越来越多的假照片,假新闻。即使是触法,由于人多,不完整的法会更加无能为力。
ChatGPT更能高效制造真假新闻,话题,AI不断的生成假照片。新一代的AI再基于大量的假信息假照片训练学习,制造更多的假信息,假图片,恶性循环。
应该被关在笼子里科技,在监管下使用,类似可用于药物的毒品。
若AI生成图片,尽能通过某些经过认证的网页生成。且需要注册为用户。生成的图片可以不受限制,但会在服务器上保留备份,或可避免被大量滥用。

年初,国内也发出研发自己的聊天AI,但想象不到会如何发展。因为很多词语是不可说的,记得有几次发布博客文,包含了 开源vpn的名称,就不能发布了,一定要改了才行。 ChatGPT刚出来闹笑话,国内的怕是要闹尴尬了...

1.5 用途

商用恐涉及侵权,除了造假,貌似没有什么好的实际用途。
对于普通用户,充其量就是个热门玩具。

当盲盒游戏玩,有不可确定的输出(惊喜,惊吓,搞笑...)。

或者,使用类似如下的简单描述,每次输出都修改种子后再算图,得到一张你喜欢的图片, 然后使用这个种子seed,修改年龄,从3岁到90岁,步进3,出30张图,耗时1小时(当前m1芯片的MacBook Air出1张图大约100妙).  算出同一seed,同样的提示词,不同年龄的人。从可爱如小嫩芽,到美丽如花朵,再到衰落... 
a female, ((25 years old)), High detail RAW color photo professional, highly detailed face: 1.4, detailed full body portrait, detailed skin, beauty, beautiful, perfect body, walking to camera, bokeh,

或许真正的用途是系统收集大量用户喜好,为未来AI理解人类视角,人类审美,更拟真的模仿人类作的准备。

1.6 教程链接

openai中文指南
包含ChatGPT,Stable Diffusion等各种AI技术的中文网站。 

【Stable Diffusion】ControlNet 详解篇
Stable Diffusion 新手入门手册


2. Setup

2.1 Draw Things

基于流行的 Stable Diffusion 模型,Draw Things 可帮助您在几分钟而不是几天内创建您心中的图像。 它是免费的,在您的设备上 100% 离线运行所有内容以保护您的隐私。
Draw Things 可以在M1,M2的苹果笔记本上运行。
目前最新版已经支持中文了,但中文提示词还不行,或许是我不会用。对于中文提示词也没找到可参考的网站。
Models路径: 
/Users/tom/Library/Containers/com.liuliu.draw-things/Data/Documents/Models

2.2 diffusionbee

不推荐,功能过于简单,很多流行的模型不被支持。
 % brew search diffusion
 % brew install diffusionbee
 % brew uninstall diffusionbee
 % brew info diffusionbee
… ==> Analytics install: 2 (30 days), 136 (90 days), 1,523 (365 days)
Models路径: 
访达界面,打开用户目录,使用快捷键(command + shift + period)显示隐藏文件,就能看到隐藏的模型文件夹了。
/Users/tom/.diffusionbee/downloads 
/Users/tom/.diffusionbee/custom_models

2.3 AUTOMATIC1111

Models路径
/Users/tom/stable-diffusion-webui/models
/Users/tom/stable-diffusion-webui/models/Stable-diffusion

3. Models

3.1 模型名词

  • Models: 模型资料库
  • LoRA: 微调, 特定风格,某些情有独钟的pose
  • Control: 姿态控制等

3.2 模型下载


3.3 中文详解链接

Stable Diffusion爱好者常说的LoRa是什么?
LoRA: Low-Rank Adaptation of Large Language Models 直译为大语言模型的低阶适应.  这是微软的研究人员为了解决大语言模型微调而开发的一项技术。

【Stable Diffusion】ControlNet 详解篇
女模特总是不配合?用它!游戏原画没灵感?也用它!建筑绘画各行各业设计都用它!它就是 ControlNet ! 只需简单调整参数就能产出无限创作灵感,提高我们的创作效率! 这款 SD 插件已成为了AI 绘画领域最新的热点。 而它的出现代表着 AI 生成开始进入真正可控的时期,而 AIGC 的可控性是它进入实际生产最关键的一环。 在此之前,大家用了很多方法想让 AI 生成的结果尽可能符合要求,但都不尽如人意, ControlNet 比之前 img2img 要更加精准和有效,可以直接提取画面的构图,人物的姿势和画面的深度信息等等。 有了它的帮助,就不用频繁用提示词来碰运气抽卡式创作了。

万字长文解读Stable Diffusion的核心插件—ControlNet

4. Prompts

提示词网页, 安装好后,下载了最火的模型,参考下面这些网页的美图提示词试试吧。

2023-04-30

MacOS-Homebrew

1. homebrew介绍
1.1 简介
1.2 争议
1.3 数据采集
2. 安装
2.1 Homebrew默认安装目录
2.2 官网安装脚本
2.3 国内安装脚本
2.4 使用科大源安装
3. 修改源
3.1 查看当前源
3.2 修改为阿里源
3.3 替换为清华源
3.4 替换为中科大源
3.5 腾讯源
3.6. 重置为官方源
4. 使用homebrew
5. 软件列表

1. homebrew介绍

1.1 简介


Homebrew 是一个免费的开源软件包管理系统,可以简化软件在Apple的 macOS 和 Linux 上的安装。  
包管理器最初由 Max Howell 编写。Homebrew 是 Software Freedom Conservancy 的非营利项目成员,完全由无偿志愿者运营。
安装包含一个 git 存储库,允许用户通过从 GitHub 拉取更新的存储库来更新 Homebrew。 

1.2 争议

Homebrew 修改了 /usr/local 的默认权限; 具体来说,模式从 drwxr-xr-x root wheel 更改为 drwxrwxr-x myuser admin。  
安装程序更改了所有文件(不仅仅是目录)的所有权。  一些人认为这是一个主要的安全漏洞。
rwx r-x r-x root wheel
rwx rwx r-x myuser admin
用户
其他
用户
用户

所属组
所属组

1.3 数据采集

Homebrew 通过 Google Analytics 收集安装、构建错误和操作系统版本统计信息。 
可以使用命令 brew analytics off 选择退出。 
用户可以在 Homebrew 网站上查看过去 30、90 和 365 天的分析数据。

2. 安装


2.1 Homebrew默认安装目录

  • macOS (Intel) 的 /usr/local
  • macOS (Apple Silicon 即M1) 的 /opt/homebrew 
  • Linux 的 /home/linuxbrew/.linuxbrew

2.2 官网安装脚本

将官网提供的脚本,如下,复制到终端执行即可。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

安装文档和手册页

2.3 国内安装脚本

使用以上官网脚本安装很可能会非常慢,直到失败... 如下连接可以直接在浏览器里打开安装脚本文件,里面很多提示和注释都是中文的。
下载并执行安装脚本
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

2.4 使用科大源安装

a) 首先在命令行运行如下几条命令设置环境变量:
export HOMEBREW_BREW_GIT_REMOTE="https://mirrors.ustc.edu.cn/brew.git" 
export HOMEBREW_CORE_GIT_REMOTE="https://mirrors.ustc.edu.cn/homebrew-core.git" 
export HOMEBREW_BOTTLE_DOMAIN="https://mirrors.ustc.edu.cn/homebrew-bottles" 
export HOMEBREW_API_DOMAIN="https://mirrors.ustc.edu.cn/homebrew-bottles/api"
b1) 之后在命令行运行 Homebrew 安装脚本:
/bin/bash -c "$(curl -fsSL https://github.com/Homebrew/install/raw/HEAD/install.sh)"
b2) 初次安装 Homebrew / Linuxbrew 时,如果无法下载安装脚本(上面b1步骤失败),可以使用科大每日同步的安装脚本文件。
/bin/bash -c "$(curl -fsSL https://mirrors.ustc.edu.cn/misc/brew-install.sh)"

3. 修改源

Mac 下 brew 切换为国内源

3.1 查看当前源

 % cd "$(brew --repo)" && git remote -v               
 origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git (fetch) 
 origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git (push)  
 % cd "$(brew --repo homebrew/core)" && git remote -v 
 origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git (fetch) 
 origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git (push)

3.2 修改为阿里源

$ git -C "$(brew --repo)" remote set-url origin https://mirrors.aliyun.com/homebrew/brew.git 
$ git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.aliyun.com/homebrew/homebrew-core.git

# zsh 替换 brew bintray 镜像 
$ echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles' >> ~/.zshrc 
$ source ~/.zshrc
# bash 替换 brew bintray 镜像 
$ echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles' >> ~/.bash_profile 
$ source ~/.bash_profile
# 刷新源 
$ brew update

3.3 替换为清华源

# 替换各个源 
$ git -C "$(brew --repo)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git 
$ git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git 
$ git -C "$(brew --repo homebrew/cask)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-cask.git
# zsh 替换 brew bintray 镜像 
$ echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.zshrc 
$ source ~/.zshrc
# bash 替换 brew bintray 镜像 
$ echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.bash_profile 
$ source ~/.bash_profile
# 刷新源 
$ brew update

3.4 替换为中科大源

# 替换各个源 
$ git -C "$(brew --repo)" remote set-url origin https://mirrors.ustc.edu.cn/brew.git 
$ git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git 
$ git -C "$(brew --repo homebrew/cask)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-cask.git
# zsh 替换 brew bintray 镜像 
$ echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.zshrc 
$ source ~/.zshrc
# bash 替换 brew bintray 镜像 
$ echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.bash_profile 
$ source ~/.bash_profile
# 刷新源 
$ brew update

3.5 腾讯源

cd "$(brew --repo)" 
git remote set-url origin https://mirrors.cloud.tencent.com/homebrew/brew.git 
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core" 
git remote set-url origin https://mirrors.cloud.tencent.com/homebrew/homebrew-core.git 
brew update

3.6 重置为官方源

$ git -C "$(brew --repo)" remote set-url origin https://github.com/Homebrew/brew.git 
$ git -C "$(brew --repo homebrew/core)" remote set-url origin https://github.com/Homebrew/homebrew-core.git 
$ git -C "$(brew --repo homebrew/cask)" remote set-url origin https://github.com/Homebrew/homebrew-cask
# zsh 注释掉 HOMEBREW_BOTTLE_DOMAIN 配置 
$ vi ~/.zshrc 
# export HOMEBREW_BOTTLE_DOMAIN=xxxxxxxxx
# bash 注释掉 HOMEBREW_BOTTLE_DOMAIN 配置 
$ vi ~/.bash_profile 
# export HOMEBREW_BOTTLE_DOMAIN=xxxxxxxxx
# 刷新源 
$ brew update

查看当前源
% cd "$(brew --repo)" && git remote -v 
 origin https://github.com/Homebrew/brew.git (fetch) 
 origin https://github.com/Homebrew/brew.git (push) 
% cd "$(brew --repo homebrew/core)" && git remote -v 
 origin https://github.com/Homebrew/homebrew-core.git (fetch) 
 origin https://github.com/Homebrew/homebrew-core.git (push) 
% cd "$(brew --repo homebrew/cask)" && git remote -v 
 origin https://github.com/Homebrew/homebrew-cask (fetch) 
 origin https://github.com/Homebrew/homebrew-cask (push)

% cat ~/.zshrc  
# export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles 
# export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles 
# export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles 
# export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.cloud.tencent.com/homebrew-bottles 
# export HOMEBREW_BOTTLE_DOMAIN=''

4. 使用homebrew

获取帮助 % brew help
搜索软件包 brew search TEXT|/REGEX/
查看软件包信息 brew info [FORMULA|CASK...]
安装软件包 brew install FORMULA|CASK...
更新 Homebrew brew update
查看那些已安装的程序需要更新 brew outdated
不带参数,升级所有软件包 brew upgrade [FORMULA|CASK...]
升级指定软件包 brew upgrade [package]
卸载软件包 brew uninstall FORMULA|CASK...
列出已安装的软件包列表 brew list [FORMULA|CASK...]
列出软件包的依赖关系 brew deps [package]
清除过时软件包 brew cleanup
-n 查看可清理的旧版本包,不执行实际操作 brew cleanup -n
清理指定包的旧版本 brew cleanup [package]
配置信息 brew config
检查系统是否存在问题 brew doctor
安装显示debug信息 brew install --verbose --debug FORMULA|CASK
不带参数的话,
将会列出当前已经tapped 的仓库:
% brew tap
homebrew/cask
homebrew/core
homebrew/services

5. 软件列表

核心仓库软件列表,和图形界面软件列表
下面是按照统计下载最多的软件排列

顺便列举一些常用软件
libreoffice, blender, vlc, virtualbox, microsoft-office, qbittorrent, telegram-desktop, vmware-fusion, kindle, qq, 
google-earth-pro, v2rayx, notion, crossover, gimp, github, telegram, gdisk, youtube-downloader, ccleaner, ffmpeg, v2ray...

MacOS-Setup-GenshinImpact

MacOS-Setup-GenshinImpact

1. Genshin Impact
	1.1 国内安装包
	1.2 国际安装包
	1.3 云平台游戏
2. 安装
	2.1 下载并安装PlayCover
	2.2 添加ipa源
	2.3 安装ipa软件
3. 登陆验证
	3.1 关闭SIP
	3.2 添加参数并登陆验证
	3.3 重新开启SIP
	3.4 补充阅读
	3.5 更多问题
4 体验游戏
	4.1 键盘鼠标
	4.2 手柄
	4.3 游戏设置菜单
	4.4. 兑换码

 

1. Genshin Impact

是一款角色扮演冒险游戏,支持多种平台。

  • Adnroid系统,ios系统,Windows系统,PS5,
  • 官方云平台(据说每小时至少1G多网络流量,建议wifi下使用)
  • 另外使用M1芯片的Mac设备也可以(需要PlayCover)

同时各大平台数据都会互通。

不能互通的是登陆时选择的服务区。
首先是安装包,分为国内安装包和国际安装包。

1.1 国内安装包

https://ys.mihoyo.com/
国内安装包使用需要手机验证,可以短信登陆。就是俗称的国服。很多软件都是这样,地理上亚洲包含中国,但中国又自我孤立与亚洲。

米游社-原神
https://bbs.mihoyo.com/ys/strategy/?bbs_presentation_style=no_header
这里有地图,角色攻略,任务手册,装备解析等。

1.2 国际安装包

国际安装包,可以选择以下几个服务区,
1.TK/HK/MO(港澳台服) 2.Asia(亚服) 3.Europe(欧服) 4.America(美服)
https://genshin.hoyoverse.com/en/home
其中港澳台服这个区感觉比较奇怪,不理解为何单独分出来,(不属于亚洲?也不属于中国?) 看网页上其他用户的描述,该区用户数较少,联机匹配打怪时可能需要等待较长~时间。

社区页面
https://act.hoyoverse.com/ys/event/e20221107-community/index.html
提瓦特大陆地图
https://act.hoyolab.com/ys/app/interactive-map/index.html

1.3 云平台游戏

本地不需要安装巨大的完整版。
https://mhyy.mihoyo.com/
https://mhyy.mihoyo.com/news/detail/103534

2. 安装

 

注:下面全部是[国际版]安装包的操作过程。
这里记录在MacOS系统上的安装过程,由于该游戏并没有发布支持MacOS的dmg安装包,也仅在苹果app商店里登记了iso版本,并没有macOS版本。
所以这里用到的安装包是ISO系统里提取的版本。
MacOS-Setup-App
https://www.cnblogs.com/sztom/p/17207598.html
下面是PlayCover的手册页,非常详细。
https://docs.playcover.io/getting_started/index

2.1 下载并安装PlayCover

https://www.cnblogs.com/sztom/p/17207598.html#3
https://github.com/PlayCover/PlayCover/releases

2.2 添加ipa源

https://decrypt.day/library
打开PlayCover软件,依次点开屏幕左上角的主菜单PlayCover\设置\IPA来源,添加以上地址。

2.3 安装ipa软件

添加完成ipa源,在PlayCover软件左侧的[IPA库]页签下就能浏览网站所有可用ipa软件,选择添加即可。
P-2.3-IPA库

需要注意的是这里有2个原神版本:

  • >[原神]: 这个是国服,就是国内用户专用的版本,需要手机号码,可以短信登陆。
  • >[Genshin Impact]: 这个是国际版,可以选择亚洲,欧洲,美洲和港澳台4个服务区。

当前的3.5版本大约有3.5G,下载需要稍等片刻。
另外,不添加ipa源,手动下载或自行提取ipa文件后,也可以直接添加到本地app库里。
P-2.3-APP库

3. 登陆验证

部分游戏(如原神)使用的人机验证无法正常通过,因此需要暂停MacOS系统的SIP,验证后再开启SIP即可。
对于国服用户,据称绑定ID card+手机后,可直接通过短信验证码等形式登陆,并免去人机验证。
这里只说国际服部分,安装完IPA软件后,参考如下操作。
注:以下操作环境为MacOS系统,大版本v13,代号Ventura,M1处理器。PlayCover2.04版。

3.1 关闭SIP

1. 点开屏幕左上角苹果图标,在下拉菜单里,选择[关机]
2. [长按]键盘右上角电源键(黑色的指纹按键)。
3. 进入[恢复模式],输入账号密码后,从顶部菜单,工具里选择打开终端[Terminal]
4. 终端内输入如下命令关闭SIP。
% csrutil disable
需要稍等一会儿,看到成功关闭的信息即可。

3.2 添加参数并登陆验证

3.2.1 [重启电脑]正常进入系统,打开终端,输入如下命令:
sudo nvram boot-args="amfi_get_out_of_my_way=1 amfi_allow_any_signature=1"
3.2.2 登陆验证
以上完成后,再次[重启电脑]正常进入系统
打开原神加载验证程序,输入账号密码通过验证后即可。 (这时不要进入游戏,就是登陆最后的那道门,不要点开!!!) 关闭游戏,继续下面的步骤。
3.2.3 清除刚才添加的变量,打开终端输入如下命令,(不是必须的,重开SIP后,也会被禁用)
% sudo nvram -d boot-args

3.3 重新开启SIP

再次[关机],[长按]电源键开机进入[恢复模式],打开终端输入如下命令:
% csrutil enable
最后重启进入系统后就可以正常登陆游戏了。

3.4 补充阅读

关于 Mac 上的SIP系统完整性保护
https://support.apple.com/zh-cn/HT204899
https://support.apple.com/en-us/HT204899
SIP: System Integrity Protection 系统完整性保护
查看SIP状态
% csrutil status
System Integrity Protection status: enabled.
csrutil: 配置系统安全策略

nvram: 操作固件 NVRAM 变量
查看添加的boot-args
sudo nvram -p |grep boot-args

3.5 更多问题

a) 如果您尝试过此操作但仍然无法登录,请尝试 sudo nvram boot-args=“amfi_get_out_of_my_way=1” 作为 boot-args 而不是上面的那些。 您还可以尝试在“钥匙串访问”中删除与游戏相关的任何项目(在“聚焦搜索”中键入钥匙串访问以将其打开),以及在应用设置中启用越狱检测绕过。 其他登录问题可以通过清除应用程序首选项来解决。

b) 如果您在禁用SIP时不小心进了门,则在之后重新启用SIP时将无法登录游戏。 您可以尝试在钥匙串访问中删除与原神相关的项目(搜索 genshin 和 mihoyo),然后重复步骤 3.1~3.3 。具体步骤如下:
打开[启动台],找到英文名是[keychain access], 中文名是[钥匙串访问],在启动台界面的其他文件夹里,或者直接在启动台顶端搜索。
打开[钥匙串访问],在右上角的搜索栏位搜索“mihoyo”和“genshin”,将搜索出来的所有记录删除。
然后按照上述(3.1~3.3)步骤重新尝试。

c) 多个账号
若有多个游戏账号,可在(3.2.2 登陆验证)步骤依次验证,
验证完成后不要进入游戏,点击右边的退出小图标,退出当前账号,再输入下一个账号密码进行验证。
另外,若是后续增加的账号,则要参照前面的步骤再次关闭SIP后,增加验证账号后,再开启SIP。

4. 体验游戏

https://docs.playcover.io/keymapping/using_making_keymaps
在PlayCover里添加的软件都来自IOS版本,这些软件大部分功能都是通过触屏完成的。MacBook屏幕或外接屏幕通常都不是触屏。
游玩游戏可以通过键盘+鼠标或者外接游戏手柄。

4.1 键盘鼠标

打开游戏,左上角有键盘鼠标映射[Keymapping]
P-3.1

[⌘ Command + K] | 打开或关闭键盘映射。
[⌘ Command + ⌫] | 删除选中的映射键
[⌘ Command + 方向上] | 放大选中的映射键触控面积
[⌘ Command + 方向下] | 缩小选中的映射键触控面积
[⌘ Command + 旋转] | 旋转画面,若是不小心点到了,就多点几下转回来即可。
[⌥ option ] | 可以来回切换是否释放鼠标
下面是PlayCover的手册页,非常详细。还有上传到github的键盘映射文件供下载,注意自己的显示器比例,选择合适的使用即可。
https://docs.playcover.io/keymapping/using_making_keymaps
https://github.com/PlayCover/keymaps/tree/master/keymapping
下面找到个连接,中文,也蛮详细了,供参考。
https://blog.csdn.net/sunhoms/article/details/126706166
新版 playCover 键位映射教程(mac 玩 ios 原神键位映射示例) 2022-09-05
P-3.1-2

4.2 手柄

P-3.2

1. 蓝牙连接手柄
我这里用的是多合一通用手柄,就是可以支持手机,Mac,Windows等多平台的手柄。
使用不同模式开机就能连接不同设备。
当前使用rb+Home启动,连接Mac后识别为Xbox设备。

设置为手柄后,如上图,按钮旁边都有操作键提示,便于熟悉按键。

4.3 游戏设置菜单

P-3.3

回到PlayCover的App库里,右键点击游戏图标,列出该游戏设置相关菜单。
[设置]
设置部分,预设开启键盘,鼠标映射,不用改。
[导入键盘映射布局]
这里可以将别人做好的映射直接导入,导入后也可根据个人习惯,微调修改。
[导出键盘映射布局]
这里可以备份直接常用的布局,需要时可以重新导入。

4.4 兑换码

Mac系统下使用的ios版本原神,在[设置]\[账号]下没有[兑换码]的选项,不知为何,但可通过如下页面登陆后兑换。
下面是国际服的登陆页,可以查看自己的账号信息,登陆设备等。
https://genshin.hoyoverse.com/en/home
国际服的[兑换码]页面
https://genshin.hoyoverse.com/zh-tw/gift
https://genshin.hoyoverse.com/en/gift

2023-02-23

MacOS-first-experience

1. MacOS 键盘快捷键
  1.1 Apple官网摘录
  1.2 和Windows快捷键对比
2. MacOS 上的菜单栏
3. 最小化,窗口,关闭,3个常用按钮
4. 大小写切换
5. 应用程序管理
6. macOS 使用手册

MacOS初体验

1. MacOS 键盘快捷键

1.1 Apple官网摘录

要使用键盘快捷键,请按住一个或多个修饰键,然后按快捷键的最后一个键。例如,要使用 Command-C(拷贝),请按住 Command 键并按 C 键,然后同时松开这两个键。Mac 菜单和键盘通常会使用符号来表示某些按键,其中包括以下修饰键:

Command(或 Cmd)⌘
Shift ⇧
Option(或 Alt)⌥
Control(或 Ctrl)⌃
Caps Lock ⇪
Fn 

在 Windows PC 专用键盘上,请用 Alt 键代替 Option 键,用 Windows 标志键代替 Command 键。

Apple 键盘上的某些按键具有特殊符号和功能,例如用来控制显示屏亮度 、键盘亮度  等。如果你的键盘上没有这些功能,你也许可以通过创建自己的键盘快捷键来实现其中的一些功能。要将这些键用作 F1、F2、F3 或其他标准功能键,请将它们与 Fn 键组合使用。


1.2 和Windows快捷键对比

a. command对应ctrl,control对应alt;
b. windows系统下,ctrl在键盘2边,距离空格键更远。MacOS下对应的command紧挨着空格键。相当于windows下ctrl和alt的位置互换了。从Windows和Mac转换时,快捷操作上就会需要些适应时间。

2. MacOS 上的菜单栏


MacOS桌面的菜单栏是固定在顶部的,包含3部分。
最左边固定有 苹果菜单
紧接着是App菜单 (打开什么应用程序,就显示该程序的菜单)
右边从左到右分别是: 状态菜单(电量,网络),聚焦(搜索), 通知中心(亮度,音量调节等), Siri(...), 日期时间。
应用程序主菜单并不是现实在应用程序的窗口上,而是显示在屏幕顶层的菜单栏上。不管应用程序窗口怎么拉伸,习惯Windows的用户,刚接触Mac可能会找不到菜单,其实就在最上面,屏幕的最上面... 

3. 最小化,窗口,关闭,3个常用按钮

Windows系统下这3个窗口控制按钮在右上角;
MacOS系统下这3个窗口控制按钮在左上角;
Linux系统下这3个窗口控制按钮默认在右上角,很多窗口管理器可以自由设置他们的位置。
无论如何,使用上感觉还是在右上角更合适。
(Mac系统下左上角的X,不是关闭,而是最小化,要想关闭程序需要使用快捷键:Commade+Q)

4. 大小写切换

Mac系统下CapsLock,用于中英输入法切换。
Windows系统下CapsLock,用于大小写切换。
Mac系统下要连续输入大写字母,长按2秒CapsLock键,开启大写模式,再按关闭大写模式。

5. 应用程序管理

如何在 Mac 上卸载 App

在 Mac 上的 App Store 中查看和管理已购买的 App

在 Mac 上安装和卸载来自互联网或光盘的 App

苹果账号网页登陆

配合 Mac 使用一台或多台外接显示器

Wi-Fi 路由器和接入点的推荐设置


6. macOS 使用手册


Mac 上“磁盘工具”中可用的文件系统格式

终端使用手册

创建可引导的 macOS 安装器

如何在 Mac 上启用 root 用户或更改 root 密码

 % sudo passwd root
Password:
Changing password for root.
New password:
Retype new password:

################################### WARNING ###################################
# This tool does not update the login keychain password.                      #
# To update it, run `security set-keychain-password` as the user in question, #
# or as root providing a path to such user's login keychain.                  #
###############################################################################

 % 

2022-10-21

Fastboot-Mi11Pro

1. 手机准备
2. 电脑准备
	2.1 下载Android SDK中的平台工具(platform-tools), 
	2.2 Windows用户安装驱动
	2.3 Windows资源管理器
3. 解锁
4. 刷全球版MiUi
5. 刷Recovery
	5.1 下载twrp镜像文件
	5.2 进入刷机模式
	5.3 临时启动下载的映像
	5.4 刷入twrp
6. 获取Root权限
	6.1 方式1-修补boot.img文件
	6.2. 方式2-adb模式刷入

1. 手机准备

基本状况: Miui版本: 12.5.11(RKACNXM); Android版本: 11
手机开启[开发者模式]。打开设置,关于,连续点击版本,就能打开[开发者模式]; 在开发者模式下打开usb调试。 
解锁相关,参照官网步骤操作。
基本流程: 解锁 > 线刷系统; 线刷recovery > 获取root

2. 电脑准备

2.1 下载Android SDK中的平台工具(platform-tools)

有分别支持Windows,Mac,Linux系统的版本。包含fastboot刷机命令,adb调试等命令。

2.2 Windows用户安装驱动

Windows 用户需要在他们的计算机上安装适当的驱动程序。 如果您还没有安装工作驱动程序,您可以尝试使用简单的 FWUL adb/fastboot ISO或Naked ADB 驱动程序或Universal ADB 驱动程序
另外,小米的解锁工具,或者刷机工具也都包含驱动。

2.3 Windows资源管理器

资源管理器下在不同的状态下会分别显示以下名称。
  • 便携设备 \ Mi 11 Pro  
    • - 手机连接电脑,传输模式选择MTP,(图片,文档或者两者)就会显示为便携设备。 在我的电脑里,可以作为文件夹打开手机,直接复制文件。
  • 通用串行总线设备 \ Mi 11 Pro  
    • - 有时会显示为这样... 忘记记录是什么情况下了...
  • Android Phone: Android Composite ADB Interface  
    • - 手机打开USB调试,正常开机状态连接电脑,可以使用adb命令。(> adb devices)
  • Android Phone: Android Bootloader Interface   
    • - 在上面的adb模式下使用 adb reboot bootloader 命令进入刷机fastboot模式,可以使用fastboot命令。(> fastboot devices)

3. 解锁

新手机通常要登陆账号7天以后才能解锁. 

4. 刷全球版MiUi

Xiaomi Mi 11 Pro (mars); Xiaomi Mi 11 Ultra (star)。这2款手机使用相同的rom镜像。

a. 下载rom后,使用小米的刷机工具刷时,注意右下角的默认选项是: [删除全部并lock]刷完锁机,按照需要选择全刷,或者保留用户数据。

b. 也可以直接使用fastboot命令刷机,刷机包解压缩后,有完整的刷机批处理文件。
批处理文件后缀: 
  •   *.sh 后缀sh的用于Linux或Mac平台刷机。 
  •   *.bat 后缀bat的就是windows系统用的批处理文件了。
  •   *.txt 后缀为txt的是同样内容为了便于查看脚本内容的。
文件名: 
  •  flash_all_except_data_storage 保留用户数据 
  •  flash_all 删除全部 
  •  flash_all_lock 删除全部并lock [慎用]
 操作步骤: 
手机连接电脑, > adb devices 能看到序列号就说明连接正常了; > adb reboot bootloader 重启到fastboot模式。
 > adb devices  
 > adb reboot bootloader
 > fastboot devices
  ************    fastboot 
 > flash_all.bat
fastboot devices 能看到手机序号后,直接输入> flash_all.bat 回车,开始刷机,等待几分钟,看到所有任务完成后,重启进入新系统。

5. 刷Recovery

twrp官网提供下载,页面内也包含刷入步骤及注意事项。
此设备使用动态分区 这意味着 TWRP 将不允许修改任何构成股票 ROM 上的超级分区的分区。
所有备份和恢复都将包括完整的超级分区而不是单个动态分区。 为了刷新各个分区,您必须启动到 fastbootd。

5.1 下载twrp镜像文件

twrp-installer-3.7.0_11-0-mars.zip (30.6M) 2022-10-04
twrp-3.7.0_11-0-mars.img (192M) 2022-10-04 (只用到了这个)

5.2 进入刷机模式

通过命令 adb reboot bootloader 重启到 fastboot模式;或者使用手动组合键重启到fastboot模式。
 > adb reboot bootloader

5.3 临时启动下载的映像

 > fastboot boot twrp.img
twrp.img 替换为 你下载的文件名。或者你下载的文件名改为这个名称。
完成后会重启到twrp的recovery模式。注意,这只是临时启动,还没有刷入手机。

5.4 刷入twrp

  • 首选安装方法:一旦启动,导航到 Advanced > Flash Current TWRP 选项。 这会将您刚刚启动的 TWRP 映像永久安装到设备上。(当前使用这个一次成功)
  • 备用安装方法: 一旦启动,导航到 Advanced > Install Recovery Ramdisk 选项。 这将要求您选择要从中安装 TWRP 的映像。 选择您刚刚下载并复制到设备存储中的 TWRP 映像。继续安装此映像。 注意:您还需要使用同一高级选项卡中的“修复恢复引导循环”选项。 在成功安装恢复 ramdisk 后使用该选项,以避免在永久安装 TWRP 时发生引导循环。
完成此操作后,您已成功在您的设备上安装了 TWRP。

6. 获取Root权限

fastboot boot twrp.img,临时启动,刷的是boot区,不是recovery区,11版本后recovery已经被包含在boot区内。
使用magisk获取root权限有2种方式。
手机下载最新版的 Magisk-v25.2.apk 安装文件,直接安装。

6.1 方式1 - 修补boot.img文件

前面刷twrp时,使用twrp.img文件刷入,覆盖了原本的boot.img
理论上,直接将这个twrp.img交给magisk修补后,重新刷入手机即可。 刷入方法与上面刷入twrp一样。
如果失败,就吧原本的boot.img再刷回去,恢复如初后使用下面方式。

6.2 方式2 - adb模式刷入

将下载的 Magisk-v25.2.apk 文件,修改后缀为zip,Magisk-v25.2.zip. 复制到电脑上备用。
手机组合键或如下命令进入Twrp的recovery模式。
 > adb reboot recovery
注: 下面有手机 a方式; 和a失败后的 Plan b 电脑辅助方式。
  • Plan a. 在revocery模式下,点击 [Install] 安装按钮
    1. 导航到手机的下载目录,选择刚才修改过后缀的 Magisk-v25.5.zip 文件。
    2. 点击 [Select Storage] 选定安装这个zip文件。
    3. 滑动 [Swipe to confirm Flash] 完成后重启进入系统。
    4. 打开Magisk应用,能看到版本号,且能点击下面的[超级用户],就说明已经root了。
  • Plan b. 这是上面的a操作失败的Plan b
    1. 说明: 很多手机没有root时,即使刷入Twrp,在Twrp界面下权限有限,看不到具体文件。就要借助电脑帮忙了。
    2. twrp下依次点击后面的按钮打开adb调试功能: [Advanced] \ [ADB Sideload]
    3. 手机连接电脑后,电脑上找到前面修改过的 Magisk-v25.2.zip 文件。
    4. 在电脑的命令行下输入命令: 
      • > adb sideload Magisk-v25.2.zip
    5. 回车后,查看手机界面上,运行完成后,重启进入系统。 
    6. 打开Magisk应用,能看到版本号,且能点击下面的[超级用户],就说明已经root了。

2022-10-13

Comparison-of-file-systems

 
https://en.wikipedia.org/wiki/Comparison_of_file_systems
https://zh.wikipedia.org/wiki/文件系统的对比

更多信息在以上维基百科页面,有超过100种文件系统。这里只摘录20种备查。

sn File system Creator Year of introduction Original operating system 许可 Maximum 
filename length
文件名长度
Allowable characters
in directory entries
目录条目中
允许的字符
Maximum
Pathname length
路径名长度
Maximum
File size
文件大小
Maximum
volume size
卷大小
Max number
Of files
文件数
Stores
File owner
存储文件
所有者
POSIX file
Permissions
文件权限
Creation
Timestamps
创建时间戳
Last access/
Read timestamps
上次访问/
读取时间戳
Last metadata
Change timestamps
上次元数据
更改时间戳
Last archive
Timestamps
上次存档
时间戳
Access
Control lists
访问控制
列表
Security/
MAC labels
安全/MAC
标签
Extended attributes/
Alternate data streams/
Forks
扩展属性/
备用数据流/分叉
Metadata
Checksum/ ECC
元数据
校验和
/ECC
Hard links
硬链接
Symbolic links
符号链接
Block journaling
块日志
Metadata-only journaling
仅元数据日志
Case-sensitive
区分大小写
Case-preserving
保案
File Change Log
文件更改日志
XIP Internal snapshotting / branching
内部快照/分支
encryption
加密
deduplication
重复数据删除
Data checksum/ ECC
数据校验和/ECC
Persistent Cache
持久缓存
Multiple Devices
多个设备
compression
压缩
Host OS
主机操作系统
Offline grow
线下成长
Online grow
线上成长
Offline shrink
离线收缩
Online shrink
在线收缩
add and remove physical volumes
添加和删除物理卷
Sparse files
稀疏文件
Block suballocation
块再分配
Tail packing
尾部包装
Extents
范围
Variable file block size
可变文件块大小
Allocate-on-flush
分配时刷新
Copy on write
写入时复制
Trim support
修整支撑
DOS Linux macOS Windows 9x Windows NT classic Mac OS FreeBSD OS/2 BeOS Minix Solaris z/OS Yes
M:BK
os
AZ:BK
sn2
1 APFS Apple 2016 macOS High Sierra, iOS 10.3
255 UTF-8 characters Unicode 9.0 encoded in UTF-8 ? 8 EB ? 263 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes ? ? Partial Yes ? ? Yes Yes Yes No No No Yes macOS ? ? ? ? ? Yes ? ? Yes ? Yes Yes Yes No Partial (read-only with apfs-fuse or linux-apfs) Yes
(Since macOS Sierra)
No No No No No No No No No 21 0 1
2 BlueStore/Cephfs Red Hat, University of California, Santa Cruz 2017 Linux
? any byte, except null, No limit defined Max. 264 bytes, 1TB by default  Not limited Not limited, default is 100,000 files per directory  Yes Yes Yes Yes ? No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No No Yes No No Yes Yes Yes Yes Linux No Yes No Yes Yes Yes ? ? ? ? No Yes Yes No Yes No No No No No No No No No No 26 1 2
3 Btrfs Oracle Corporation 2007 Linux GPL 255 bytes Any byte except '/' and NUL No limit defined 16 EB 16 EB 264 Yes Yes Yes Yes Yes No Yes Yes Yes Yes Yes Yes Yes No Yes Yes ? ? Yes No Yes Yes No Yes Yes Linux Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No Yes ? No Yes with WinBtrfs ? No ? ? ? ? ? 33 1 3
4 exFAT Microsoft 2006 Windows CE 6.0 proprietary 255 UTF-16 characters ? 32,760 Unicode characters with each path component no more than 255 characters 16 EB 64 ZB (276 bytes) ? No No Yes Yes No No No No No No No No No Partial (with TexFAT only) No Yes No No No No No No No No No misc. No No No No No No No No Partial (only if the file fits into one contiguous block range) No No No Yes (Linux) No Yes (since 5.4, available as a kernel module or FUSE driver for earlier versions) Yes No Yes (installable drivers for Windows XP, 2003. Included with Windows Vista SP1 and newer.) No Yes (available as a FUSE driver) No No No Yes (available as a FUSE driver) No 4 1 4
5 ext2 Rémy Card 1993 Linux, Hurd
255 bytes Any byte except NUL, / No limit defined 16 GB to 2 TB 2 TB to 32 TB ? Yes Yes No Yes Yes No Yes Yes Yes No Yes Yes No No Yes Yes No Yes No No No No No No No Linux Yes No Yes No No Yes No No No No No No Yes No Yes Yes with Paragon ExtFS  or ext2fsx Partial (read-only, with explore2fs) Yes with Paragon ExtFS  or partial with Ext2 IFS or ext2fsd No Yes No Yes ? ? ? 19 3 5
6 ext3 Stephen Tweedie 1999 Linux
255 bytes Any byte except NUL, / No limit defined 16 GB to 2 TB 2 TB to 32 TB ? Yes Yes No Yes Yes No Yes Yes Yes No Yes Yes Yes (2001) Yes (2001) Yes Yes No Yes No No No No No No No Linux Yes Yes Yes No No Yes No No No No No No Yes No Yes Yes with Paragon ExtFS  or partial with ext2fsx (journal not updated on writing) Partial (read-only, with explore2fs) Yes with Paragon ExtFS  or partial with Ext2 IFS or ext2fsd Partial (read only)[citation needed] Yes No with addon ? Yes ? 20 3 6
7 ext4 various 2006 Linux
255 bytes Any byte except NUL, / No limit defined 16 GB to 16 TB 1 EB 232 (static inode limit specified at creation) Yes Yes Yes Yes Yes No Yes Yes Yes Partial Yes Yes Yes Yes Yes, optional Yes No Yes No Yes, experimental No No No No No Linux Yes Yes Yes No No Yes No No Yes No Yes No Yes No Yes Yes with Paragon ExtFS  No Yes with Paragon ExtFS  or partial with Ext2 IFS or ext2fsd ? Yes since FreeBSD 12.0 No with addon ? ? ? 22 1 7
8 F2FS Samsung Electronics 2012 Linux GPLv2 255 bytes Any byte except NUL, / No limit defined 3.94 TB 16 TB ? Yes Yes Yes Yes Yes No Yes Yes Yes No Yes Yes Yes No Yes Yes No No No Yes, experimental No No No No Yes Linux Yes No No No No Yes No No Partial No Yes Yes Yes No Yes No No No No No No No No No No 20 1 8
9 FAT32, FAT32X Microsoft 1996 MS-DOS 7.10 / Windows 95 OSR2

























































0 0 9
10 JFS IBM 1999 OS/2 Warp Server for e-business
255 bytes Any Unicode except NUL No limit defined 4 PB 32 PB ? Yes Yes Yes Yes Yes No Yes Yes Yes No Yes Yes Yes Yes (1990) Yes Yes No ? ? No ? No No No only in JFS1 on AIX Linux Yes No No No No Yes Yes No Yes No No ? Yes (Linux) No Yes ? No No ? No Yes ? ? ? ? 19 2 10
11 Lustre Cluster File Systems 2002 Linux
255 bytes Any byte except NUL No limit defined 16 EB on ZFS 16 EB ? Yes Yes No Yes Yes No Yes Yes Yes No Yes Yes Yes Yes Yes Yes Yes No No No No No Yes Yes No Linux ? Yes No No Yes Yes No No Yes No Yes ? ? No Yes ? No No ? No ? ? ? Yes ? 23 2 11
12 NOVA UC, San Diego 2017 Linux
255 bytes Any byte except NUL, / No limit defined 16 EB 16 EB ? Yes Yes Yes Yes Yes No No No No Yes Yes Yes No Yes Yes Yes No Yes Yes No No Yes No No No Linux No No No No No Yes No No Yes No No Yes ? No Yes No No No No No No No No No No 18 1 12
13 NTFS Microsoft (Gary Kimura, Tom Miller) 1993 Windows NT 3.1 proprietary 255 characters In Win32 namespace: any UTF-16 code unit (case-insensitive) except /\:*"?<>| as well as NUL
In POSIX namespace: any UTF-16 code unit (case-sensitive) except / as well as NUL
32,767 Unicode characters with each path component (directory or filename) up to 255 characters long 16TB Default (4KB Cluster Size), 2MB Cluster Size 8 PB 16TB Default (4KB Cluster Size), 2MB Cluster Size 8 PB 232 Yes Yes Yes Yes Yes No Yes Yes Yes No Yes Yes No Yes (2000) Yes Yes Yes ? No Yes Yes No No No Yes Windows Yes Yes Yes Yes No Yes Partial No Yes No No ? Yes (NT 6.1+; Linux) Partial (with third-party drivers) Yes with the Paragon NTFS kernel driver or ntfs-3g Yes natively read only, write support with Paragon NTFS or ntfs-3g Yes (with 3rd-party drivers like Paragon NTFS for Win98, DiskInternals NTFS Reader) Yes No Yes with ntfs-3g ? Yes with ntfs-3g No Yes with ntfs-3g ? 23 1 13
14 ReFS Microsoft 2012 Windows Server 2012 proprietary 255 UTF-16 characters In Win32 namespace: any UTF-16 code unit (case-insensitive) except /\:*"?<>| as well as NUL
In POSIX namespace: any UTF-16 code unit (case-sensitive) except / as well as NUL
32,767 Unicode characters with each path component (directory or filename) up to 255 characters long 16 EB 1 YB ? Yes Yes Yes Yes Yes No Yes ? Yes Yes Yes Yes ? ? Yes Yes ? ? ? No Yes Yes No No No Windows ? Yes ? No No Yes ? ? ? No ? Yes Yes (NT 6.1+) No Partial - with Paragon ReFS for Linux ? No Yes (from Windows Server 2012 and from Windows 8.1) ? ? ? ? ? ? ? 17 0 14
15 ReiserFS Namesys 2001 Linux
4,032 bytes/255 characters Any byte except NUL or '/' No limit defined 8 TB (v3.6), 4 GB (v3.5) 16 TB ? Yes Yes No Yes Yes No Yes Yes Yes No Yes Yes Yes Yes Yes Yes No ? No No No No No No No Linux Yes Yes Yes No No Yes Yes Yes No No No ? ? No Yes ? No No ? Partial - Read Only from 6.0 to 10.x and dropped in 11.0 ? with addon ? ? ? 20 1 15
16 SquashFS Phillip Lougher, Robert Lougher 2002 Linux
256 bytes ? No limit defined 16 EB 16 EB ? Yes Yes No No Yes No No Yes Yes No Yes Yes No No Yes Yes No No No No Yes Yes No No Yes Linux No No No No No Yes No Yes No No No No No No Yes Partial (There are ports of unsquashfs and mksquashfs.) No Partial (There are ports of unsquashfs and mksquashfs.) No Partial (There are ports of unsquashfs and mksquashfs and fusefs-port.) No No No No No 15 1 16
17 UFS2 Kirk McKusick 2002 FreeBSD 5.0
255 bytes Any byte except NUL No limit defined 512 GB to 32 PB 512 ZB (279 bytes) Subdirectory per directory is 32,767 Yes Yes Yes Yes Yes No Yes Yes Yes Partial Yes Yes No Yes Yes Yes No ? Yes No No No No No No FreeBSD Yes Yes (FreeBSD 10.0-RELEASE or later) No No No Yes No No Yes No ? Yes No Yes Yes No Partial (with ufs2tools, read only) ? Yes No ? ? ? ? 20 3 17
18 XFS SGI 1994 IRIX
255 bytes Any byte except NUL No limit defined 8 EB 8 EB ? Yes Yes Partial Yes Yes No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes ? No No Yes No No No No Linux No Yes No No No Yes No No Yes No Yes Yes, on request Yes (Linux) No Yes ? No No ? Partial ? with addon (read only) ? ? ? 21 1 18
19 ZFS Sun Microsystems 2004 Solaris CDDL 255 bytes Any Unicode except NUL No limit defined 16 EB 256x2^50 ZB (2128 bytes) 2128 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes No No Yes Yes Yes Yes Yes Yes Yes misc. No Yes No Partial Yes Yes Yes No No Yes Yes Yes Yes No Yes with FUSE or as an external kernel module Yes with Read/Write Developer Preview No Yes No Yes No No No Yes No 33 3 19
20 zFS IBM 2001 z/OS (backported to OS/390)
255 bytes Any Unicode except NUL No limit defined 16 EB 256x2^50 ZB (2128 bytes) 2128 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes No No Yes Yes Yes Yes Yes Yes Yes misc. No Yes No Partial Yes Yes Yes No No Yes Yes Yes Yes No Yes with FUSE or as an external kernel module Yes with Read/Write Developer Preview No Yes No Yes No No No Yes No 33 3 20

Sound

导航 (返回顶部) 1. Sound 1.1 声-音 1.2 声波的性质及特性 2. 声音频率 2.1 听力范围 2.2 VF-语音频率 2.3 人声基本频率 2.4 8度音阶表 2.5 综合表 3. 声波 3.1 Compression and she...