
linux
文章平均质量分 67
linking530
这个作者很懒,什么都没留下…
展开
-
对于大日志包进行分割的N种方法
2010-09-08 16:29 55人阅读 评论(0)收藏 举报对于大日志包进行分割的N种方法(源自:杨志刚 博客 http://yangzhigang.cublog.cn)前言: 网站一个主要域名的日志包,解压缩之后有10多个G,当日转载 2011-08-22 15:00:55 · 742 阅读 · 0 评论 -
linux 封包
tcpdump Wireshark/Ethereal#!/bin/bash#开始一个新的tcpdump进程,将新监听的日志保存在新的文件里。logdir=/home/guest/datestr=`date +%F`tcpdump -原创 2011-08-22 16:32:47 · 516 阅读 · 0 评论 -
gdb的使用
在gdb中不输入,直接回车,默认执行上次的命令。输入命令时,可以输入命令开头的一个或者几个字母,在没有歧义的情况下,gdb会自动补齐命令的。例如:i lo = info locals。例如调试文件 eg1.c;编译,编译时要打开调试选项 -g,例如: gcc -g eg1转载 2011-09-26 11:22:09 · 706 阅读 · 0 评论 -
linux的自旋锁struct spinlock_t的使用
在linux中提供了一些机制用来避免竞争条件,最简单的一个种就是自旋锁,例如:当一个临界区的数据在多个函数之间被调用时,为了保护数据不被破坏,可以采用spinlock来保护临界区的数据,当然还有一个就是信号量也是可以实现临界区数据的保护的。以后在介绍信号量吧。这里还是先说说 splinlock吧。1:定义和初始化spinlock 在linux中定义spinlock的方法很原创 2011-12-22 21:15:57 · 1285 阅读 · 0 评论 -
fcntl即F_SETFL,F_GETFL的使用,设置文件的flags
1、获取文件的flags,即open函数的第二个参数: flags = fcntl(fd,F_GETFL,0);2、设置文件的flags: fcntl(fd,F_SETFL,flags);3、增加文件的某个flags,比如文件是阻塞的,想设置成非阻塞: flags = fcntl(fd,F_GETFL,0); flags |=转载 2012-01-16 16:26:44 · 1950 阅读 · 0 评论 -
安装dns服务器,bind 9.6
目的:为内网测试域名做解析,其他域名通过外网解析(转发)下载:http://ftp.isc.org/isc/bind9/9.6.0-P1/bind-9.6.0-P1.tar.gztar -zxvf bind-9.6.0-P1.tar.gzcd bind-9.6.0-P1./configure --prefix=/usr/localmakemake install#1,创转载 2012-01-17 11:47:08 · 669 阅读 · 0 评论 -
Memcache的核心性能分析以及APC缓存系统选择
可以知道,Memcache的网络核心是基于libevent的,从名字就可以知道,网络核心是事件机制,在win下目前是基于Select模型,而在Linux下是Epoll,以及FreeBSD下面的Kqueue,所以从核心上面分析,将Memcache架设在win下,性能将远远低于其架设在Linux以及FreeBSD下面。这是由其核心网络性能库决定的,另外也有人将win下面高性能IOCP应用于libeve转载 2012-01-17 11:48:45 · 471 阅读 · 0 评论 -
如何实现SSH断开后 进程仍然在后台运行
下面是转载的部分。在进行ps验证的时候,可以用 ps xj参数更为直观。=====================================================对于linux运维,我们都是使用ssh登录到服务器,如果我们运行的任务需要很长时间或不间断运行,在我们直接关闭终端窗口或网络不稳定的情况下,任务就会中断,当然这只对于普通程序,不包括如mysqld,httpd这样的转载 2012-02-22 14:58:02 · 421 阅读 · 0 评论 -
VI/VIM快捷键
VI/VIM快捷键光标控制命令命令 光标移动h或^h 向左移一个字符j或^j或^n 向下移一行k或^p 向上移一行l或空格 向右移一个字符G转载 2012-02-23 14:04:01 · 324 阅读 · 0 评论 -
ubuntu中安装man手册查看函数原型
分类: linux使用 2010-02-28 22:50 1209人阅读 评论(0) 收藏 举报 前几天看书,看到用man命令可以查看c语言库函数的函数原型,就今天试了试。可是不行。提示没有我要查找的那个条目。上网搜解决方案。原来ubuntu中man的手册默认没有装。用下面几条命令就行了: sudo apt-get install manpages sudo apt-ge转载 2012-02-22 19:21:41 · 819 阅读 · 0 评论 -
Linux下软件安装方法总结
关键字: linuxLinux下软件安装方法总结:一、rpm包安装方式步骤: 1、找到相应的软件包,比如soft.version.rpm,下载到本机某个目录;2、打开一个终端,su -成root用户;3、cd soft.version.rpm所在的目录; 4、输入rpm -ivh soft.version.rpm 二、deb包安装方式步骤:转载 2011-04-11 12:28:00 · 477 阅读 · 0 评论 -
ssh配置
SSH的安装apt-get install openssh-serverapt-get install sshSSH的配置OpenSSH的配置都集中在/etc/ssh/ssh_config文件中 编辑“ssh_config”文件(vi /etc/ssh/ssh_config),添加或改变下面的参数: # Site-wide defaults for var原创 2012-02-29 11:29:05 · 546 阅读 · 0 评论 -
debian 6 终端中文乱码
看这个文件:/etc/default/locale 只有一行,改为 LANG=C 重启后系统变为英文!--------------------Debian 中文设置 解决 Debian 字符终端中文乱码、方块问题,是我初次安装 debian 后第一个棘手问题。最后结论是:目前 Debian 无法解决该问题,必须安装 zhcon 工具来解决。配置 Local转载 2012-03-02 14:16:23 · 2300 阅读 · 0 评论 -
configure解释
在configure的第一段就是:if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which # is contrary to o转载 2012-03-29 12:23:36 · 875 阅读 · 0 评论 -
互斥锁pthread_mutex_t的使用(转载)
1. 互斥锁创建 有两种方法创建互斥锁,静态方式和动态方式。POSIX定义了一个宏PTHREAD_MUTEX_INITIALIZER来静态初始化互斥锁,方法如下: pthread_mutex_t mutex=PTHREAD_MUTEX_INITIALIZER; 在LinuxThreads实现中,pthread_m转载 2012-03-30 10:21:41 · 553 阅读 · 0 评论 -
Linux下GBK->UTF-8文件编码转换,文件后缀名修改
文件后缀名修改for i in *.ff; do mv $i ${i%%\.*}.h; done Linux命令行下查看看文件的编码enca 文件名Linux文件名编码批量转换convmv -f 源编码 -t 新编码 [选项] 文件名常用参数:-r 递归处理子文件夹--notest 真正进行操作,请注意在默认情况下是不对文件进行真实操作的,而只是试验。转载 2012-03-12 12:30:13 · 3037 阅读 · 0 评论 -
Linux autotools使用简介
Linux autotools使用简介 GNU里的强大工具还真是不少,本文将主要关注于GNU Autotools,包括:autoconf, automake等。简要阐述一下如何利用这些工具的强大功能来为linux下的软件开发服务。在linux系统上,有人将autoconf,automake视为与gcc同等重要。 1 概念 首先说明一下什么是GN转载 2012-03-14 19:29:13 · 794 阅读 · 0 评论 -
如何修改SVN中已提交的日志
1、将版本库repos/hooks/pre-revprop-change.tmp修改成pre-revprop-change2、为pre-revprop-change加上执行权限:使用命令chmod +x3、修改pre-revprop-change#!/bin/sh# PRE-REVPROP-CHANGE HOOK## The pre-revprop-change hook is转载 2012-06-09 12:12:38 · 948 阅读 · 0 评论 -
在程序内动态获取svn版本号
http://cloudmail.iteye.com/blog/1391451生产线上使用的程序往往比当前正在开发的代码库旧,当程序出现bug时,为了可以追踪到程序对应的版本,需要在程序内记录代码库对应的版本号。本文说明怎么在程序内动态获取svn版本号。1,设置环境变量(可选)Shell代码 export RELEASEVERSION="\\\"1.2转载 2012-06-11 13:56:00 · 3072 阅读 · 0 评论 -
SVN使用log,list,cat,diff查看所有及特定文件版本信息
http://blog.youkuaiyun.com/zll01/article/details/4178041svn log 展示给你主要信息:每个版本附加在版本上的作者与日期信息和所有路径修改。 svn diff 显示特定修改的行级详细信息。 svn cat 取得在特定版本的某一个文件显示在当前屏幕。 svn list转载 2012-06-11 11:55:17 · 424 阅读 · 0 评论 -
SVN--备份问题解决网页
http://www.blogjava.net/jasmine214--love/archive/2010/10/12/334687.html今天读了subversion 的open book. http://www.subversion.org.cn/svnbook/nightly/svn.tour.cycle.html 创建自己的版本库 svnadmin转载 2012-06-11 16:18:47 · 557 阅读 · 0 评论 -
修改SVN中的Log信息
http://blog.youkuaiyun.com/mydeman/article/details/3084997 版本和源代码控制已经是项目管理中比不可少的一部分了,在当前的项目由于不同的目的是SVN和CVS并用。由于SVN的较为频繁,所以难免会出现提交时Log信息不准确的问题,这时就需要修改以后的Log信息。下面是在我当前使用的平台上的方法。 环境: 服务器端Fe转载 2012-06-12 10:59:13 · 1250 阅读 · 0 评论 -
git服务器搭建
http://blog.youkuaiyun.com/yk_hu0621/article/details/5928145转载:http://blog.chinaunix.net/u/22630/showart_2190222.html参考网上资料搭建git服务器过程记录如下:硬件需求:一台linux Ubuntu电脑(虚拟机),在公司局域网内有独立IP,并且保证小组每个人都能ping通;软件需转载 2012-06-12 11:38:09 · 400 阅读 · 0 评论 -
GIT-CORE的使用心得
http://hi.baidu.com/yjfei66/blog/item/0d2b2c00d5d53f98e950cd3d.htmlGIT-CORE的使用心得分类: Linux2011-04-16 22:41397人阅读评论(0)收藏举报GIT-CORE是一个分布式的版本控制器,我们是对android的源码进行开发时使用的GIT管理代码.GIT的优缺点,原理,我就不过多赘转载 2012-06-12 11:54:39 · 838 阅读 · 0 评论 -
在linux搭建git服务器
http://pure.iteye.com/blog/566898git在linux上的安装不多说,参考下面的文章就可以顺利完成,主要是依赖的库。安装githttp://progit.org/book/zh/ch1-4.htmlgit麻烦在用户管理及管理上,下面上三种解决办法:Java代码 如果需要团队里的每个人都对仓库有写权限,又不能给每转载 2012-06-12 17:36:40 · 1515 阅读 · 0 评论 -
apt-get install 报错处理
1-------------------------------------------------------------------我在运行完sudo apt-get update 之后报这样的错误正在读取软件包列表... 有错误!E: 糟了,软件包版本的描述数量超出本程序的处理能力。E: Problem with MergeList /var/lib/apt/lists/ar原创 2012-06-12 13:55:42 · 888 阅读 · 0 评论 -
Git服务器Gitosis安装设置
http://hubeihuyanwei.blog.163.com/blog/static/282052842011913105327643/Git服务器Gitosis安装设置出自Ubuntu中文1、安装 openssh服务器 sudo apt-get install openssh-server openssh-client 2、创建个人公钥和私钥 在默认用户的主目录转载 2012-06-12 15:18:28 · 612 阅读 · 0 评论 -
在Windows环境中使用版本管理工具Git
http://www.cnblogs.com/banjia/archive/2008/09/20/1294901.htmlhttp://www.kudelabs.com/2008/09/24/mysmgit-%E4%B9%8Bgit-on-windows%E5%BF%AB%E9%80%9F%E4%B8%8A%E6%89%8BGit是一个分布式的版本控制系统,最初由Linus T转载 2012-06-12 15:20:54 · 876 阅读 · 0 评论 -
开源库
压缩库Use this command to anonymously check out the latest project source code:# Non-members may check out a read-only working copy anonymously over HTTP.svn checkout http://snappy.googlecode.com转载 2011-08-24 16:49:15 · 325 阅读 · 0 评论 -
从SVN导出指定版本号之间修改的文件(转)
http://www.cnblogs.com/rui1988/archive/2011/07/19/2113364.html当一个网站项目进入运营维护阶段以后,不会再频繁地更新全部源文件到服务器,这个时间的修改大多是局部的,因此更新文件只需更新修改过的文件,其他没有修改过的文件就没有必要上载到服务器。但一个稍微上规模的网站项目,文件是很多的,而且对于团队协作开发更难知道每次修改到哪些文件,转载 2012-06-11 11:14:55 · 692 阅读 · 0 评论 -
Mudos 编程总结
Mudos 编程总结 1、 Mudos 系统调用 MudLib 系统文件的过程和一些特点。 系统文件的过程和一些特点。 文件的过程和一些特点 Mudos 启动以后先要寻找一个配置文件, 用来配置 MudLib 文件系统的一些信息(这里 时 config.cfg) 找不到就无法启动。 找到以后根据配置文件里面的参数进行初始化 Mudos, 然后调用配置文件里面的两个入口文转载 2012-08-10 23:11:23 · 2906 阅读 · 0 评论 -
利用GCC预处理展开宏
http://blog.youkuaiyun.com/dyufei/article/details/7844566C/C++在编译的过程中,依次进行:预处理,编译,汇编,链接。宏是在预处理时展开的而 gcc 的预处理选项为-E。 所以将调用宏的那部分代码单独提取出来,然后利用gcc对其进行预处理即可看到宏展开后的代码,方便理解。 方法:gcc -Efile_name.c转载 2012-08-15 19:30:12 · 6304 阅读 · 0 评论 -
多线程和锁
第一部分 多线程第二部分 互斥锁第三部分 条件变量第四部分 读写锁第五部分 自旋锁第六部分 线程壁垒第七部分 记录锁 第一部分 多线程 Linux 线程的创建:int pthread_create ( pthread_t *tid, const pthread_attr_t *attr, void *(*func) (void *), vo转载 2012-08-16 15:56:51 · 501 阅读 · 0 评论 -
linux多线程应用--线程内部私有的全局变量
在单线程的程序里,有两种基本的数据:全局变量和局部变量。但在多线程程序里,还有第 三种数据类型:线程数据(TSD: Thread-Specific Data) 。它和全局变量很象,在线程内部, 各个函数可以象使用全局变量一样调用它, 但它对线程外部的其它线程是不可见的。 这种数据的必要性是显而易见的。例如我们常见的变量 errno,它返回标准的出错信息。它显然不能是一个局部变量,几乎每个函转载 2012-08-16 17:24:44 · 1095 阅读 · 0 评论 -
秒杀多线程面试题系列
http://blog.youkuaiyun.com/column/details/killthreadseries.html转载 2012-08-16 17:46:35 · 502 阅读 · 0 评论 -
SOCKET通信—如何设置成非阻塞模式、该模式下判断connect成功(失败)、判断recv/recvfrom成功(失败)、判断send/sendto成功(失败)
http://blog.163.com/xychenbaihu@yeah/blog/static/13222965520117243917934/SOCKET 对于一个socket 是阻塞模式还是非阻塞模式的处理方法:: 方法:fcntl 设置; 即先用fcntl的F_GETFL获取flags,转载 2012-08-17 12:27:02 · 5955 阅读 · 0 评论 -
setsockopt设置socket状态
1.closesocket(一般不会立即关闭而经历TIME_WAIT的过程)后想继续重用该socket:BOOL bReuseaddr=TRUE;setsockopt(s,SOL_SOCKET ,SO_REUSEADDR,(const char*)&bReuseaddr,sizeof(BOOL));2. 如果要已经处于连接状态的soket在调用closesocket后强制关闭,不经转载 2012-08-17 16:33:23 · 523 阅读 · 0 评论 -
GCC 提供的原子操作
http://www.cnblogs.com/FrankTan/archive/2010/12/11/1903377.htmlgcc从4.1.2提供了__sync_*系列的built-in函数,用于提供加减和逻辑运算的原子操作。其声明如下:type __sync_fetch_and_add (type *ptr, type value, ...)type __syn转载 2012-08-17 16:41:27 · 417 阅读 · 0 评论 -
如何在 Linux 下调试动态链接库 2
下面我们就开始调试上面命令生成的 app程序吧。如果已经把上面生成的 libggg.so放到了库文件搜索路径指定的文件目录,比如/lib或/usr/lib之类的,调试就顺利完成,如下:QUOTE:linux#gdb">zhoulifa@linux#gdb ./appGNU gdb 6.4-debianCopyright 2005 Free Sof转载 2012-08-17 18:47:48 · 673 阅读 · 0 评论 -
gdb调试启动调试程序
http://blog.youkuaiyun.com/yangzhongxuan/article/details/6892221gdb调试(一)启动调试程序 一、启动>>gdb启动 gdb 调试之前加载调试符号,即编译时候加 –g选项,如 gcc file.c –g –o target 启用gdb的方法种有3种,一种是启动core,还有是attach一个已经运行的进转载 2012-08-18 15:35:11 · 2091 阅读 · 0 评论