上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 18 下一页
  2012年11月29日
摘要: 最近在用markdown写技术随笔,感觉很好,可有时候需要吧markdown文件转换为pdf,在网上查了查,这个可以用pandoc来实现, 可感觉太麻烦,还要安装pdflatex: 由于之前用过chrome将网页输出为pdf文件的功能,我想先让markdown文件转换为html,再借助chrome来 阅读全文
posted @ 2012-11-29 11:26 Mike_Zhang 阅读(14133) 评论(2) 推荐(4) 编辑
  2012年11月27日
摘要: 最近在用git,感觉每次输入密码很不方便,想借助ssh key来实现(一种类似ssh命令中-i参数的机制)。现在问题解决了,这里总结下(从建库开始),也方便我以后查阅。 建立一个私有仓库 这里以test1目录示例:1、创建test1文件夹 2、git初始化 3、添加文件 4、导出"祼仓库" 产生ss 阅读全文
posted @ 2012-11-27 13:01 Mike_Zhang 阅读(23640) 评论(1) 推荐(0) 编辑
摘要: 1.首先查看磁盘使用情况 df -h 2、卸载/home umount /home 如果提示无法卸载,则是有进程占用/home,使用如下命令来终止占用进程: fuser -m -v -i -k /home 3、调整分区大小 resize2fs -p /dev/mapper/vg-lvhome 50G 阅读全文
posted @ 2012-11-27 10:28 Mike_Zhang 阅读(3867) 评论(0) 推荐(0) 编辑
  2012年11月18日
摘要: 这段时间在做服务器状态监控,是借助snmp协议来实现的,这里把snmp的安装配置和python扩展snmp记录一下,也方便我以后查阅。一、安装snmp1、linux下安装net-snmp环境:CentOS 6.3_641.1 通过yum查找snmp完整名称yum search snmp1.2 安装net-snmpyum install net-snmp -y安装成功,版本为5.5:1.3更改配置文件文件路径:/etc/snmp/snmpd.conf在默认配置文件的基础上更改以下几个关键点:说明:41行的是默认值不用改动,这里的public比较关键,下文要用的到。47行和48行是snmp协议版本 阅读全文
posted @ 2012-11-18 23:09 Mike_Zhang 阅读(9316) 评论(2) 推荐(2) 编辑
  2012年11月9日
