扩展 Proxmox 系统分区以及 Proxmox 文件系统初识

昨天想要扩展一下之前安装的 Proxmox 容量,对系统进行了一次关机,然而关机之后就悲剧的发现在 U 盘中的系统启动不了了,将 U 盘拔下检测之后发现 U 盘可能挂了,一个全新的 U 盘,在连续 192 天运行之后挂掉了。无奈之下只能想办法先恢复一下 Proxmox 系统以及安装在系统之上的 OpenMediaVault 了。 恢复的过程倒也是很麻烦,只不过这一次想稳定一些,将系统还是安装在一块之前主力机上淘汰下的 SSD 上吧,所以用 Clonezilla 先备份 SSD 上的系统,然后将之前 U 盘上的 Proxmox 系统恢复到 SSD 上,做 Read more ...


『译』我最喜欢的命令行工具

偶然间看到一篇介绍 cli 的文章,感觉写得不错,正好借此机会也整理一下我之前使用过,以及觉得非常值得推荐的 CLI 工具。 下面就是译文全文。原文可以见 https://switowski.com/blog/favorite-cli-tools 下面是一个很长的列表,如果觉得不想完整的看完,这里提供一个简介。 fish shell 一个简单易用的 shell starship 一个不需要额外设置的终端提示 z 可以在文件系统中快速跳转 fzf 模糊搜索 fd find 命令的代替 ripgrep grep 的代替 h Read more ...

2020-10-30 cli , linux , mac , tools , terminal , zsh , shell , fd , fzf

使用 Clonezilla 将硬盘中系统恢复到虚拟机中

今年陆陆续续将工作的环境迁移到了 macOS,虽然已经把日常的资料迁移到了 macOS,但是之前的 Linux 上还有一些配置,以及可以的一些测试还需要用到 Linux 虚拟机,所以我就想能不能用 Clonezilla 将磁盘中的系统备份然后恢复到虚拟机里面。因为我发现 macOS 下的 Fusion 还是很强大的。 之前已经写过使用 Clonezilla 备份和恢复系统、使用 Clonezilla 克隆系统, Clonezilla 恢复系统时可能遇到的问题 ,这里关于备份的部分就不再赘述。 准备工作 开始之前需要先准备几个东西: 备份好的系 Read more ...


kindlepush_bot 机器人使用指南

这是一篇 Telegram kindlepush_bot 机器人绑定邮箱的教程。 推送邮箱绑定指南。 使用 163 邮箱作为推送邮箱 使用电脑登录 https://mail.163.com ,右上角「设置」,选择「POP3/SMTP/IMAP」设置。 在设置中,勾选 「POP3/SMTP 服务」,这个时候会弹出一个确认界面,点击确认,设置授权码。 开启「设置客户端授权码」,这个时候绑定的手机会收到一个短信。记住该授权码。 将完整的邮箱和授权码,作为发送者邮箱和发送者密码发送给机器人即可。 最后不要忘了到 Amazon 后台将自己的发 Read more ...

2020-10-29 telegram , kindle , bot

通用文档转换工具 Pandoc

如果要在不同格式的文档文件之间转换,pandoc 就是你的瑞士军刀。Pandoc 支持非常多的文档转换。从最简单的纯文本 markdown, AsciiDoc, reStructuredText 到 LaTeX,到 docx,甚至 jira wiki 的格式,也都可以相互转换。具体可以参考官网。 Read more ...

2020-10-25 pandoc , linux , markdown , document

IPFS 介绍

IPFS 的全称是 「InterPlanetary File System」,直译过来叫做「星际文件系统」,这是一个点对点的媒体传输协议,作者创建这个项目的目的是为了建立一个持久的,分布式的文件系统。1 A peer-to-peer hypermedia protocol designed to make the web faster, safer, and more open. IPFS 白皮书由Juan Benet 发表于 2014 年。 IPFS 允许用户不仅可以接受文件,还可以托管文件内容,类似 BitTorrent 协议的方式,网 Read more ...


gitconfig includeIf 管理多用户配置

~/.gitconfig 配置用来存储用户相关的配置,当 git 在提交或其他操作时,如果找不到项目目录下的 .git/config 文件时会回退到使用该全局配置文件。 大部分的配置可以通过 git config 来配置,比如常见的设置用户名和密码。 git config user.name "Ein Verne" git config user.email "[email protected]" 通常情况下只需要维护一份全局的 ~/.gitconfig 然后在各自的项目中维护自己的 gitconfig 即可,但是我最近遇到一个问题便是,我迁移了几十个项目 Read more ...

