ACPI 和 Windows 电源管理
ACPI (Advanced Configuration and Power Interface) 标准创始于 Intel,Microsoft,Toshiba 公司,后转入一个非营利性公司 UEFI Forum。ACPI 旨在制定一个计算机电源管理的国际标准,用于定义计算机不同的电源状态。本文将对此标准进行大致的介绍并对某些部分做出一定的解释。本文严重依赖 Microsoft 的相关 Documentation。
在不同平台下同步 Safari 和 Firefox 的书签
Safari 浏览器在 macOS、iOS、iPadOS 这些 Apple 生态内的操作系统下,由于其原生的设计和与系统紧密的结合,使用起来十分方便。然而对于某些像我一样的用户,虽然主力设备全是 Apple 生态圈内的产品,但是却不可避免的需要在某些场景下使用 Linux 和 Windows 等其他系统。可惜的是,Apple 并没有为这些平台开发 Safari 浏览器,所以 Safari 中的书签也无法同步到这些设备上,因此,在这些平台下我选择使用 Firefox 作为主力浏览器。虽然说可以在所有平台下都使用 Firefox 来进行网页浏览从而达成跨平台同步的目的,但是毕竟对于我这类用户,Apple 生态圈依然是主力,还是不愿牺牲大部分时间下的系统级的便利性,因此,需要找到一种方式灵活的同步 Safari 和 Firefox 之间的书签。
VMware Workstation 在 Manjaro 中安装的常见问题
VMware Workstation 是一个非常成熟的虚拟机软件,支持 Linux 和 Windows。由于不同 Linux 发行版的内核模块启用状况和默认配置天差地别,这类严重依赖内核模块的软件时常会遇到一些千奇百怪的问题。每次遇到相关问题时,对于那些了解 Linux ,经验丰富,且对 Linux 的架构和运行方式都较为熟悉的老用户来讲,读懂报错信息然后有针对性的查阅资料解决问题已是家常便饭,可是对于新人来讲,尤其是那些想要得到 Linux 开发环境的便利却又离不开一个装有 Windows 的虚拟机的普通用户来讲,有些问题还是很棘手的。 本文会列举我在 Manjaro Linux 下安装和使用 VMware Workstation 时所遇到的问题以及解决方案,后续遇到新问题还会继续更新。
对称加密和非对称加密
在上次关于 Git 配置的文章中,提到了设备和 GitHub 之间通讯使用了一种名为 RSA 的非对称加密算法,挖了一个坑,这次纯属是为了填坑。为了更清楚的介绍非对称加密算法,从源头理解非对称加密算法的必要性, 本文还将大致介绍一下现代信息加解密的简单发展历程, 从明文储存(Plaintext)到对称加密(Symmetric Encryption),再到哈希(Hash),加盐哈希(Salted Hash),最后引出非对称加密(Asymmetric Encryption)与带签名的非对称加密(Asymmetric Encryption with Signature)。
Windows 睡眠后风扇依然运转解决方案
Windows 自带的睡眠模式可以在暂时不使用电脑的时候使计算机进入低功耗模式,即 ACPI(Advanced Configuration and Power Management Interface) 中的 S3 State。在此模式下,仅需要微弱的功耗来维持内存中的数据,使得重新唤醒后能极快的恢复睡眠之前的状态,比休眠和关机的唤醒快很多。然而,如迅雷之类的软件,时常会阻止计算机进入睡眠状态从而在长时间没有操作的时候依然让计算机保持唤醒使其自身能够在后台继续运行。此时,计算机会进入一种“假睡眠”状态,症状是即使睡眠风扇也持续运转,且碰一下鼠标就会瞬间唤醒,需要手动解决。
解决阿米洛键盘被 Linux 识别为 Mac 键盘导致 F 区锁定
阿米洛的机械键盘(或是其他某些品牌的键盘) 有时会被 Linux 系统识别为 Mac 的键盘,从而导致键盘上方 F 区变成功能键,而不是传统的 F1 到 F12, 造成使用过程中,非常大的不便。 我们可以通过很简单的命令来更改其默认的行为。
Linux 下 SMB/CIFS 的挂载和权限管理
在使用 NAS 的情况下, 我们经常会把一个磁盘或是一个目录,通过 SMB 的方式进行共享。 如果我们使用的是带有 GUI 的 macOS, Linux 或是 Windows 我们都可以非常简单的使用系统自带的文件管理器将共享目录挂载为一个本地磁盘,然而在服务器端,特别是没有安装 GUI 图形界面的服务器端,我们只能够通过命令行的方式挂载和管理网络驱动器。 由于 SMB 等 CIFS 并不支持 Linux 的权限管理, 在挂载完成之后,我们时常会遇到很多权限管理所带来的问题,这些问题可以通过修改挂载选项来解决。
Linux&macOS 中配置 Git 与 GitHub
无论是开发项目还是编写论文博客,Git 都是一个不可或缺的工具用来记录项目的每一次迭代,并且在必要的时候,还可以挽救失误回退上一个版本。单独的 Git 已经可以在本地很好的完成上述任务,但是如果需要多个设备,多个开发者之间协同工作,或是想要寻求一个远端服务器进行项目备份,亦或是想要更方便的分享项目,GitHub 将会提供一个锦上添花的服务。
Homebrew 换源
不同于各种各样的 Linux 发行版,macOS并没有提供一个可用的软件包管理器,因此,为了使用命令行来安装和管理各种各样的软件,我们需要在macOS上安装一个 Homebrew 来实现类似的功能。然而,Homebrew 使用 Github 作为默认的仓库,使得 Homebrew 在中国大陆使用时,无论是安装软件还是升级软件,都需要非常漫长的等待,甚至有的时候因为 DNS 污染等网络原因,根本无法连接服务器。得益于中科大的开源镜像站,我们可以将 Homebrew 的默认仓库设置成中科大的镜像服务器,从而加速在中国大陆的访问。
Manjaro Linux 安装和配置
Manjaro Linux 安装和配置由于每次换电脑或者不小心把电脑折腾崩了之后,重装系统都是要耗费相当长一段时间来重新配置整个系统,然而很多时候又会不记得之前配置了些什么东西。更糟糕的情况是,曾经安装的过程中遇到了一些问题,在当时已经通过搜索得到了解决,可是再一次配置的时候又遇到相同的问题却再也找