linux学习
文章平均质量分 56
guowake
这个作者很懒,什么都没留下…
展开
-
tcpdump 工具简单使用介绍
tcpdump采用命令行方式,它的命令格式为:tcpdump [ -adeflnNOpqStvx ] [ -c 数量 ] [ -F 文件名 ] [ -i 网络接口 ] [ -r 文件名] [ -s snaplen ] [ -T 类型 ] [ -w 文件名 ] [表达式 ]tcpdump的选项介绍--------------------------------------转载 2008-03-19 16:45:00 · 869 阅读 · 0 评论 -
linux 2.6内核epoll用法举例
linux 2.6内核epoll用法举例说明(续)--给echo服务器增加读线程池上篇文章使用linux内核2.6 提供的epoll机制实现了一个反应式echo服务器,使用反应式服务器的最大好处就是可以按cpu的数量来配置线程池内线程的线程数而不是根据客户端的并发量配置线程池。我是第一次使用pthread库来写线程池,使用的是工作队列方式的线程池。我感觉作队列方式的线程池可以当成一种设计模式来用转载 2008-12-22 16:16:00 · 947 阅读 · 0 评论 -
iconv 函数字符编码转换
#include iconv函数族有三个函数,原型如下:(1) iconv_t iconv_open(const char *tocode, const char *fromcode);此函数说明将要进行哪两种编码的转换,tocode是目标编码,fromcode是原编码,该函数返回一个转换句柄,供以下两个函数使用。(2) size_t iconv(iconv_t cd,char *原创 2009-04-14 14:04:00 · 1042 阅读 · 0 评论 -
linux设置受限制shell 方法
设置受限制的shell方法: 1. 以 root 用户修改 /etc/passwd文件 找到要使用受限用户的那行,将其后面的 bash 改为 rbash 2. 到 /bin 目录下, 将 bash 备份一份,然后将备份的 bash 改名为 rbash原创 2009-04-20 14:31:00 · 1931 阅读 · 0 评论 -
tcpdump 实用例子
tcpdump -i eth0 src port 80 -xx -Xs 0 -w test.cap-i eth0 指明监听第一个硬件网卡src 指明包的来源port 80 指明端口为 80 端口-xx 指明抓到的包以 16进制方式显示-X 以ASCII码方式进行显示-s 0 指抓出整个包-w 指明将包的信息写到文件中去原创 2009-08-14 17:32:00 · 786 阅读 · 0 评论 -
linux
Linux下常用压缩格式的压缩与解压方法 ---------------------------------------------.tar打包:tar cvf *.tar *.*(原文件或目录)解包:tar xvf *.tar---------------------------------------------.gz解压1:gunzip *.gz解压2:gzip -d *.gz压缩:gz原创 2009-08-21 13:28:00 · 780 阅读 · 0 评论 -
VSFTPD上传问题解决
1.配置vsftpd vsftpd的配置文件在/etc/vsftpd/vsftpd.conf,关于vsftpd的配置网上有很多的教程,这里不说了,下面是网上的一个实例: 主要是修改/etc/vsftpd.conf就可以了,相关参数如下: anonymous_enable=YES 是否允许匿名ftp,如否则选择NO local_enable=YES 是否允许本地用户登录 loc转载 2009-09-17 18:23:00 · 10825 阅读 · 0 评论 -
mysql导入txt数据
mysqlimport -L database name.txt原创 2010-01-18 13:04:00 · 928 阅读 · 0 评论 -
密码的恢复
一. MySQL密码的恢复方法之一1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库。 因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的 状态下,其他的用户也可以任意地登录和修改MySQL的信息。可以采用将MySQL对 外的端口封闭,并且停止Apache以及所有的用户进程的方法实现服务器的准安全 状态。最安全的状态是到服务器的C原创 2010-03-02 11:20:00 · 636 阅读 · 0 评论 -
为VSFTPD配置虚拟用户
为VSFTPD配置虚拟用户(文本方式)创建虚拟与用户数据库 1. 创建loguser.txt,格式如下: userid pass 比如我创建两个用户:tony 密码为tonypass,etony密码为etonypass 则loguser.txt的内容如下:原创 2010-03-03 15:38:00 · 675 阅读 · 0 评论 -
判断进程时候执行。
#include #include #include #include #include #include #define SYNC_LOCK "/usr/local/nagios/var/rw/nagioslogd.pid"#define SYNC_LOCK_A "/usr/local/nagios/var/rw/nagioslogd.ctx"原创 2010-04-01 11:16:00 · 810 阅读 · 0 评论 -
linux常用问题查询
linux常用查询原创 2010-11-08 18:00:00 · 1064 阅读 · 0 评论 -
环形缓冲区
#include #include #include #include #include #define BUFFSIZE 1024 * 1024#define min(x, y) ((x) < (y) ? (x) : (y))pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZ原创 2008-06-17 17:27:00 · 4162 阅读 · 1 评论 -
当Linux用尽内存
也许你很少面临这一情况,但是一旦如此,你一定知道出什么错了:可用内存不足或者说内存用尽(OOM)。结果非常典型:你不能再分配内存,内核会杀掉一个任务(一般是正在运行那个)。一般半随着大量的交换读写,你可以从屏幕和磁盘动向看出来。这个问题下面隐含着别的问题:你需要分配多少内转载 2011-09-07 12:41:27 · 2594 阅读 · 0 评论 -
ssh ProxyCommand
User rootHost qdgwbnHostName 222.173.108.10Host qdgwbn-webHostName 10.5.5.116ProxyCommand ssh qdgwbn nc %h %p 2> /dev/null#建立qdgwbn-web 服务器443端口到本地8443端口隧道。#ssh -L84原创 2011-11-18 12:16:32 · 4444 阅读 · 0 评论 -
双网卡绑定-bond0
网卡绑定就是多张网卡逻辑上作为一张网卡用。可分为,负载均衡绑定和冗余绑定两种。1.编辑虚拟网络接口配置文件[root@test~]# more /etc/sysconfig/network-scripts/ifcfg-bond0 DEVICE=bond0 IPADDR=172.16.4.100 NETMASK=255.255.255.0 BROADCAST=172.16.4原创 2011-11-29 10:58:45 · 11829 阅读 · 0 评论 -
配置SSH自动登录
配置SSH自动登录,方便后继操作: 创建一个hosts.txt里面加入要上传的主机ip地址;一)生成钥匙对,如下:ssh-keygen -t dsa二)把公钥上传到所有集群服务器,如下:cat hosts.txt | xargs -i ssh-copy-id -i ~/.ssh/id_dsa.pub {}原创 2011-11-29 11:04:10 · 876 阅读 · 0 评论 -
linux kvm安装配置
根据个人实际情况修改文件,在此只是记录本人的工作环境;1,安装系统需要的文件yum -y install kvm kmod-kvm kvm-qemu-imgyum -y install bridge-utils tunctl2,创建ifcf-br0文件vi /etc/sysconfig/network-scripts/ifcfg-br0DEVICE=br0原创 2012-01-12 13:06:19 · 4908 阅读 · 0 评论 -
C语言高效编程的几招
编写高效简洁的C语言代码,是许多软件工程师追求的目标。本文就工作中的一些体会和经验做相关的阐述,不对的地方请各位指教。 第1招:以空间换时间 计算机程序中最大的矛盾是空间和时间的矛盾,那么,从这个角度出发逆向思维来考虑程序的效率问题,我们就有了解决问题的第1招--以空间换时间。 例如:字符串的赋值。 方法A,通常的办法:转载 2008-06-23 14:04:00 · 741 阅读 · 0 评论 -
Linux中通过locale来设置字符集
在Linux中通过locale来设置程序运行的不同语言环境,locale由ANSI C提供支持。locale的命名规则为_.,如zh_CN.UTF-8,zh代表中文,CN代表大陆地区,UTF-8表示字符集。在locale环境中,有一组变量,代表国际化环境中的不同设置:1. LC_COLLATE 定义该环境的排序和比较规则2. LC_CTYPE 用于字符分类和字符串处理,控制所有转载 2008-06-19 15:06:00 · 6412 阅读 · 0 评论 -
Automake系列
1.例如要安装的目录是conf,conf将安装在实际软件包的目录下,那么我们在Makefile.am文件里面定义如下:confdir = $(prefix)/confconf_DATA = ./conf/hell1.conf ./conf/hello2.conf第二行指名的是在这个目录里面要安装哪些文件.2.如果要安装到实际软件包的etc目录下,可使用sysconf_DATA = ./c转载 2008-03-20 16:50:00 · 2169 阅读 · 0 评论 -
autotools制作Makefile
在当前目录下:mkdir test;cd test;mkdir src lib include;在当前目录 编写Makefile.am SUBDIRS = lib src 在include目录下 编写hello.h extern void print(char *); 在lib目录下编写test.c #include void print(char *msg) {转载 2008-03-20 11:25:00 · 1373 阅读 · 0 评论 -
GNU Compile Tools, 可执行文件, 静态链接库, 动态链接库
对于一个编译型语言,编译器工作时总要经过预处理、编译、链接等几个过程。以转载 2008-03-20 17:21:00 · 561 阅读 · 0 评论 -
linux 中内存buffer和cache的区别
freefree 命令相对于top 提供了更简洁的查看系统内存使用情况:$ freetotal used free shared buffers cachedMem: 255268 238332 16936 0 85540 126384-/+ buffers/cache: 26408 228860Swap: 265000 0 265000Mem:表示物理内存统计 -/+ buffers/cac转载 2008-03-20 17:51:00 · 1017 阅读 · 0 评论 -
GDB的使用方法
原文链接:http://www.trucy.org/blog/archives/eoiae/000087.html GDB是一个强大的命令行调试工具。大家知道命令行的强大就是在于,其可以形成执行序列,形成脚本。UNIX下的软件全是命令行的,这给程序开发提代供了极大的便利,命令行软件的优势在于,它们可以非常容易的集成在一起,使用几个简单的已有工具的命令,就可以做出一个非常强大原创 2008-03-21 10:54:00 · 4875 阅读 · 0 评论 -
vim 插件
1.1 Tag List下载地址: 官方站点官方描述: The “Tag List” plugin is a source code browser plugin for Vim and provides an overview of the structure of source code files and allows you to efficiently browse throug原创 2008-03-25 16:22:00 · 1627 阅读 · 0 评论 -
C语言测试
2005-01-13 11:18:53 来自:http://www.chinaunix.net C语言测试是招聘嵌入式系统程序员过程中必须而且有效的方法。这些年,我既参加也组织转载 2008-03-25 17:06:00 · 639 阅读 · 0 评论 -
vim大小写转换
vim中大小写转化的命令是gu或者gU形象一点的解释就是小u意味着转为小写;大U意味着转为大写.剩下的就是对这两个命令的限定(限定操作的行,字母,单词)等等1、整篇文章大写转化为小写 打开文件后,无须进入命令行模式。键入:ggguG 解释一下:ggguG分作三段gg gu Ggg=光标到文件第一个字符gu=把选定范围全部小写G=到文件结束2、整篇文章小写转化为大写 打开文件后,无须进入命令行模原创 2008-03-25 16:18:00 · 110661 阅读 · 14 评论 -
vi 多文件间数据拷贝
大家在vi编辑中,常常遇到想把文件A里面的一行或多行,复制到B文件里面去 (可能很多人不知道怎么办),该怎么做了? 下面是几中方法: 1.如果你有多台机器,而且是联网的,你可以用netterm虚拟终端,telnet登陆主机对A文件进行修改、复制,然后打开B文件粘贴过去! 2.如果是单机,当然要用unix自带的编辑功能呢 先简单介绍一些vi编辑里的命令: (A).yw 将当前字存入无名原创 2008-03-25 16:17:00 · 2757 阅读 · 0 评论 -
/proc/pid/statm
通过Linux内核观察_proc_pid_statm 输出解释 CPU 以及CPU0。。。的每行的每个参数意思(以第一行为例)为: 参数 解释 /proc//status Size (total pages) 任务虚拟地址空间的大小 VmSize/4 Resident(pages) 应用程序正在使用的物理内存的大小 VmRSS/4原创 2008-04-15 17:28:00 · 4883 阅读 · 2 评论 -
有关va_list和vsnprintf输出函数的问题
va_list ap; //声明一个变量来转换参数列表 va_start(ap,fmt); //初始化变量 va_end(ap); //结束变量列表,和va_start成对使用 可以根据va_arg(ap,type)取出参数 已经经过调试成功的输出程序原创 2008-07-16 14:37:00 · 1615 阅读 · 0 评论 -
linux下的几个小技巧
在linux下启用彩色文字操作过程(很简单):我用的是Red Hat 企四版的,这个rpm包在第二张安装光盘里,是vim-enhanced-6.3.035-3.i386.rpm1.放入第二张安装盘2.mount /dev/cdrom3.rpm -ivh /media/cdrom/RedHat/RPMS/vim-vim-enhanced-6.3.035-3.i386.rpm原创 2008-07-30 16:30:00 · 707 阅读 · 0 评论 -
CLOSE_WAIT状态的生成原因
关闭socket分为主动关闭(Active closure)和被动关闭(Passive closure)两种情况。前者是指有本地主机主动发起的关闭;而后者则是指本地主机检测到远程主机发起关闭之后,作出回应,从而关闭整个连接。 其状态图如下图所示: 起初每个socket都是CLOSED状态,当客户端初使化一个连接,他发送一个SYN包到服务器,客户端进入SYN_SENT状态原创 2008-05-23 16:43:00 · 602 阅读 · 0 评论 -
C典型错误
#include #include int main(int argc, char *argv[]) { int i = 5; char buff[4]; strcpy(buff, "abcd"); printf("%d/n", i); return 0;}输出的结果是0, 只知道是堆栈方面的问题, 但是怎么会出现这样的结果?栈原创 2008-05-26 11:58:00 · 515 阅读 · 0 评论 -
使用 screen 管理你的远程会话
你是不是经常需要远程登录到Linux服务器?你是不是经常为一些长时间运行的任务头疼?还在用 nohup 吗?那么来看看 screen 吧,它会给你一个惊喜!你 是不是经常需要 SSH 或者 telent 远程登录到 Linux 服务器?你是不是经常为一些长时间运行的任务而头疼,比如系统备份、ftp 传输等等。通常情况下我们都是为每一个这样的任务开一个远程终端窗口,因为他们执行的时间太长了。必须原创 2008-05-29 17:13:00 · 582 阅读 · 0 评论 -
如何制作迷你的linux
其实很简单啊,网络上相关资料很多,无非就是几步 1、编译好内核 2、熟悉 Linux 的启动机制 3、使用 busybox 打造一个你需要的 chroot 树 4、复制其他相关程序及库到目录树里面(利用 ld 查看相关库) 5、用 dd 创建一个最小的空间,mk2fs 格式化,mount -o loop 去映射,复制目录树进去 6、umount,然后 gzip -9 压制成 initrd.gz原创 2008-05-30 13:39:00 · 767 阅读 · 0 评论 -
EPOLL的ET和LT模式
转载:http://egeho123.blogbus.com/logs/17682543.htmlEPOLL的ET和LT模式 近日又继续学习了一下EPOLL的工作模式,这会基本上搞清楚了,因而撰写了此篇文档进行描述。先来一段网上的介绍文档:EPOLL事件分发系统可以运转在两种模式下:Edge Triggered (ET)、Level Triggered (LT)。LT是缺省的工作方式转载 2008-08-21 17:47:00 · 713 阅读 · 0 评论 -
fastdfs安装笔记
yum -y install gcc automake autoconf libtool make gcc-c++ pcre* zlib openssl openssl-develuseradd fastdfsuseradd www cd libfastcommon-master./make.sh./make.sh installcd cg_fms./make.sh./make.sh instal...原创 2018-04-25 15:13:27 · 404 阅读 · 0 评论