在 Linux 上测试硬盘读写速度

记录一下在 Linux 下测试硬盘读写速度的命令和方法。 dd 使用 dd 测试写速度,千万有注意 of 后接的文件必须是一个不存在的文件,否则可能造成数据丢失! sync; dd if=/dev/zero of=/tmp/tempfile bs=1M count=1024; sync 1024+0 records in 1024+0 records out 1073741824 bytes (1.1 GB, 1.0 GiB) copied, 2.55331 s, 421 MB/s 同样的道理,如果要测试一个外部存储,需要知道挂载点,然后用 d Read more ...

2019-10-11 linux , dd , hdd , ssd

Syncthing 又一款同步工具

昨天在整理同步工具的时候接触到了 [[Syncthing]],简直秒杀了我现在使用的任何同步工具,所以不得不花一些篇幅来记录一下。 在看到 Syncthing 的介绍时,就非常好奇它的同步原理。也幸亏它的官方文档也有非常详细的 QA 几个比较重要的点: 和 BitTorrent/Resilio Sync 的区别在于,Syncthing 开放源代码,使用开放协议,避免 Resilio Sync 闭源协议的安全问题 Syncthing 的同步原理,和 BT 类似,会将文件分片传输,当越多设备在线,那么共享速度越快 Syncthing 依赖 Read more ...


同步工具整理总结

陆陆续续用过不少同步工具,资料备份,各个设备间同步文件,从商业化的工具到命令行工具,但总还是一直在寻找一款足于满足我所有需求的工具。这里就整理一下,顺便整理一下我自己的思路。不久前就一直在思考一个问题,数字文件的生命有多长,以前看到过一句话,几十年前父母写下的日记如今依然能从旧书柜中翻出,数十年前的胶卷照片依然还很清晰,但往往几年前的网络文章,或者数字照片可能如今随着网络服务的关闭,物理硬盘的损坏而无法恢复。有人尝试使用多地备份,有人尝试云服务备份,却都无法从根本上解决这个问题,当然现在的我依然没有办法完全的解决这个问题。 目前我从两个方面来规避这个问 Read more ...

2019-10-10 sync , tools , linux , rsync , btsync , syncthing

lsb init scripts

I found someone submit a pull-request to redis, which modify the init.d script. The modification make me curious about the init script. So this is the research result. LSB stand for Linux Standard Base. LSB-compliant init scripts need to: provide, at least, the following ac Read more ...

2019-10-09 lsb , init , debian , ubuntu , linux , startup , script

支持对象存储的开源存储系统

最近整理文档,想起来自己的腾讯云,和 Google 云,好几十 G 的对象存储都空着,虽然腾讯云填了一部分同步的书籍,但是还是没有好好利用起来,然后就突然想起来之前看到过有人自己写了一份网盘同步程序,将对象存储作为同步工具来使用,这么一想确实可以尝试一下,毕竟现在 Dropbox 容量渐渐不够用了,如果能作为一份扩充也倒是不错的选择。所以这里就整理一下目前可用的一些方案,然后再做一下决择。 Cloudreve 这是一款 PHP 所写的云盘系统,支持多家对象存储,设计采用 Material Design ,看起来也不错。 https://gith Read more ...


Use shadowsocks libev

This post is under the environment of Ubuntu 18.04, this instruction will guide how to install shadowsocks libev both server side and client settings manually. And show the step to configure the simple-obfs. The source code is in following two repositories: https://github.co Read more ...


排查导致 CPU load 过高的 Java 线程

When you encouter the high cpu load caused by java application, you may follow these steps to troubleshooting. identify the PID identify the PID, use top or htop then press P, sorted by CPU identify the thread identify the thread using top -n 1 -H -p PID, this command will giv Read more ...

2019-09-26 java , linux , top , cpu , load

Vim 插件之:vim-abolish

vim-abolish 又一款 Tim Pope 大神所制作的插件,这款插件扩展了一条名为 :Subvert 的自定义命令,作用类似于 Vim 内置命令 :substitute 的扩展。 https://github.com/tpope/vim-abolish 比如说想要将整个文档中的 man 和 dog 两个单词交换,如果用 Vim 原生的替换比较麻烦,而使用该插件则只需要 :%S/{man,dog}/{dog,man}/g 在 GitHub 页面上也有大量的使用方式介绍,这里再提一个官方页面上的用例,比如想要把所有的 facility Read more ...

2019-09-22 vim , vim-plugin , tim-pope

Vim global 命令

global 命令结合了 Ex 命令和 Vim 模式匹配的能力,借助该命令,可以在指定模式的所有匹配行上运行 Ex 命令。global 命令是除了点操作和宏命令之外,最强大的 Vim 工具之一。 Basic global 命令基本形式,可以读作在 range 上,如果行匹配 pattern,那么执行全局命令 cmd :[range] global[!]/{pattern}/[cmd] 说明: 缺省情况下,global 命令作用范围是整个文件 (%). 除了 global 还有 :vglobal 表示反转,在没有匹配 pattern 的 Read more ...

2019-09-22 vim , vim-global , ex-command , vim-mode , editor , linux

Oracle 提供免费的云服务

前两天在 Twitter 上看到有人分享新闻说,Oracle 发布了新的云服务政策,提供 Always Free 的主机和对象存储还是数据库,所以就看了一下,搜了一下新闻,还真的有 Oracle Offers Always Free Autonomous Database and Cloud Infrastructure,所以就注册一下。但是当天晚上创建 VM 的时候提示我 “out of host capacity”,Google 了一下才发现,原来这条消息早就在羊毛党炸锅了,不亚于 Google Cloud Platform 当年的新闻。不过我个人作 Read more ...

2019-09-22 linux , oracle , gcp , cloud , vps , server

最近文章

  • 我 Vibe Coding 了一个日本看房神器:BukkenAI 最近在东京认真找房子,每次拿到一个物件地址,我都要重复做同样一套操作:打开 [[Google Maps]] 搜地址,确认大概位置;找最近的车站,看步行距离;切到 Yahoo 地图查灾害风险图;再搜一圈附近有没有超市、医院、药局。做完一遍下来,十几分钟就过去了,物件多的时候,这些重复的信息收集工作比看房本身还累。某天做完第 N 遍之后,我决定干脆自己做一个工具,输入地址,全部自动搞定。这就是 BukkenAI 的起点。
  • Entire:让 AI 编程会话成为 Git 历史的一部分
  • Atuin:用数据库替换 Shell 历史,跨设备同步不再是难题
  • Ghostty 终端配置技巧:从入门到舒适 从 Warp 切换到了 [[Ghostty]],理由非常简单,我使用 atuin 来同步 Shell 历史,但是 Warp 不支持,外加上 Ghostty 自带 Metal GPU 加速渲染、原生 macOS AppKit 构建、启动飞快,可以让 AI 以纯文本方式配置,就果断切换了。
  • GitNexus:把你的代码库变成 AI 能读懂的知识图谱 用 AI 写代码这件事,大家都已经习惯了。但一个尴尬的现实是:AI 在修改代码的时候,经常不知道自己改的那个函数被多少地方调用、改完之后会不会连锁反应把别的功能搞崩。这不是 AI 模型不够聪明,而是它看不到代码库的全貌——依赖关系、调用链路、执行流程,这些结构性的信息在普通的文件搜索里是丢失的。