博客迁移计划

整体迁移 —- 完成度 100% 框架:hexo –> hugo 部署:github pages –> cloudflare pages 域名:blog.liming.ml –> liming.ml DNS:dnspod –> cloudflare updated 22.7.4 内容迁移 —- 完成度 100% Doom Emacs + Hugo 配置 —- 完成度 40%

2021-09-11 · 1 分钟 · Ric

NEC二合一平板电脑安装Chrome OS(适用于大部分PC)

感谢油管老哥的教程! Install Chrome OS On Your Laptop / PC Access Google Play and Linux on Chrome! 准备文件 Linux Mint: https://www.linuxmint.com/edition.php?id=274 一般安装最新版即可,教程中使用的是Linux Mint 19.3 “Tricia” - Cinnamon (64-bit)。 (我的NEC用U盘启动Linux Mint会出现花屏,无法正常使用,可能这个系统缺少某些驱动,于是我重新下载了Ubuntu 18.04成功启动。) Rufus: https://rufus.ie/ 单文件,直接打开使用。 创建一个文件夹,命名为 “Chrome OS” Brunch Files: https://github.com/sebanc/brunch/releases 下载最新的stable版 .tar.gz文件,将解压后的文件放入Chrome OS文件夹。 此时文件夹中有4个文件,分别为 chromeos-install.sh,efi_legacy.img,efi_secure.img,rootc.img。 Install.Sh File: https://raw.githubusercontent.com/shrikant2002/ChromeOS/master/install.sh 下载后放入Chrome OS文件夹 Chrome OS Files: https://cros-updates-serving.appspot.com/ 4代以及4代以后的intel CPU选择rammus分支最新版; 3代以及之前的intel CPU选择samus分支最新版; AMD CPU选择grunt分支(成功率较低)。 Install.Sh文件中默认安装的是rammus,需根据下载的系统自行更改相应命令。 系统下载后解压得到.bin文件,将文件名修改为rammus_recovery.bin(根据下载的版本修改),放入Chrome OS文件夹。 最终Chrome OS文件夹内有6个文件。 正式安装 准备一个16G以上的U盘,打开Rufus,选择U盘以及Linux Mint(或Ubuntu)的iso镜像文件,点击开始,出现提示选择OK。启动盘制作完成后,将Chrome OS文件夹放入U盘根目录。 打开要安装Chrome OS的PC,进入BIOS关闭Secure Boot,选择UEFI启动方式。插入安装盘并重启,在启动项中选择U盘启动。选择第一项进入Linux系统。...

2020-05-26 · 1 分钟 · Ric

Linux迷惑行为大赏——创建硬链接后inode居然不同?

最近联盟站免,又下了一堆种,挂种的时候发现有的种子红了,原来是tmm刮削电影nfo的时候覆盖了种子里原来的nfo文件,导致种子校验失败。电影越下越多,文件夹也越来越复杂,有没有什么办法既可以正常挂种又能拯救杂乱的电影文件还能完美刮削电影信息呢?贴吧网友提供了一条思路——硬链接。 关于硬链接的内容,这里直接引用鸟哥的Linux私房菜里的相关内容 Hard Link (实体链接, 硬式连结或实际连结) 在前一小节当中,我们知道几件重要的信息,包括: 每个文件都会占用一个 inode ,文件内容由 inode 的记录来指向; 想要读取该文件,必须要经过目录记录的文件名来指向到正确的 inode 号码才能读取。 也就是说,其实文件名只与目录有关,但是文件内容则与 inode 有关。那么想一想, 有没有可能有多个档名对应到同一个 inode 号码呢?有的!那就是 hard link 的由来。 所以简单的说:hard link 只是在某个目录下新增一笔档名链接到某 inode 号码的关连记录而已。 举个例子来说,假设我系统有个 /root/crontab 他是 /etc/crontab 的实体链接,也就是说这两个档名连结到同一个 inode , 自然这两个文件名的所有相关信息都会一模一样(除了文件名之外)。实际的情况可以如下所示: [root@www ~]# ln /etc/crontab . <==创建实体链接的命令 [root@www ~]# ll -i /etc/crontab /root/crontab 1912701 -rw-r--r-- 2 root root 255 Jan 6 2007 /etc/crontab 1912701 -rw-r--r-- 2 root root 255 Jan 6 2007 /root/crontab 你可以发现两个档名都连结到 1912701 这个 inode 号码,所以您瞧瞧,是否文件的权限/属性完全一样呢? 因为这两个『档名』其实是一模一样的『文件』啦!而且你也会发现第二个字段由原本的 1 变成 2 了! 那个字段称为『连结』,这个字段的意义为:『有多少个档名链接到这个 inode 号码』的意思。 如果将读取到正确数据的方式画成示意图,就类似如下画面: 上图的意思是,你可以透过 1 或 2 的目录之 inode 指定的 block 找到两个不同的档名,而不管使用哪个档名均可以指到 real 那个 inode 去读取到最终数据!那这样有什么好处呢?最大的好处就是『安全』!如同上图中, 如果你将任何一个『档名』删除,其实 inode 与 block 都还是存在的! 此时你可以透过另一个『档名』来读取到正确的文件数据喔!此外,不论你使用哪个『档名』来编辑, 最终的结果都会写入到相同的 inode 与 block 中,因此均能进行数据的修改哩! 一般来说,使用 hard link 配置链接文件时,磁盘的空间与 inode 的数目都不会改变! 我们还是由图来看,由图中可以知道, hard link 只是在某个目录下的 block 多写入一个关连数据而已,既不会添加 inode 也不会耗用 block 数量哩!...

