使用 requirements.txt
来管理 python 工程依赖包
pyenv-and-pyenv-virtualenv
使用 pyenv
和 pyenv-virtualenv
来管理 python
版本
pyenv 是个 shell
脚本,能够轻松得实现各个不同版本 python
的相互间切换,而且各个版本的 python
切换不限于全局切换,甚至不同文件夹都可以拥有不同的 python
版本。
pyenv-virtualenv 是 pyenv
的插件,为 pyenv
设置的 python
版本提供隔离的虚拟环境,设置虚拟环境后,在这个目录下面安装的第三方库及修改库搜索路径都不会影响其他环境,相当于一个沙盒环境,互相不影响。
HTTPS 加密算法与 CA 证书签名算法
加密算法和签名算法
加密和哈希
安全相关概念: 加密 Encrypt
与 哈希 Hash
strncpy 与 strlcpy
strcpy
函数遇到非标准字符串有溢出的风险,因此需要使用安全函数 strncpy
或 strlcpy
使用非标准函数 strlcpy
替换标准函数 strncpy
来提升字符串拷贝的效率。
Linux-Device-Tree
iwpriv 命令
iwpriv
工具通过 ioctl
动态获取相应无线网卡驱动的 private_args
所有扩展参数
how-to-handle-sigsegv-and-generate-coredump
捕捉信号 SIGSEGV
的同时也可以生成 coredump
文件
Linux Coredump 调试
Coredump
叫做核心转储,它是进程运行时在突然崩溃的那一刻的一个内存快照。操作系统在程序发生异常而异常在进程内部又没有被捕获的情况下,会把进程此刻内存、寄存器状态、运行堆栈等信息转储保存在一个文件里。
该文件也是二进制文件,可以使用 gdb
、 elfdump
、 objdump
或者 windows
下的 windebug
、 solaris
下的 mdb
进行打开分析里面的具体内容。
静态库链接选项
jenkins 权限控制
Jenkins 授权策略
- 任何用户可以做任何事(没有任何限制)
- Role-Based Strategy
- 安全矩阵
- 登录用户可以做任何事
- 项目矩阵授权策略
Jenkins
本身权限管理比较粗放,无法实现用户指定显示视图或者视图中指定的 jobs。可以通过插件 Role Strategy Plugin
实现不同用户组显示对应视图 views 中不同的 jobs。
其中 安全矩阵
和 项目矩阵授权策略
需要安装插件 Matrix Authorization Strategy Plugin
Jenkins 配置信息变更历史
使用 Jenkins 插件 Job Configuration History
能够对配置文件的变更进行跟踪管理,将极大的提高系统的可用性。
Jenkins 配置邮件通知
通过 URL 触发 Jenkins 构建
通过 URL 来触发 Jenkins 任务,进一步可以携带参数完成指定工作