Docker's 2nd Death 这篇写得很好,妙语连珠。
时至今日,生产环境中使用容器技术,有无 Docker 已不再重要。
必须把 Docker 对业界推进容器生态的贡献(技术创新、降低使用门槛),和该公司在商业模式探索上… twitter.com/i/web/status/1…
对久经考验的 Linux 高级用户来说 dd 必然已成为肌肉记忆(它的进度条并没什么卵用)。即便知道 pv 在写入镜像文件到存储卡或其它块设备时更高效,也还是会继续用它。听了最近一期 2.5 Admins 后决定开始用看起来更优雅… twitter.com/i/web/status/1…
给选择 AppImage 管理维护桌面应用的 Linux 用户推荐 AppImageLauncher 它能提供和桌面环境整合的用户体验,把应用归纳至统一目录,默认 ~/Application 建立一种以拖拽、双击为核心的工作流,简… twitter.com/i/web/status/1…
很有意思的另类 Linux 桌面 workflow 应用主要是通过 AppImage 方式维护和管理(类似早期 macOS 的用户体验),允许多版本共存,支持自动增量升级,配合 AppImageLauncher 可以提供简单易用的… twitter.com/i/web/status/1…
从技术角度看:有 nix 这样的包管理器,还要 flatpak snap 干什么?打包分发交付桌面应用,当然是 AppImage 更合适(双击,自动升级),服务应用用容器镜像。三个月前开始在 Ubuntu LTS 和 CentOS… twitter.com/i/web/status/1…
BYO k8s 的产品战略的真正意义在于:把原本管理 self-hosted k8s (整套分布式系统且多实例)的复杂性 offload 给提供 managed k8s 的服务提供商(特定领域专家),简化(依赖于它的上层应用的)管… twitter.com/i/web/status/1…
Self-hosted k8s 是真的难,且不是一个纯技(能)术问题,需要构建一个团队,转变传统思维方式和做法。从零开始打怪升级是完善技能树的过程没,但分布式系统的复杂度加上部署规模,不是个人能处理的。跑有状态应用更惨,除网络、存… twitter.com/i/web/status/1…
命令行下处理 PDF 神奇组合 img2pdf + ocrmypdf 前者无损(快速、高效)生成 PDF 文件;后者 OCR 在扫描文件上加一层文本使其可搜索。两者可管道组合很灵活。另有诸多优化功能及高级应用场景参阅文档。可利用多… twitter.com/i/web/status/1…
从小在海派文化熏陶下长大(地域了):亲兄弟明算帐;契约精神;不羞于谈钱,也不随便麻烦别人(欠人情,别人的时间也值钱,这点和日本人挺像);麻烦别人必须给报酬或者伺机报答。相对于虚无的(画饼)事物,钱无论多少都是更实际且有效。部分人会… twitter.com/i/web/status/1…
敝厂的容器编排解决方案,直接上游是 gravity (也是开源的)而非 k8s 项目本身,所以在落后了整整六个大版本。稳定性和新特性无法兼得,最终还是得靠 BYO k8s 解决。没有足够的实践经验(钱),还是用靠谱的 managed k8s 吧 DIY k8s 苦海无涯。
最先接触具备 GPU 硬件加速渲染的终端模拟器,是在 Linux 下用 alacritty 大概是2017年1月。而后起之秀 kitty (官方版本历史只能追溯到2017年十月)的改进和吸粉速度都有过之而无不及。不过目前 GitH… twitter.com/i/web/status/1…
有加密 Email 工作流但几乎不用,有端到端加密需求,最近几年用 Wire 解决即时消息 magic wormhole / croc 或更大众点的 Firefox Send / ffsend 解决文件传输。连用到 Keybase… twitter.com/i/web/status/1…
Pi-Hole 部署后的24小时内典型家庭网络内设备向外网络连接发生前所需 DNS 查询请求被阻挡、记录(统计分析)和可视化的情况。
结论是每个网络都应部署派洞,几乎彻底从网络层剿灭广告(这是体验过后才知道的爽),有效降低不必要的… twitter.com/i/web/status/1…
End-to-end encryption 说起来容易做起来难,太依赖接收方技术水平。普通人连用 magic wormhole / croc 传输文件都搞不定(退而求其次用 Firefox Send 了),更别说用 OpenPGP… twitter.com/i/web/status/1…
清楚记得 sshd_config 里基于用户和组的匹配允许和拒绝处理顺序是 {Deny,Allow}Users {Deny,Allow}Groups 在最新的 Fedora / Arch / Ubuntu 上 RTFM 只能找到先… twitter.com/i/web/status/1…
Personal VPS is now running Fedora 32, back to origin: Nov 2003 Fedora Core 1 (Yarrow) where my Linux Journey start… twitter.com/i/web/status/1…
Arch 全滚动 vs Manjaro controlled rolling release 控制节奏的(半)滚动,都是 stable 刚出炉的 Inkscape 已经滚进了前者,后者 systemd 还是 244 这并非是说后者… twitter.com/i/web/status/1…
一直说 RTFM 大法好,在特定情况下会用正确语气和姿势让对方 RTFM 但长期观察结果是真正会用 man 的人不多,好好读过 man man 且动手实践吸收的更少(知道有系统级配置文件,理解 section 及其使用 man m… twitter.com/i/web/status/1…
在 Ubuntu 6.06 发布前后那个时间点的话,还是会毫不犹豫用 Ubuntu 因为它在绝佳的时间点提供了碾压对手的开箱即用桌面用户体验(大赞其架构师),而且有 Compiz 特效吸睛(换它的初始动机之一)。同时期的 Fedo… https://t.co/UknqmWT90n
IT 不是时尚秀,对新技术栈勿盲目追新,否则引入了复杂性(各种眼花缭乱的运维工具 k8s 微服务服务网格等),短期内还并不一定能解决问题。能以最低成本(时间和钱)有效解决解决实际问题的技术就是(用例下)最好的技术。刚用 inoti… twitter.com/i/web/status/1…
2019年和一些特殊机构打交道,愈发感觉到需要严肃对待的电邮,不能用 Gmail / G Suite 需要一套简单高效可靠,高度可自定义,能和密码管理及 GnuPG 整合的工作流,毫无疑问 NeoMutt 就是答案。这种应用场景下… twitter.com/i/web/status/1…
顺着撸 /etc/crontab 是系统主配置文件(红帽 Fedora 系)默认留空,原本月周日任务被 anacrontab 接管(发行版间有差异) /etc/cron.d 下是可能在多个系统用户间共享的系统任务配置,需指定用户;… twitter.com/i/web/status/1…
没想到随意翻 Fedora 文档都能发现宝藏,昨天提到跑 Ansible playbook 若用户不是同名用户组成员便会在系统默认 umask 022 的共同作用下产生权限问题。创建用户时创建同名用户组(用户是唯一成员)的实践叫做… twitter.com/i/web/status/1…
Windows 上有了一众包管理 Chocolatey + Scoop (搞笑的是两者虽有重叠但均未到可替代对方的程度)来安装和管理三方软件算可用。配合 WSL 2 生产力是可以有的,可明显感觉到轻量级 Hyper-V 跑 Lin… twitter.com/i/web/status/1…
经常看 Linux 内核文档的人可能早就注意到它开始现代化了,表现为除了纯文本之外的 Sphinx 格式(纯文本转换,及源代码萃取)。确切的说该现代化是从 4.8 开始的,使用 Sphinx + reStructuredText… twitter.com/i/web/status/1…
扫 Kernel Newbies 上 Linux 5.5 变动条目时发现一个搞笑的比变更 sysctl 这个很久以前就被弃用的系统调用(几乎是自引入起就被弃用),终于被清理出去了,算是给内核安全减肥,还顺便简化了 proc 文件系… twitter.com/i/web/status/1…
root 去读 /proc/sys/vm/drop_caches 被告知无权限,一脸懵逼,查 Kernel Newbies 变更表才知道 5.5 内核开始 drop_caches 改成 write-only mode bits 0… twitter.com/i/web/status/1…
systemctl isolate home․target && systemctl restart blog.service && date -I
KDE 保护伞下桌面环境、平台框架和应用集按设计蓝图稳步持续迭代改进细节和用户体验,专注于应用可用性提升效率,稳定性令人满意。还是这句话 KDE 是 Linux 工作站上唯一值得托付关键任务执行的完全体桌面环境。每次看 KDE 时… twitter.com/i/web/status/1…
单机部署应用(包含其依赖),可看作容器编排中最小的调度单元 pod 用 Docker Compose 交付跑起来,到需要跨多节点编排、高可用和扩展性等特性时再上 k8s 不迟。大部分跟风用例只是引入了一套复杂的系统,需要特定技能树… twitter.com/i/web/status/1…
总体上来说遵循 KISS 哲学建立的架构设计简单的系统,其宕机时间比架构设计复杂的功能繁杂系统要少,毕竟复杂度低运维的成本和开销就低。类似的 scale out 横向扩展,用架构简单的小集群作为构建超大系统的积木块,要比单一的功能… twitter.com/i/web/status/1…
KDE Plasma 5.18 发布,正在按设计蓝图稳步前进,用户体验和细节不断改善,稳定性好。个人认为 KDE 是 Linux 工作站用例下唯一可托付关键任务执行的完全体桌面环境(不含轻量级和窗口管理器)。之前名叫 Volna… twitter.com/i/web/status/1…
WireGuard 被入并 Linux 内核主线进入上游,对嵌入式设备(路由器,树莓派)来说是好消息,替代 IPsec OpenVPN 成为内置 VPN 功能背后的实现,但对付墙应该不会有太大贡献。毕竟设计实现他的人,没考虑这种用例。
日本捐赠物资(不确定是哪国组织)上写的又给我上了一课。盛唐时日本遣人来学习佛法。长屋赠送大德上千件袈裟,边缘都绣着一首偈子:山川异域,风月同天。寄诸佛子,共结来缘。据说是鉴真东渡的缘由之一。「山川异域」并非地理上的悬隔,实乃心之悬隔。「风月同天」也并非空间上的同在,实是心之同在。
@lqik2004 全职妈妈和(有佣人)的富太是完全不同的概念和阶层,有人傻傻分不清。亲自实践体验全职妈妈的每天的职责和任务之后才会对此有清醒的认知,捂脸。全职妈妈创造的社会价值远高于去全职工作,可惜在中国社会得不到认可。西方发达… twitter.com/i/web/status/1…
WireGuard Git repo 里看到 Herbert Xu 大佬的名字,毕竟他是 crypto subsystem 的主要维护者之一。十多年前和他在悉尼有过一面之缘,除了在 Linux 内核开发社区和邮件列表中可以经常看到他名字之外,此人可以说是神龙见首不见尾。
WireGuard 进入了 Linus 的 tree 算是正式进入了 Linux 内核 upstream 很可能作为 Linux 5.6 的显著新特性发布,算是2020年1月份听到的一个好消息 news.ycombinator.com/item?id=221760…
@ayanamist Amazon Linux 的定位和 Ubuntu 不一样,是在兼容 EL 的基础之上,提供更新的 Linux 内核 glibc 和 GNU 工具,以及核心的基础架构服务,比如 OpenSSH (不能和滚动更新… twitter.com/i/web/status/1…
原来搬瓦工是 VPS 服务提供商 BandwagonHost 而非 V2Ray Trojan 或者已经不再能有效对付墙的 ShadowSocks 极其变种,以及各种传统 IPsec OpenVPN (目前状态的 WireGuard… twitter.com/i/web/status/1…
用 WireGuard 来搭建 overlay network 的主要问题是规模大了之后运维的管理成本太高,即便是已经有 Subspace 这样的 web UI 其 scalability 还是不行。目前 WireGuard 主要… twitter.com/i/web/status/1…
抛砖引玉 Duplicati 开源的跨平台备份解决方案,支持多种标准协议 SFTP / WebDAV / S3 兼容等,以及多种云存储服务;支持数据去重;备份一致性验证;强加密 AES-256 或外挂 GnuPG 还有个基于 We… https://t.co/Txu9vKBHQz
看起来墙内在严打 DIY 违章私自搭建的 VPN (貌似 OpenVPN 是重灾区)。本想弄个墙内的虚拟主机搭个 Shadowsocks (毕竟 WireGuard 特征太明显)反向翻过去用网易云音乐完全体,当前这形势下还是放弃了… twitter.com/i/web/status/1…
本想用 WireGuard 做层 overlay network 把 AWS VPC 和其它服务提供商的虚拟服务器,某些内网及家庭网络里的服务器打通,实现过程中觉得随着数量增加运维成本太高,寻找更好方案时恰逢 Slack 开源了内… twitter.com/i/web/status/1…
WireGuard 的缺点:1. 源代码还未经过安全 audit 2. 对 VPN 服务提供商来说客户端有固定虚拟 IP 地址和保护隐私相悖(或许很快有解决方案,看 Cloudflare 是怎么处理的)3. 协议特征明显容易被封,… twitter.com/i/web/status/1…
WireGuard 的优点:在网络间切换时自动重连的体验几乎无缝(用户感觉不到),类似于 Android 原生 strongSwan 客户端一样;可根据网络(接口)做 on-demand 激活;移动设备上保持连接的状态下比较省电。… twitter.com/i/web/status/1…
给唯一一台 Windows 桌面也装上了 WireGuard 没想到视窗版本和 macOS / Linux / iOS 客户端的行为是不一致的,默认不 bypass 本地局域网地址段,摊手。不过视窗客户端竟然内置了升级功能,体验不… twitter.com/i/web/status/1…
看起来 Zinc 还推动了 Linux kernel crypto 子系统的改进。有兴趣的可以看一下 WireGuard 开发者最新的 patch revision 有很多有意思的实现细节,比如利用了 udp_tunnel API… twitter.com/i/web/status/1…
有 Linus 助力推动和调解 WireGuard 并入内核主线指日可待,很有可能随 Linux 5.6 一起发布。之前主要的阻碍是开发者对内核 crypto 子系统的复杂难用非常不满,所以重起炉灶做了一套精简的功能驱动 Zinc… twitter.com/i/web/status/1…
笔记本走到哪 WireGuard 都保持 On 的状态,所以没刻意去找 DoT 方案,毕竟服务器是自己料理的。快速试了 knot resolver / stubby / dnscrypt-proxy 各有千秋。想到服务器向上游转发… twitter.com/i/web/status/1…
@virushuo @yegle 应该是 LDOCE 5th 带的光盘,其电子版支持视窗 Linux macOS 当时在 Linux GNOME 桌面下运行起来时还挺激动的,毕竟在2008年能做到跨(桌面)平台的词典几乎没有。后来… twitter.com/i/web/status/1…
@yegle 买过两版 LDOCE 桌面 iOS Android (分别收费)体验都太烂。想要跨平台(设备)一致的查词结果(和容器带给开发者的便利相似),字典软件作壳,出版商把资源集中在做好通用格式的数据上,可通过各种渠道卖,把做… twitter.com/i/web/status/1…
自认为英文水平还可以,一路过来,用的最多的字典就是 LDOCE 和 OALD 也就是朗文当代和牛津高阶,朗文还有 Language Activator (写作活用词典)这个法宝。速查时任何字典都可以,但理解和记忆必须用这两本英英。… twitter.com/i/web/status/1…
Cloudflare 1.1.1.1 app 里提供的基于 WireGuard 构建的 VPN 服务已经可用,对于不会 DIY 架设 VPN 服务的人(大部分人)来说,用它来保证移动设备到 Cloudflare 网络基础架构之间的… twitter.com/i/web/status/1…
strongSwan 5.8.1 没有新特性加入, 从 5.8 开始 systemd service unit 统一成 strongswan 了。自从把自用 VPN 切换到 WireGuard 之后大半年没跟进过 strongSw… twitter.com/i/web/status/1…
对车外观审美,基本上是从 3.0 CSL / 2002 Turbo 开始,到 E30 M3 / E46 M3 / E92 M3 再到 E87 1M Coupe / F87 M2 一路下来,定型。一直就喜欢这种 timeless 设… twitter.com/i/web/status/1…
好的设计经得起时间的考验,所以叫 timeless design 通常一个车型,在有前任和继任之后,才能得到相对公正的评价。比如大家都认为第二代 Mazda6 外观设计不起眼,现在回头看觉得外观设计耐看(虽整体偏圆润),有很多设计… twitter.com/i/web/status/1…
NetworkManager 1.20 起支持 WireGuard 了。在 Linux 桌面上,暂时还没有找到需要用 GUI 来用 WireGuard 的理由。目前 WireGuard 在 iOS 和 macOS 上的客户端功能上… twitter.com/i/web/status/1…
用好 WireGuard 需要理解 Cryptokey Routing 这个核心概念,简单说它是公钥和 allowed IPs 的一种关联。在向远端发送包时,它相当于是扮演了路由的角色;接收包时它相当于是 ACL 访问控制列表。因… twitter.com/i/web/status/1…
Cloudflare 的 1.1.1.1 Warp 在移动终端如此大规模的应用,必然会提升 WireGuard 项目的质量和开发进度,而 DIY 用到的各种客户端用户体验也必然受益。虽然是 strongSwan 的忠实用户,但和简… twitter.com/i/web/status/1…
WireGuard macOS 客户端也跟进了根据网络切换 on-demand 的功能,虽然 GUI 简单粗暴到极点,毫无美感和用户体验可言,但 it works 而且比 Go 实现的命令行客户端靠谱多了。
WireGuard iOS 客户端更新后增强了 on-demand 激活的设置系粒度,可以根据无线网络 SSID 来决定是否需要连接 VPN 比如除了家里有 MAC 地址过滤的无线网络之外的所有无线网络都自动激活。再也不眼红 An… twitter.com/i/web/status/1…
macOS 上 Mac App Store 里那个 WireGuard 官方客户端用户界面虽然很简陋但还算是能用且靠谱的,比通过 Homebrew 装的那个命令行 Go 实现要强太多了。
同一台 Linux 服务器上同时用 strongSwan 和 WireGuard 的话,客户端连接过来 SNAT 出去的流量有问题暂时没心情去研究透彻和解决,最简单粗暴的办法是停掉 IPsec 安心用 WireGuard 了,简单… twitter.com/i/web/status/1…
这次去澳门使用非受信任的无线网络时加密网络通讯基本用 WireGuard 解决 iOS 设备上有官方客户端所以用户体验相当好。但 macOS 上的 Go 用户空间实现,还是有点诡异的问题,连上去之后导致整个用作客户端 IP 的 /… twitter.com/i/web/status/1…
WireGuard 服务器端的配置,相对于 strongSwan 来说确实简单多了,也不需要使用者对 Linux 网络,及 IPsec 周边协议栈有比较系统的认知。甚至比多年前用过的 PPTP 解决方案配置难度都要低很多。
WireGuard 去年末有了 iOS 客户端之后,在外使用不受信网络时加密流量用的 VPN 从基于 strongSwan 构建的 IPsec 迁移到了 WireGuard 只留了两个 IPsec 做备胎。新版本中还引入了直接把配… twitter.com/i/web/status/1…
试用 WireGuard 是从加密网络通讯的角度,在墙外所以没考虑到对付墙。没有混淆的话,协议可被识别,所以想用它来替代 Shadowsocks 和其它被证明有效方法(至少自己搭的 IPsec 一直能用)不可行,至少现在不行。用来… twitter.com/i/web/status/1…
KDE 21岁了,还记得第一次用它是 Mandrake 8.1 带的 2.2.1 还记得大学时代的桌面 Fedora Core 1 上那个 KDE 3.1 时不时就崩溃的情景。直接导致其后近十年一直用 GNOME 2 甚至 3 的 fallback 模式直到没法再用 Compiz
继续和 @taotao2wins 探讨了一下昨天那个真正的勤奋话题。其实一只以来都信奉 Believe in what u r doing 这句话,忠于自己的选择,相信自己的眼光(要看历史潮流啊)。看到有人说过:每天坚持两小时,三年有小成,五年可成领域专家。认同,就傻傻跟着做了。
@taotao2wins 发来两句:真正的勤奋,不是被迫的机械性重复劳动,也不是自我感动式的摧残健康,更不是因为拖延症导致的最后一刻效率爆发。真正的勤奋来自于一个人的内心深处,对于那些无法获得即刻回报的事情,依然能够保持十年如一日的热情与专注。问我对 Linux 和英语是否就是。