2020-03-23 · 1 分钟 · Ric

Unraid+Transmission 记录第一次制种

unraid-docker-transmission 右键,打开Console transmission-create 命令说明 命令行语法 transmission-create [-h] transmission-create -V transmission-create [-p] [-o file] [-c comment] [-t tracker] <source file or directory> 选项参数说明 -h, –help : 显示一个帮助后退出 -p, –private : 包含私人追踪信息(private trackers)的bt种子标志,即pt种子 -c, –comment : 为种子文件添加一个说明 comment : 一段字符串,是需要添加的说明内容 -t, –tracker :为种子添加追踪用的网址,大多数种子至少需要一个追踪用的网址(通常是发布地址)。要添加不止一个,可以多次使用这个选项 tracker : 一段URI字符串,是需要添加的追踪用网址 source file or directory : 要提供下载的源文件或者目录 -o : 种子输出到文件,如果没有-o选项,将输出到标准输出设备,可以用来测试 file : 种子文件路径 -V, –version : 显示版本信息后退出 例子 transmission-create -p -o /tmp/test.torrent -c "a test BitToorent seed file" -t http://www....

2020-03-21 · 1 分钟 · Ric

为实验室服务器添加动态域名解析

实验室的GPU服务器一般都是通过ssh登录使用的,在自己电脑上打开ssh客户端,输入服务器ip,个人用户的账号密码,就可以在服务器上进行各种骚操作了。 但是目前实验室的服务器还存在一些问题: 1.服务器开关机或者认证校园网后ip可能会被重新分配,这种情况下每个人的ssh客户端保存的ip都可能会失效,需要手动修改ip。 2.服务器通过网线连接到交换机后会被分配一个教育网的“公网ip”,实验室(子网)内的电脑通过这个ip可以访问到服务器。但是未认证校园网的情况下服务器无法访问互联网,因此不能直接使用普通的ddns方法。 解决思路: 申请免费域名,添加域名解析服务 域名申请地址:Freenom 申请到的域名为:lab1102.ml 域名解析服务:腾讯云(dnspod) 查阅API文档:API docs 注意:腾讯云官方API已失效,需要使用dnspod的API 添加解析记录:这里仅添加name为 @ 的A记录,即只解析 lab1102.ml 服务器获取本机ip 这里使用一行命令 IP=$(ip a | grep inet | grep -v 127.0.0.1 | grep -v inet6 | awk '{print $2}' | cut -d "/" -f1) 服务器登录到一台能访问外网的机器 这台机器需要满足: (1)长期开启 (2)Linux系统 这里选择Padavan系统的newifi-mini路由器,需要在Padavan后台防火墙中设置允许外网访问ssh服务。 在服务器上生成ssh-key:ssh-keygen -t rsa 将公钥放到路由器中:ssh-copy-id user@newifi 调用路由器中保存的ddns脚本(参考脚本:kkkgo) #CONF START API_ID=123456 API_Token=abcdefghijklmn123456789 domain=lab1102.ml host=@ #CONF END . /etc/profile date IPREX='([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])' ipcmd="ip addr show";type ip >/dev/null 2>&1||ipcmd="ifconfig" if [ $# == 1 ]; then DEVIP=$1 else echo "缺少IP信息" exit fi if (echo $DEVIP |grep -qEvo "$IPREX");then DEVIP="Get $DOMAIN DEVIP Failed....

2019-11-03 · 2 分钟 · Ric