ASUS C302CA 安装 Linux

本文ID:0e56cc60-06b8-11ea-b5cc-3d51f7356847


最近在咸鱼上淘到了一个二手的华硕 Chromebook(具体型号是 ASUS C302CA)。四核 M3-6Y30 + 8G 运行内存+ 32G eMMC 存储 + 12.5 寸触摸屏,虽然机身有少量磕碰,笔记本的转折铰链也有问题,但 800 元的价格着实实惠。

机器寄过来的时候依然是原装系统(Power Wash 过的 Chrome OS)。写个文章记录一将 OS 从 Chrome OS 换成 elementary OS 的过程。

拆写保护(WP)螺丝

Chromebook 的 BIOS 都是为了配合 Chrome OS 而特殊定做的,因此无法用来启动其他操作系统,没有 BIOS 设置界面,也无法升级 BIOS。但是可能是出于修理和防止可能的 BIOS 紧急固件更新,制造商仍然允许使用者解除 BIOS 的写入保护。常见的保护方式在 Chromium Projects Wiki 里有详细说明:

Application Processor (AP) Firmware

AP firmware (also known as “SOC firmware”, “host firmware”, “main firmware” or even “BIOS”) typically resides on a SPI ROM. Protection registers on the SPI ROM are programmed to protect the read-only region, and these registers normally cannot be modified while the SPI ROM WP (write protect) pin is asserted. This pin is asserted through various physical means (see below), but with effort, users can unprotect devices they own.

Embedded Controller (EC) Firmware

The Chrome OS Embedded Controller (EC) typically has a WP input pin driven by the same hardware that generates SOC firmware write protect. While this pin is asserted, certain debug features (eg. arbitrary I2C access through host commands) are locked out. Some ECs load code from external storage, and for these ECs, RO protection works similar to SOC firmware RO protection (WP pin is asserted to EC SPI ROM). Other ECs use internal flash, and these ECs emulate SPI ROM protection registers, disabling write access to certain regions while the WP pin is asserted.

解包《三色Δ绘恋》,与 Kirikiri 初探

图源:《三色Δ绘恋》内附 圣诞节特别篇 “圣夜钟音” 主题桌面壁纸

本文ID:23166641-ab98-11e9-ad68-d1f5f7d77a33


舍友买了一份《三色Δ绘恋》,其中的立绘和音乐水准相当不错。某天于是突发奇想,从舍友那里拷贝了份游戏的文件,打算把里面的立绘和音频提取出来。

于是开始操作。

确定引擎,准备工具

整体的文件结构相当清晰,显然 TricolourLovestory_chs.exe 是中文版本的主程序,TricolourLovestory_chs.cf 是中文版本的启动配置文件,steam_api.dll 是连接 Steam 进行软件正版验证、存档上传等功能的插件,其他的 xp3 文件就是我们要找的资源包了。所以针对此文件格式,寻找对应的工具,进行解包。

经过 Google 和 Github 的多方搜索,找到了两个最为常用的工具,ExtractDataKrkrExtract。前者可以对资源包内的文件进行提取,后者可以对资源包内的文件进行提取、修改和删除。这里我们使用普适性更强的 ExtractData 进行提取操作。

PHP 及 PHP 插件编译

图源:《明日方舟》 战场背景2

本文ID:23166645-ab98-11e9-ad68-d1f5f7d77a33


今后文章会同步更新在我的 CSDN 博客,但是还是以这个自己拿阿里云服务器搭建的网站为主的。不过CSDN有个好处是可以被国内的搜索引擎抓取到,嗯,省得我做搜索引擎优化了啊。

如果有人只想看完整写完的文章的话,也请左拐 CSDN,或者这里。主站开了七牛云加速,顺便做了 Google 、 Bing 和百度等的搜索引擎收录。最近身体欠佳。原定的学习计划和博客更新计划也不出意外的咕了。没有办法。健康是第一要务。等待过后慢慢去补吧。

编译 PHP

安装必要环境

包含编译器,和编译需要的库。所有的编译操作均在 Ubuntu 19.04 下进行。

1
2
sudo apt-get update
sudo apt install -y gcc g++ cmake make libxml2-dev libbz2-dev libcurl4-gnutls-dev libzip-dev libwebp-dev libpng-dev libjpeg-dev libxpm-dev libfreetype6-dev

下载源码

你可以 clone GitHub 上的代码:

1
git clone https://github.com/php/php-src.git

当然也可以到 php.net 下载源码并解压:

1
2
3
4
wget https://www.php.net/distributions/php-7.3.7.tar.gz
tar -xvzf php-7.3.7.tar.gz
rm php-7.3.7.tar.gz
cd php-7.3.7/

开始编译

首先读取插件列表(插件列表没有修改的时候可跳过此步骤):

1
./buildconf --force

Hexo 新姿势!

图源:《三色Δ绘恋》第8幕 烟花大会

本文ID:daffc4b0-ab96-11e9-9458-8ba16a2b5025


Hexo的插件真是个好东西!一开始部署博客的时候并没有太在意插件的问题,毕竟觉得博客主题自带的插件其实挺全面的,足够使用了。但是用久了总是会腻,就想着简单的博客能不能有一些新操作新方法加入。即使是添加写功能也好。于是就翻了翻插件目录,挑了些比较有用的插件,拿出来做个总结,同时也是为了方便以后使用做的一个简单记录。

文字上标

插件是hexo-ruby-character,需要在Linux环境下编译npm包。

示例:Chocolate (Vanilla) ,也可方便的给汉字注音,例如: 鬼魅魍魉 (guǐ mèi wǎng liǎng) ,又或者是恶搞,类似: 精彩节目 (qián fāng gāo néng) ,同时也适用于其他语言,譬如: (うそ) だの?

管理员界面

插件是hexo-admin,效果是一个类似CodiMD编辑页面的“管理控制台”,可以实时编辑预览Markdown文章,修改tag,从剪贴板粘贴图片到文章等操作。注意:仅用于hexo s状态下的博客实例。

文章加密

插件是hexo-blog-encrypt,使用前须在站点配置文件加入以下内容:

1
2
encrypt:
enable: true

随后在文章的开头部分加入password:字段设置密码即可。

同时,配合abstract:字段和message:字段可以设置对无密码人的提示信息。同时注意不要设置toc。

中英文自动空格

插件为hexo-filter-auto-spacingnpm install --save之后就可以用,无需手动设置。

Linux & Windows 小技巧(2)

图源:《ソード・アート・オンライン(刀剑神域)》第一季第二集 CM

本文ID:23166642-ab98-11e9-ad68-d1f5f7d77a33


博客一直在慢速更新…之前一直忙于各种事情,学校的课、比赛、不断接触和学习新的东西,因此没什么机会静下心来好好整理、记录我学到的东西,也就没有办法一并记下我对某些问题的理解和思考。

之前一度认为,“有写博客文章的时间,还不如好好学点新的东西”。但是自从领悟到我和舍友之间记忆力和知识熟练程度的差距之后,终于肯下定决心好好写自己的博客了——我比不上他们,我真的不是那种过目不忘的人,所以只能通过不断的复习和总结才能勉强记住些东西。

有人说,初学者是“什么都不会,同时自己不知道自己会什么”,稍有学识的普通人是“自己会些东西,但是自己觉得自己会的很多”,而大神则是“自己会很多东西,但是自己觉得自己学的不多而且不知道自己已经会了什么”。

可能我还是初学者吧。

git push 反复输密码很烦?

有的时候可能会遇到一种极端情况:假设你要编写脚本,比如:自动化运维脚本。其中涉及到一些对 git 仓库的操作,而且需要密码,比如:在自动脚本中让部署机器拉取私有仓库,或是让部署机器将构建后的代码使用某个 github 账号推送到某个 git 仓库。这个时候需要用户手动输入用户名和密码,但是我们往往不能手动输入——比如公用的 docker build machine,根本不允许用户在构建过程中进行交互。

Linux & Windows 小技巧(1)

图源:《三色绘恋》 游戏背景图

本文ID:23166643-ab98-11e9-ad68-d1f5f7d77a33


最近又学到了一些零零碎碎的 Linux、Windows 命令,和一些可能今后会用得着的小技巧,怕自己忘记,所以把它们写在博客里面提醒一下自己,免得到时候再花费大量时间去百度、Google 找文章。

Linux 下查看进程树?

查看进程有好几种方式,tophtop 这种可视化的,还有 ps 这种纯文本输出的程序都可以做到。但是如果想要查看某一进程的父进程或者子进程PID该怎么办?可以借助另一个程序,pstree。参数很灵活,可以根据需要启用或关闭。程序截图如下:

WinHex 的替代品?

WinHex是很强大的一个二进制文件查看和编辑工具(尤其是做 CTF 杂项题的时候 :)。虽然说现在全网随便搜搜就有破解版(Cracked Version)可以用,但是多了解几个 WinHex 的替代品,有备无患。

EditPlus

说起来很巧,这个神器还是我在学校图书馆电脑上发现的。本来以为这东西只能编辑编辑文本,做 Notepad++ 的小弟,没想到这还能打开二进制文件查看16进制数据(emmm,不能编辑),而且…还支持 Windows ARM。

打开文件之后,点击 Edit->Hex Viewer 即可查看十六进制数据。

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×