• 隐藏侧边栏
  • 展开分类目录
  • 关注微信公众号
  • 我的GitHub
  • QQ:1753970025
Chen Jiehua

群晖 SAN Manager

去年群晖 DSM7.0 发布正式版至今已经快一年了,期间官方也在不停的修复各种bug,而最近刚发布了 DSM7.1。目前 DSM7 应该是比较稳定了,因此决定将NAS系统升级一下,于是便发现了 SAN Manager 这个有趣的套件。

Linux文件系统·Ext2

历史 Linux 的第一个文件系统是 Minix, 不过它有几个主要的缺限: 磁盘分区大小必须小于 64MB; 必须使用 14 个字符定长的文件名; 难于扩展。 在 VFS 被加入内核后,1992年第一个专门为 Linux 所写的文件系统 Ext(Extended File System)被加入了 0.96c 这个版本。 Ext最大可支持 2GB的磁盘分区,其文件名最长可达 255 个字符。不过由 […]

gdb调试Python动态链接库

在日常的Python开发中,针对一些有性能要求的逻辑,我们可能会采用C/C++来实现,然后在python脚本层进行调用。而对于C/C++编译出来动态链接库,我们要如何进行调试呢?

gdb调试入门笔记

面对一个卡住的进程我们要怎么定位是哪里卡住了,当服务异常退出了我们要怎么从coredump分析原因,没有IDE我又要如何来做断点调试?对于服务器开发而言,诸多摸不着头脑的问题都可以通过gdb这把利器来解决。

Docker镜像多阶段构建

当我们采用容器化来部署项目时,对于大部分的程序(除开脚本语言)我们一般需要将源码编译成二进制的可执行文件,再将可执行文件打包成docker镜像。如果在一个Docker镜像中完成整个流程,那构建出来的镜像文件必然很大(包含了编译环境);如果把编译过程和最终的可执行文件拆分为两个镜像,又会增加维护成本。那么有什么方法来解决这个问题呢?

Dockerfile 最佳实践

Docker 通过读取我们编写的 Dockerfile 来自动构建一个镜像,镜像的每一层对应着 Dockerfile 的指令,我们应该遵循一些规则和最佳实践来保证构建出更加高效的镜像。

家庭网络VLAN单线复用

每一个程序猿对于自己的家庭网络肯定都不会满足于能上网就可以这个基本要求,路由器性能如何、是否能跑满带宽、Wifi信号是否足够稳定、客厅房间是否都能接入、网络中的设备如何规划网段……许多有趣的问题都值得我们去探索。

使用C/C++扩展Python

在Python中,我们可以很容易使用各种内建模块。不过,如果你需要某个新的功能或者对某些逻辑有比较高的性能要求,那么就可以考虑使用C/C++来实现一个Python模块。 使用C/C++来写扩展模块,可以实现Python无法直接完成的功能,比如: 实现一个新的内建对象类型; 调用C/C++库函数和系统调用;

Python生成器的一个坑

用Python写迭代器(Iterator)的时候,可能会有人向你推荐生成器(Generator),并列举一堆生成器的好处。不过,今天要来分享一个生成器的坑……

Docker仓库管理

之前写过一篇文章《如何搭建私有的docker registry 》记录如何部署私有 docker 仓库,时隔已久,今天我们重新找了一些新的开源工具,以便更加方便地进行管理。

SparkleShare:私有的文件云同步工具

随着各类网盘的不断关停以及收费限速,国内良心的文件云同步工具已经所剩无几,而国外的诸多网盘由于GFW的原因,要么同步速度感人要么直接就连不上……因此,自己搭建一个简易的私有文件云同步盘就显得意义非凡!