2020-10-18 git , gitconfig , version-control , github

使用 zinit 管理 zsh 插件 完美代替 Antigen

一直使用的 antigen 来管理 zsh 的插件,但是最近 zsh 因为加了一些插件变得非常慢,所以就想找找办法提速 zsh,在查询的过程中发现 antigen 已经很久没有更新,很多人推荐 antibody, 于是又试了一下 antibody, 不过在调研的过程中又发现了 zinit。 再一番对比以后,发现 antibody 所谓的并行执行也没有提速很多,反而是名不见经传的 zinit 通过配置将加载时间稳稳地降低,在新建终端时几乎立即可用。 zinit 是什么 zinit 在众多的 zsh 插件管理工具中是一个比较小众的工具,但是因为其具备的 T Read more ...

2020-10-17 zsh , zinit , linux , terminal , antigen , plugin

修复 Ubuntu 丢失的引导

今天工作的电脑因为长时间没有关机,重启了一下之后发现竟然无法启动,显示 no bootable device。大概率是因为更新的时候把 Ubuntu 的 GRUB 给更新坏了。 纯手工 首先需要通过可以启动的 U 盘系统开机,然后使用 grub-install 来安装 GRUB: fdisk -l sudo blkid sudo mount /dev/sda1 /mnt sudo grub-install --boot-directory=/mnt/boot /dev/sda 使用 boot-repair 工具一键修复 先使用 USB Ubunt Read more ...

2020-10-15 linux , ubuntu , grub , boot-loader

阿里云函数计算 fun cli

大部分的资料来自于 GitHub 页面。 安装 安装 npm,并执行: npm install @alicloud/fun -g 配置 两种方式对 fun 进行配置, .env 配置文件 在项目 template.yml 文件所在目录,新建 .env 文件,并配置: ACCOUNT_ID=xxxxxxxx REGION=cn-shanghai ACCESS_KEY_ID=xxxxxxxxxxxx ACCESS_KEY_SECRET=xxxxxxxxxx FC_ENDPOINT=https://{accountid}.{region}.fc. Read more ...

2020-09-26 aliyun , fun , cli

最近文章

  • 试遍所有 Navidrome 客户端,我最终选择了 Narjo 我是一个对音乐播放体验有点执念的人。自从搭建了 [[Navidrome]] 自托管音乐服务器,我就开始了一段漫长的客户端寻觅之旅。在 iOS 上,我几乎把能找到的 [[Navidrome]] 客户端都试了一遍,甚至为了体验更好而付费购买了 [[音流]]。但最终,我还是删掉了它们,把 [[Narjo]] 固定在了屏幕上。
  • Trellis:让 AI 编码代理真正投入生产的框架 最近我一直在思考一个问题:AI 编码工具越来越多,但为什么每次切换工具或开启新会话,都感觉像是从零开始?我用 [[Claude Code]] 写了一段时间,又想试试 [[Gemini]] CLI,但每次都要重新解释项目背景、编码规范、当前任务进度。这种重复性的”上下文喂养”工作,慢慢变成了一种隐性负担。
  • tiptop:用图表重新定义命令行系统监控 最近在排查一台服务器的性能问题时,我习惯性地打开了 [[htop]],盯着那一列列滚动的数字,试图从里面读出 CPU 负载的变化趋势。说实话,数字本身没什么问题,但当你需要判断”过去几分钟内 CPU 是否有明显的周期性抖动”时,一屏幕的百分比实在不如一条折线来得直观。就在那个时候,我发现了 tiptop 这个工具,用了之后感觉有点相见恨晚。
  • PostHog:一站式开源产品分析平台
  • Claude Code /goal:让 AI 自主持续工作直到达成目标的新命令 用 [[Claude Code]] 写代码时,一直有一个令人微妙不适的摩擦:每当 Claude 完成一轮工作,控制权就回到了我这里,我需要再次发出指令,告诉它”继续”“再检查一遍”“还有这个文件没改”。对于那种需要跑很多轮才能完成的任务——比如把一个模块从旧 API 迁移到新 API 直到所有测试通过,或者逐文件重构某个目录直到符合统一规范——这个”人类中继”的环节就显得相当机械,本质上我只是在不停地按确认键。