Archive for the ‘技术 | 工作’ Category

Install tokyo cabinet and python tc egg step by step

Wednesday, May 16th, 2012

1: wget 下载tokyo cabinet
2: 编译, 安装

./configure; make && make install

注:

若提示->configure:error: zlib.h is required, 安装zlib1g-dev libssl-dev
若提示->configure:error: bzlib.h is required, 安装libbz2-dev

3:安装python的egg包:

1. git clone git://github.com/rsms/tc.git
2. python setup.py install

注:

若提示->fatal error: Python.h: No such file or directory, 安装python2.6-dev

另:查看缺文件所属包使用apt-file工具(apt-file update && apt-file search xxx)

// 环境 ubuntu 10.04 && kernel 2.6.32-38-generic

设备名与文件系统结构的关系

Wednesday, March 7th, 2012

前段时间看字符设备驱动的时候,遇到了一些问题。在我们完成驱动模块开发后,将模块加入内核后,会对文件系统产生什么影响,也就是说会在哪里添加一些文件或者链接。后来查资料,做了记录。

一:主要进行的操作有:

1. 注册设备;
2. 加载模块;
3. 创建设备节点
4. 删除模块

二:主要影响的目录有以下四个:

1. /proc/devices;
2. /proc/modules;
3. /sys/modules;
4. /dev/

三:详细说明

1./proc/devices:注册设备列表.

注册设备(register_chrdev_region,allow_chrdev_region)后在此添加一行,包含两列(主设备号,设备名称)。其中的模块名称就是在调用注册函数时,形参中的设备名。

(more…)

以太网卡混杂模式与Sniffer程序学习

Tuesday, November 29th, 2011

Wikipedia

混杂模式(Promiscuous Mode)是计算机网络中的术语。是指一台机器的网卡能够接收所有经过它的数据流,而不论其目的地址是否是它。

一般计算机网卡都工作在非混杂模式下,此时网卡只接受来自网络端口的目的地址指向自己的数据。当网卡工作在混杂模式下时,网卡将来自接口的所有数据都捕获并交给相应的驱动程序。网卡的混杂模式一般在网络管理员分析网络数据作为网络故障诊断手段时用到,同时这个模式也被网络黑客利用来作为网络数据窃听的入口。在Liunx操作系统中设置网卡混杂模式,时需要管理员权限。在windows操作系统和Linux操作系统中都有使用混杂模式的抓包工具,比如著名的开源软件wireshark.

Linux下手动切换网卡(eth0)为(非)混杂模式。

默认为非混杂模式:

ifconfig eth0 -promisc

将eth0置为混杂(promiscuous):

ifconfig eth0 promisc

查看网卡是否混杂:

ifconfig eth0

输出若包含PROMISC则说明处于混杂模式。
例:

eth0 Link encap:以太网 硬件地址 xx:xx:xx:xx:xx:xx
inet 地址:x.x.x.x 广播:x.x.x.x 掩码:x.x.x.x
UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 跃点数:1

注: (more…)

[魔都日记2]关于目前正在做的和将要做的

Wednesday, November 2nd, 2011

来到魔都的第二周。一切都比较顺利,我们部门主要做大中型交换机的研发,机体板子结构比较复杂,模块区分非常明晰,产品已经发售使用。接下来需要做的就是将板子上跑的vxworks替换成目前比较流行的Linux,说白了就是系统移植方面的东西。最近这两天都是做一些准备工作,需要对LINUX底层的API接口,设备驱动,网络协议,以及VxWORKS与底层硬件交互的驱动进行深入了解。再有就是接触宏观的一些东西,比如板子内部的信息流通,整体的架构,收发报文的流程,抓包及包内数据的具体分析。板子主要有两块NT和LT板,即通常所说的网卡与线卡。整个MDU拿起来很沉,能看到的模块除了上述两个,还有风扇模块,电源模块及trace&debug接口,adsl&vdsl接口等。 (more…)

django上传图片问题

Monday, May 30th, 2011

最近这个在admin上传图片的东西搞的我非常郁闷,求教了很多人,查了很多资料。知道问题出在setting.py中的路径,但是怎么着改都有问题,今晚实在没辙就完全推倒重做,又仔细的分析了一遍media_root,media_url,static_root,static_url,admin_media_prefix。参考帮助文档,终于搞定,mark一下。 (more…)

django学习记录1

Sunday, May 29th, 2011

Django报错UnicodeEncodeError: ‘ascii’ codec can’t encode characters 之解决方法!
how-to:
编码问题。Change the __str__ methods on your models to be __unicode__ methods. Just change the name. Usually, nothing else will be needed.   (more…)