• Whiteout

    以下文字来自 GPT-4,不保证正确性。 在Linux文件系统中,”whiteout”文件是一种特殊类型的文件,主要用于联合文件系统(Union file systems)如OverlayFS,用于处理文件或目录的删除操作。 当在联合文件系统的较高层删除一个在较低层存在的文件时,由于联合文件系统的特性,实际上并不能真正地删除底层的文件。因此,系统会在高层创建一个特殊的”whiteout”文件,用来表示该文件在这一层被删除。 当访问该文件时,如果在高层找到了对应的”whiteout”文件,那么系统就会认为该文件不存在,即使在底层实际上还存在该文件。 这种机制允许在不改变底层文件系统的情况下,实现在上层的文件删除,是实现Docker等容器技术的重要基础。

  • Coc Snippets

    今天又折腾了一下 vim 里面的snippets,了解了几个概念。 原来 snippets 现在有两种格式,一种是 UltiSnips,一种是snipmate。 像 honza/vim-snippets 里面就包含两种格式的(但内容有所不同) coc-snippets 好像对 UltiSnips 的支持更好,配置更丰富,相比之下,snipmate 的配置就比较少。 coc-snippets 加载 snipmate 格式的文件时,好像不能多目录加载,这个后面需要翻代码确认一下。我更新 runtimepath 也没能成。最后还是把自己 custom 的内容添加到 honza/vim-snippets/snippets/python.snippets 后面了。

  • kafka 压缩对比

    原始数据26MB gzip: 6.2M, 3.00s user 0.67s system 65% cpu 5.597 total lz4: 11M 2.9s user 0.70s system 66% cpu 5.712 total snappy: 13M 2.81s user 0.69s system 59% cpu 5.874...

  • Jq Raw String

    使用 linux 的命令 jq 输出json 对象中的一个字段 name,name是一个字符串。 我使用 jq ‘.name’ 输出的结果带有双引号,有什么办法可以不要双引号吗?最好是 jq 命令自己的参数,而不是使用管道交给另外一个命令处理。 要使用 jq 命令输出 JSON 对象中的一个字段(例如 name),并去除结果中的双引号,你可以使用 -r 或 --raw-output 选项。这将输出原始字符串,而不是 JSON 字符串。例如: jq -r '.name'

  • 流水账

    2号加班到比较晚,3号是周三,过了10点半才起来,看到前老板半小时前的消息,尴尬。 专门开车去black sheep 喝了杯手冲,68,还不错。但周边停车太贵了。 然后找管吃了饭,接着去滑板,然后又夜宵。

  • Lvm Dm Io Utils

    磁盘做 LVM,12块盘做一个LVM ,Strip12。 压测(fio 随机读写)的时候,LVM(dm-2) utils 打到100%,但磁盘的才50%不到。 导致吞吐量不能更高。 怎么可以突破这个瓶颈呢?

  • 处女座

    我在咖啡店,听到一个顾客的店员的对话。 店里是没有卫生间吗? 对,在旁边,暖光商场里面。 多远? 看你走多快。 NONONO,多远并不取决于走多快~

  • 流水账

    前天看 B 站的跨年演唱会,觉得还不错,今天买入一些 B 站。 今天一上班就搞了两个故障,一个把 FWS SIN 的机器重启后起不来了,可能是 FSTAB 配置有问题,另外一个是更新 Hickwall Kafka 集群配置后,operator 直接重启了 POD,导致一天都在做数据复制。

  • Disk Automatically Unmounts Immediately After Mounting

    https://www.bentasker.co.uk/posts/documentation/linux/480-disk-automatically-unmounts-immediately-after-mounting.html When it happens, it’s incredibly frustrating - you’ve had a disk replaced on a linux box, the disk has shown up with a different name in /dev, so you...

  • Linux Shell Variable Render

    a='a' echo "$a"` 和 `a='a' ; echo "$a"` 有什么区别? 我现在的理解是,shell 渲染这个 $a 的时机(顺序)问题,如果没有分号,$a 先渲染,然后才执行命令,foo=bar 是命令的一部分。 shell 会在执行当前命令 之前把 $XX 这种先渲染掉(如果是单引号里面就不渲染了) 加了分号或者是使用 && ,就是两个使用,后面命令执行的时候,变量已经被赋值了。如果没有分号或者没有&&,a=’a’ 是命令的一部分,bash 渲染变量在执行命令之前,所以渲染的时候还没有值。 另外多说一下,在 echo 命令执行的时候,$a 其实是有值的,只不过 echo...