2013年个人总结

2013年已经过去了,我很怀念他。

工作

马马虎虎,没出什么大状况,也没什么大作为,服务器还是那几台,访问量还是那几个数,在有限的资源内完善了各项运维基础工作的.

生活

平平淡淡的一年。身体马马虎虎,体重破历史纪录,难以启齿的数字,shit!

走了几个地方,台北、深圳、澳门、大板、京都、东京。去日本感受尤为强烈,我们和发达国家差距太大,完善成熟的商业社会、公共设施、“娱乐”设施。。。。。。

理财

婚后的第一个“财年”,开始学着理财,所谓你不理财财不理你,什么P2P、个人融资的,好歹迈出了第一步。

  • 股票

    A股,基本处于放任不管的状态,乱打乱转的粗略估计大概有10%收益;

    美股,老早就开了户,没怎么搭理,在LITB栽了30%;

  • 基金

    这宝那金的都搞了一些,拜货币紧缩政策所赐,收益从5%不断升至8%+。

RPM包制作

基础知识

rpmbuild工作流程

  • 读取并解析 filename.spec 文件
  • 运行 %prep 部分来将源代码解包到一个临时目录,并应用所有的补丁程序。
  • 运行 %build 部分来编译代码。
  • 运行 %install 部分将代码安装到构建机器的目录中。
  • 读取 %files 部分的文件列表,收集文件并创建二进制和源 RPM 文件。
  • 运行 %clean 部分来除去临时构建目录。

Python学习笔记

简介

Python,是一种面向对象、直译式计算机编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用縮进来定义语句块。

与Scheme、Ruby、Perl、Tcl等动态语言一样,Python具备垃圾回收功能,能够自动管理内存使用。它经常被当作脚本语言用于处理系统管理任务和网络程序编写,然而它也非常适合完成各种高级任务。Python虚拟机本身几乎可以在所有的作业系统中运行。使用一些诸如py2exe、PyPy、PyInstaller之类的工具可以将Python源代码转换成可以脱离Python解释器运行的程序。

Python的官方解释器是CPython,该解释器用C语言编写,是一个由社区驱动的自由软件,目前由Python软件基金会管理。

Python支持命令式程序设计、面向对象程序设计、函数式编程、面向侧面程序设计、泛型编程多种编程范式。

PythonLogging处理日志

Logging库被设计成模块的方式,它提供了以下几个子模块:

  • loggers
  • handlers
  • filters
  • formatters.

Loggers 把应用需要直接调用的接口暴露出来。

Handlers 把log记录发到相应的目的地。

Filters 决定哪些记录需要发给handler。

Formatters 定义了log记录的输出格式。

python datetime处理时间

datetime模块定义了下面这几个类:

  • datetime.date:表示日期的类。常用的属性有year, month, day;
  • datetime.time:表示时间的类。常用的属性有hour, minute, second, microsecond;
  • datetime.datetime:表示日期时间。
  • datetime.timedelta:表示时间间隔,即两个时间点之间的长度。
  • datetime.tzinfo:与时区有关的相关信息。

    注 :上面这些类型的对象都是不可变(immutable)的。

写给系统管理员的 25 个 PHP 安全实践

PHP是广泛使用的开源服务端脚本语言。通过HTTP或HTTPS协议,Apache Web服务允许用户访问文件或内容。服务端脚本语言的错误配置会导致各种问题。因此,PHP应该小心使用。以下是为系统管理员准备的,安全配置PHP的25个实践事例。

用于下文的PHP设置样例

  • DocumentRoot:/var/www/html
  • 默认Web服务:Apache(可以使用Lighttpd或Nginx代替)
  • 默认PHP配置文件:/etc/php.ini
  • 默认PHP Extensions配置目录:/etc/php.d/
  • PHP安全配置样例文件:/etc/php.d/security.ini(需要使用文本编辑器创建这个文件)
  • 操作系统:RHEL / CentOS / Fedora Linux(指令应该可以在所有其他Linux发行版,如Debian / Ubuntu,或是Unix-like的操作系统,如OpenBSD / FreeBSD / HP-UX下正常运行)
  • PHP服务的默认TCP/UDP端口:none

CentOS的多种启动故障排错方法

一. CentOS启动过程

加电—>cmos[ 选项:bios引导 硬盘引导 光盘引导 U盘引导 网络引导(pxe)]

如果为硬盘引导:

1. 硬盘引导
2. 主引导MBR
3. grub管理菜单
4. 加载内核
5. 运行init进程
6. 读取/etc/inittab
7. 执行/etc/rc.d/rc/sysinit脚本(选择进入那种级别,如果为3级别,即代网络服务的字符模式)
8. 执行/etc/rc.d/rc(/etc/rc3.d/*)
9. 执行/etc/rc.d/rc.local
10. 最后启动mingetty进程(即登陆界面)
11. 引导结束。

使用supervisord管理进程

Supervisord是用Python实现的一款非常实用的进程管理工具。 supervisord会帮你把管理的应用程序转成daemon程序,而且可以方便的通过命令开启、关闭、重启等操作,而且它管理的进程一旦崩溃会自动重启,这样就可以保证程序执行中断后的情况下有自我修复的功能。

supervisord只能管理非daemon进程。

安装

sudo easy_install supervisord


sudo pip install supervisord

sudo yum install supervisord