Hello World!
第一行代码从 'Hello, world!' 开始!
像 systemd 一样管理 MacOS 后台常驻任务
如何让一个程序或脚本在 macOS 上像服务一样,能够开机自启、稳定运行、自动重启?针对此问题,本文将简要介绍 Linux 世界的王者 systemd 和 MacOS 平台下 “官方指定” 的解决方案 launchd...
以ORM看封装的边界
封装的隐藏建立清晰边界;高级语言抽象提供基础能力;而 ORM 的过度抽象可能制造“方便”的幻象,掩盖后台的复杂与低效,最终使系统变成难以掌控的黑盒
Git Merge VS Git Rebase: 如何优雅地合并分支?
相比于直接在main分支上提交,分支开发有并行开发、保护主分支稳定性等优点。合并问题应运而生...
修改Linux内核模块以支持WG
Linux通过编译安装内核的方式来使用原本内核没有启动的模块,如WireGuard
OpenLDAP折腾日记
折腾了几天OpenLDAP,终于是把它给部署上了。对于软件部署这件事,我的评价是不要完全相信网上任何一篇几年前的教程(包括这篇),可能一些操作是对的,但另一些操作已经过时了,这会导致一些莫名奇妙的错误。配置文件中配置项上一般会有注释,看懂了再改。 OpenLDAP服务端部署 Linux:RockyLinux9 安装相关软件这步没啥说的,照着安装就行了 123dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpmdnf upgrade -ydnf install -y openldap openldap-servers openldap-clients nginx phpldapadmin 安装后直接启动,不用顾虑 1systemctl start slapd 初始化首先查看自己的配置文件命令,这很重要。执行ls /etc/openldap/slapd.d/cn\=config/ 然后生成密码,执行命令 slappasswd -s...
非特权模式容器 ssh 登录问题
pam_loginuid(sshd:session): Error writing /proc/self/loginuid: Operation not permitted
在 Linux 开发环境中使用网络代理
开发环境所需的各种包往往都需要从国外网站下载,使用网络代理可以大大加快访问速度以及稳定性
白嫖 Aseprite 像素绘图软件
白嫖的原理是通过构建他在 Github 上开源出来的源代码,绝对官方正版。 前言听说 Aseprite 是一款非常不错的像素绘图软件,最近闲的没事,想试一下。 但是一看,官网售价 19.99 USD,Steam 售价 70 RMB,我实在是囊中羞涩,心有余而力不足。后来我才知道,原来这个玩意儿是开源的,由 C++ 语言编写。 既然他是开源的,那我们就可以通过源代码自己编译出此软件。 当然,安装过程也可以查看官方给出的文档,看官方文档最大的好处就是不用担心时效性而且绝对准确 前期准备 安装 Visual Studio 2022 并且记住安装位置 下载链接:https://visualstudio.microsoft.com/zh-hans/downloads/ 安装 Ninja 并配置进 Path 环境变量 下载链接:https://github.com/ninja-build/ninja/releases 安装 Skia 下载链接:Releases · aseprite/skia · GitHub 将解压出来的文件放到 C:\deps\skia...
MongoDB 增删改查
数据库操作查看所有数据库:show dbs; 切换数据库:use xxx; 没有xxx时会自动创建 新建集合(对应MySQL表):db.createCollection(‘xxx’); 常用文档操作命令(增删改查)增123456db.collection.insertOne( <document>, { writeConcern: <document> }) 123456db.collection.insertMany( <document>, { writeConcern: <document> }) 删123456db.emp.deleteMany({}) //删除所有文档db.emp.deleteMany({name: 'pillage'}) //删除所有name=pillage的文档db.emp.deleteMany({age: {$gt:...