创建你自己的 DNS 缓存服务器

好长时间没写文章了,琢磨着写些啥。正好今天有个一个需求,需要自建 DNS 来避免污染。于是今天花了些时间,研究了下自建 DNS。也正好将一些过程与心得写下来,期间在两个发型版 ( CentOS 7、Gentoo ) 上尝试了下,正常使用。

自建 DNS 的方案可以多种搭配,不过如果项目团队内部使用的话,个人还是推荐 Dnsmasq + DNSCrypt-proxy 方案,小巧,部署方便。

  • Dnsmasq:
    • 提供 DNS 缓存和 DHCP 服务功能
  • DNSCrypt-proxy:
    • 在客户端与 DNS 服务端之间提供加密与认证

工具清楚了,那么开始动手

托管 Github Pages 的博客升级至 jekyll 3

昨天收到 Github 的邮件,提示 GitHub Pages 将于 5 月 1 号以后只支持 kramdown。

马上翻到官网看了下,在 Jekyll 3 中,一些功能被剥离,成为插件,这意味着 --safe 模式下,一些 Jekyll 2 下的功能不被支持,如下:

  • jekyll-paginate
  • jekyll-coffescript
  • jekyll-gist
  • pygments.rb
  • redcarpet
  • toml
  • classifier-reborn

Homebrew 与 Caskroom 的 Coding 镜像

面对抽风的网络是多么的无奈,我等只是一个守着自己一亩三分田的小农,没办法,今天抽空将 Homebrew 与 Caskroom 的一部分在 Coding 上做了个镜像 (原 gitcafe ),至少不用每次 update 时在一串命令行前输入 all_proxy=socks5://127.0.0.1:8087 了。

事实上,就算输了 proxy 变量也还是经常抽风,这才是促使我做这件事的原因。同时感谢 Coding,^_^

Linux 系统的 NTFS-3G 权限

这个知识点居然没有记录,果然时间长久以后就会遗忘,遂记录。

一般情况下,我们在 Linux 下挂载 ntfs,是安装 ntfs-3g 后进行的,即:

# mount -t ntfs-3g /dev/sdb1 /mnt/data

这样临时解决下可以,但是会涉及到权限问题,就是说,/mnt/data 下的所有文件都必须 root 权限。于是我们加入一些参数让当前用户也可以访问修改:

# mount -t ntfs-3g -o uid=username,gid=users /dev/sdb1 /mnt/data      # uid 为当前用户名,gid 为users 用户组

修复 Windows 10 UEFI 启动

这几天一直跟 (U)EFI 打交道,期间遇到过 Clover 启动 Windows 10 出现的引导错误:

Error Code: 0xc0000034

出现这个错误,是因为我升级了主板 BIOS,直接由主板 (U)EFI 启动 Windows 10 是没有问题的,但是转到 Clover 来启动则会出现这个问题,应该是升级主板 BIOS 的过程中 (U)EFI 固件修改了一些信息导致,于是翻阅了一些资料,自己动手修复。

如果你此时任何方式都无法进入 Windows 10,则需要一些安装盘来启动,去修复: