Not knowing when the Dawn will come,

I open every Door,

Or has it Feathers, like a Bird,

Or Billows, like a Shore.

Emily Dickinson

从晴空到阴雨

2024年6月25日,内蒙古的呼和浩特天气晴好、少云。相比于21日夜降落在这座城市时,干燥、呛鼻又略微寒冷的空气,离去的今天空气质量良好,虽然干冷依旧,但也似乎不像之前那样令人难受。大概是习惯了吧。

在客机靠窗位置落座后,邻座向我搭起话来。这是一位古铜色的男子,带着一种对待陌生人常有的淳朴和气,对着我友善地笑。我看到他焦黄的牙齿,以及门牙边缘沉淀着的一圈深色的牙垢。伴随他的话音而来的是显然的口臭。乌黑的头发,看起来单纯的面相,让我怀疑他与我同龄,甚至更小。后面的交谈中我才知道他已经35岁了。

这百无聊赖的客舱时光我原本打算看书度过,但现在已经无此想法了。他的外貌让我预见到他身上有[……]

继续阅读

DAVx5无法开启OpenTasks/Tasks.org权限的问题

小米6手机(MIUI 11 20.1.16)中使用 DAVx5 显示缺少权限、无法同步 Tasks/OpenTasks 中任务。并且在 “设置” -> “应用权限” 中点击 “OpenTasks权限”/“Tasks权限” 开关无法打开。查看 DAVx5 日志发现以下四项权限被禁止:

  • org.dmfs.permission.READ_TASKS: denied
  • org.dmfs.permission.WRITE_TASKS: denied
  • org.tasks.permission.READ_TASKS: denied
  • org.tasks.permission.WRITE_TASKS: d[……]

    继续阅读

Docker容器的本地化

前言

Docker 容器多用于部署、运行程序或服务,像开发的 Web 应用之类的程序的本地化可以交给容器中运行的程序完成,毕竟用户不会直接操作容器中的 Linux 系统。从这点看,将 Docker 容器本地化似乎是多此一举,但 Linux 中的许多程序可能使用 Linux 的本地化库实现多语言功能,这时程序就需要使用 Linux 的本地化设置。如果想让这些程序在容器中显示正确的语言文字,就必须配置好容器中的 Linux。

本文将给出简单方便的解决方案,不需要安装 locales/locales-all 之类的包、甚至不用改动任何文件。

Linux 的本地化

[……]

继续阅读

nomodeset

The newest kernels have moved the video mode setting into the kernel. So all the programming of the hardware specific clock rates and registers on the video card happen in the kernel rather than in the X driver when the X server starts.. This makes it possible to have high resolution nice looking sp[……]

继续阅读

第二届江西省高校网络安全技能竞赛之AWD参赛小结

2019年12月6日,第二届江西省高校网络安全技能竞赛随着致辞与颁奖的结束落下了帷幕。

此次AWD比赛感觉上偏向于Web渗透或者说是PHP代码审计,前两台服务器开放端口基本只有22、80和3306。第三台情况未知,毕竟我们队能力有限无暇顾及,想来最后应该没有一个队伍解出第三题。

而我主要负责第二题,这里就对此次参赛做个简单的总结。

环境

Linux系统基本信息如下:

$ uname -a
Linux ubuntu 5.3.0-050300rc4-lowlatency #201908111734 SMP PREEMPT Sun Aug 11 21:41:13 UTC[......]

继续阅读

Python3创建virtualenv环境时提示vcruntime140.dll丢失

环境:

  • Windows 7 SP1
  • Python 3.7.0
  • virtualenv 16.6.2

 

使用 virtualenv venv  命令创建虚拟环境的时候弹框提示计算机中丢失 VCRUNTIME140.dll 。查了一下,需要安装Microsoft Visual C++ 2015 Redistributable

安装完后再次运行,结果相同。于是到 C:\Windows\System32  中找了找,发现目录里是有 VCRUNTIME140.dll 文件的。

重启了一下电脑,也是如此。

 

根据输出和弹框的[……]

继续阅读

《Java遗传算法编程》笔记

之前读完了《Java遗传算法编程》。感觉上这本书并不是很注重程序的设计及效率问题,但确实将遗传算法讲解清晰了。这里就记录一些不是很熟悉的概念。

一、选择

1.1 竞标赛

从种群中随机选取一定量的个体,选择其中适应度较高的个体。锦标赛作用在于,个体适应度越高,被选中进行杂交的几率越大。

锦标赛规模过大影响效率,且更容易抽中适应度较高的个体,导致多样性下降。而过小的规模会减小选择压力,减慢算法进展。

二、交叉

2.1 均匀交叉

每个基因都均有50%的概率来自双亲的其中一方。

2.2 单点交叉

在基因组中随机选取一个位置,这个位置之前所有基因和之后的所有基因分别来自两个亲代对应位置的基因。

常用[……]

继续阅读

验证条失效的问题

今天才发现文章底部评论时要拖拽的验证条拖到最右侧居然没反应。。。

看了下开发者工具,发送了一个请求得到了403。。。

又查了查网站.htaccess,果然是我以前配置了禁止wp-content下php脚本。。。

稍微改了下规则,现在没问题了。。。

肯定是因为这个才至今没有评论的(严肃脸)[……]

继续阅读

为博客添加了SSL证书

三四年前就听说了可以获得Let’s Encrypt签发的免费的SSL证书。但以前不怎么需要,也就没怎么折腾。不过现在博客开这么久了,也该上HTTPS了。这里就简单记述一下过程。

获得SSL证书

到Github上克隆了certbot项目。运行一下tools/venv.py创建一个虚拟的Python环境。(virtualenv)

git clone https://github.com/certbot/certbot.git
python tools/venv.py

运行完后,产生的venv目录就是包含certbot依赖的包的Python环境。运行venv/bin/acti[……]

继续阅读

为crayon代码高亮插件添加Kotlin支持

2021-01-31

crayon语法高亮插件实在太久没更新了,升级WordPress后有兼容性问题,已经卸载。因此,文中的一段使用crayon插件样式的代码将不会正常显示。

虽然换了 Enlighter 插件,但目前还没找到令人完全满意的代码高亮插件。

crayon插件(aramk/crayon-syntax-highlighter)算是比较老的一个wordpress插件了。其第一个版本发布于2012年,最后一次release在2016年,直到2018年有人开了个issue告诉作者wordpress把这个插件标记为弃用才改了几行、提交了一次,而且没有发布release。也就是说差不[……]

继续阅读