摘要: 这里用虚拟机演示,记录一下,方便以后查阅。一、加载光盘镜像加载本地bin-DVD镜像文件到虚拟机系统,如图所示:二、更改yum源1、挂载光盘镜像比如执行如下命令:mkdir test1mount /dev/cdrom test1从图中可以看到/dev/cdrom已经挂载到了test1目录。2、修改yum配置文件yum的配置文件目录为:/etc/yum.repos.d/这里要修改的文件为:CentOS-Media.repo原文件如下:[c6-media]name=CentOS-$releasever - Mediabaseurl=file:///media/CentOS/file:///medi 阅读全文
posted @ 2012-11-09 00:51 Mike_Zhang 阅读(1591) 评论(0) 推荐(0) 编辑
摘要: 这几天用CentOS-6.3-x86_64-minimal-EFI.iso的镜像安装了虚拟机,发现启动起来时竟然找不到网卡……问题已经解决,这里记录一下,也方便我以后查阅。 虚拟机的网络配置选项如图所示: 从图中可以看到,这里是选择接入网线的。 登录到刚才安装的虚拟机系统(CentOS-6.3-x8 阅读全文
posted @ 2012-11-09 00:45 Mike_Zhang 阅读(1015) 评论(0) 推荐(0) 编辑
  2012年10月29日
摘要: 由于某种需求,工作中需要自己要开发RTSP客户端模拟器……这里以DarwinStreamingServer(简称DSS)为例进行演示,把思路记录下来,算是开发了一个测试工具,也方便我以后查阅。在我之前的文章(http://www.cnblogs.com/MikeZhang/archive/2012/09/16/RTSPoverTCPUDP20120916.html )中介绍过怎样通过TCP的方式来访问DSS,在那个实例中,我用的是VLC作为客户端,通过命令行参数进行调用的。一、通信端口分析首先通过抓包分析确定数据通信端口。RTSP数据包截图:RTP数据包截图:RTCP数据包截图:由图可知,在以 阅读全文
posted @ 2012-10-29 23:40 Mike_Zhang 阅读(13008) 评论(3) 推荐(1) 编辑
  2012年10月26日
摘要: 通常情况下,我们只是对普通数据进行交换,交换指针的问题很少涉及,今天看书时候想到了指针交换问题,这里总结下,也方便我以后查阅。首先看下整型两个数据的交换(这个比较简单,就不多介绍了),核心代码如下:1 void m_swap(int *a,int *b)2 {3 int tmp = *a;4 *a = *b;5 *b = tmp;6 }指针是内存地址,应该也算是整型变量,交换两个指针和交换两个整型变量类似,下面以两种方式进行。传统C方式可以通过传递指向指针的指针来进行交换,核心代码如下:1 void m_swap(int **a,int **b)... 阅读全文
posted @ 2012-10-26 00:47 Mike_Zhang 阅读(6413) 评论(3) 推荐(1) 编辑
  2012年10月22日
摘要: 创建在C++中,允许动态创建const对象,格式如下:const int *p = new const int(128);与其他常量一样,动态创建的const对象必须在创建时初始化,并且初始化后,其值不能改变。删除尽管不能改变const对象的值,但可以删除动态创建的const对象,格式如下:delete p;这个和普通的对象一样,可以对其进行删除操作。应用场景举例1、加载配置文件从配置文件读入的数据可以用来初始化const对象,供后续程序使用。伪代码如下:int num;... //读取配置文件,并将配置数据填充到numconst int *pNum = new const int(num); 阅读全文
posted @ 2012-10-22 23:04 Mike_Zhang 阅读(1071) 评论(0) 推荐(0) 编辑
  2012年10月21日
摘要: Libevent简介libevent是一个基于事件触发的网络库,适用于windows、linux、bsd等多种平台,内部使用select、epoll、kqueue等系统调用管理事件机制。官网:http://libevent.org/特点:事件驱动,高性能;轻量级,专注于网络,不如ACE那么臃肿庞大,只提供了简单的网络API的封装,线程池,内存池,递归锁等均需要自己实现;开放源码,代码相当精炼、易读;跨平台,支持Windows、Linux、BSD和Mac OS;支持多种I/O多路复用技术(epoll、poll、dev/poll、select和kqueue等),在不同的操作系统下,做了多路复用模型 阅读全文
posted @ 2012-10-21 22:40 Mike_Zhang 阅读(2132) 评论(1) 推荐(1) 编辑
摘要: 1、逻辑或的短路首先看如下代码:#include <iostream>using namespace std;int main(){ int a = 1; cout << "a = " << a <<endl; true || (a=0); cout << "a = " << a <<endl;}运行结果:a = 1a = 1逻辑或的表现形式如下:expression1 || exexpression2这里用到了逻辑或,由于逻辑或的短路,expression1为true, 阅读全文
posted @ 2012-10-21 00:02 Mike_Zhang 阅读(3153) 评论(2) 推荐(1) 编辑
  2012年10月18日
摘要: STL的find_if函数功能很强大,可以使用输入的函数替代等于操作符执行查找功能(这个网上有很多资料,我这里就不多说了)。比如查找一个数组中的奇数,可以用如下代码完成(具体参考这里:http://www.cplusplus.com/reference/algorithm/find_if/):#include <iostream>#include <algorithm>#include <vector>using namespace std;bool IsOdd (int i) { return ((i%2)==1);}int main () { vecto 阅读全文
posted @ 2012-10-18 21:17 Mike_Zhang 阅读(2149) 评论(5) 推荐(2) 编辑
  2012年10月15日
摘要: 这段时间在开发代理服务器,这方面的资料了解的比较多,这里我总结下udp代理服务的实现,也方便我以后查阅。一、通信模型1、非代理情况下的通信模型这是典型的C-S通信模型,客户端和服务器直接交互。2、代理情况下的通信模型这种情况下,服务器和客户端不是直接交互,而是通过代理服务器进行的,代理服务器负责把客户端发来的请求转发给服务器,并把服务的回应返回给客户端。二、UDP服务器和客户端demo上面分析了通信模型,这里给出一个echo的服务器和客户端代码以供下文使用。1、服务端demo这里有一个python实现的echo服务器,代码如下:#! /usr/bin/python# a simple udp 阅读全文
posted @ 2012-10-15 00:19 Mike_Zhang 阅读(8918) 评论(0) 推荐(0) 编辑
  2012年10月9日
摘要: 我之前的一篇文章(http://www.cnblogs.com/MikeZhang/archive/2012/03/07/socketRedirect.html )中介绍过用python写的一个简单的http端口转发程序,其实那个也算是个代理服务器,只是功能比较简单罢了。由于这段时间在开发代理服务器,接触到各个方面的资料,这里总结下,也方便我以后使用。一、netcat实现网址:http://netcat.sourceforge.net/ netcat是个很强大的工具,在网络工具中有“瑞士军刀”美誉,不懂的搜索下,我就不多说了,相关用法可参考这里:http://en.wikipedia.org. 阅读全文
posted @ 2012-10-09 23:48 Mike_Zhang 阅读(11696) 评论(7) 推荐(2) 编辑
  2012年10月3日
摘要: 经常用wireshark写一些如下的表达式进行过滤和特定主机的通信:ip.src==192.168.1.100 or ip.dst==192.168.1.100如图所示:由于wireshark中的Filter框的下拉列表只有两个历史记录(这个暂时没有找到配置的地方……),如果涉及的主机比较多的话,需要每次输入过滤器中的ip(或者更改),感觉比较麻烦。由于这段时间经常用,发现一个小技巧,这里写出来分享给大家,不足之处欢迎指出。我们可以看到,在Filter框的右侧有个Save按钮:点击Save按钮,弹出如下对话框(我填了“Filer100”):点击OK后,发现在右侧出现了个Filter100的按钮 阅读全文
posted @ 2012-10-03 10:01 Mike_Zhang 阅读(2212) 评论(0) 推荐(0) 编辑
上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 18 下一页