-
vim中取消高亮显示的两个办法
所属栏目:[Linux] 日期:2016-09-26 热度:148
vim是vi的加强版。 进入vim或编辑完毕按esc后,输入/可帮助查找字符串,例如/main帮助查找main函数,找到的main高亮显示。 取消高量显示的两个办法: 1)按esc键,输入:nohl 2)按esc键,查找不存在的字符串,例如/xxxx[详细]
-
观察Linux系统时钟的指令
所属栏目:[Linux] 日期:2016-09-26 热度:56
Hertz: Linux核心每隔固定周期会发出timer interrupt (IRQ 0),HZ是用来定义每一秒有几次timer interrupts。用这个指令可以查看(可能需要root权限,或有版本要求): # cat /boot/config-`uname -r` | grep '^CONFIG_HZ=' 如果上述指令不能用,可用下面[详细]
-
查看Linux服务器状态的指令
所属栏目:[Linux] 日期:2016-09-26 热度:171
首次接触一台Linux服务器时,都有哪些指令可以帮我了解情况?用博客记录下来,备忘。其中有些指令下次再用真不知道是什么时候呢。 系统版本: $ cat /proc/version $ lsb_release -a $ cat /etc/redhat-release CPU是32位还是64位:$ getconf LONG_BIT 查[详细]
-
Linux-RHEL5初学者配置vsftpd时的注意事项
所属栏目:[Linux] 日期:2016-09-26 热度:86
我安装的是RHEL5.4,初学,不在意版本。为了学习方便,安装操作系统时能选的选项都选全了。事实证明这个决策是正确滴,要不还得花时间学习怎么安装vsftp。 网上关于如何配置vsftpd的资料挺多的。 我花了小半天的时间,除了对Linux不熟悉,主要就是做了下面[详细]
-
CentOS的下载地址
所属栏目:[Linux] 日期:2016-09-26 热度:69
CentOS官方wiki: http://wiki.centos.org/zh/FrontPage?action=showredirect=zh CentOS 是一个基于Red Hat 企业级 Linux 提供的可自由使用的源代码企业级的 Linux 发行版本。每个版本的 CentOS 都会获得十年的支持(通过安全更新方式)。新版本的 CentOS[详细]
-
MFS文件系统安装指南
所属栏目:[Linux] 日期:2016-09-26 热度:105
副标题#e# 一,MFS文件系统概论 MFS是linux下的开源存储系统,是由波兰人开发的。MFS文件系统能够实现RAID的功能,不但能够节约存储成本,而且不逊于专业的存储系统,能够实现在线扩展。MFS是一种半分布式文件系统。 MFS官网的网络组成及运行原理如下图: M[详细]
-
VirtualBox中为Fedora16分配数据空间
所属栏目:[Linux] 日期:2016-09-26 热度:151
环境:Win7 + Fedora16 + VirtualBox4.1.8 问题:实现宿主机和虚拟机之间的文件共享 解决: 1.安 装增强功能:安装好Fedora16后-------以root身份进入-------安装增强功能-------如果加载的光驱没有自动运 行,请执行如下命令-------进入加载的光驱路径(cd[详细]
-
Linux下用来获取各种系统信息的C++类
所属栏目:[Linux] 日期:2016-09-26 热度:136
下面是头文件内容,代码是mooon的一部分,对应的CPP文件请直接浏览:http://code.google.com/p/mooon/source/browse/trunk/common_library/src/sys/info.cpp #include vector #include sys/config.h SYS_NAMESPACE_BEGIN /*** * 用来获取系统、内核和进程[详细]
-
改进后的日志类CLogger
所属栏目:[Linux] 日期:2016-09-26 热度:135
在原有的基础上增加了module_name,表示模块名,当一个系统由多模块组成时,输出的日志将更加清晰,使用方法,以MOOON-agent中的为例: /** 不要修改下面的常量值,而应当通过对应的方法去修改 * 这些常量值主要是方便多模块共享,故放在这个公有头文件当[详细]
-
Linux内核实践 - 如何添加网络协议[二]:实现
所属栏目:[Linux] 日期:2016-09-26 热度:100
副标题#e# 内核版本:2.6.34 实现思路: 报文在网络协议栈中的流动,对于接收来讲,是 对报文的脱壳的过程,由于报文是已知的输入,只要逐个解析协议号;对于发送来讲,是各层发送函数的嵌套调用,由于没有已 知的输入,只能按事先设计好的协议进行层层构造[详细]
-
Linux内核实践 - 如何添加网络协议[一]:目的
所属栏目:[Linux] 日期:2016-09-26 热度:134
本文只是一个内核网络协议的实践的例子,先说明添加的目的,下篇开始具体的实现。 内核版本:2.6.34;在支持802.1主机上,报文的一般格式: 现在需要支持一种新的协议[二层] BRCM协议,与IP等协议不同,它位于2层,拥有6字节的头部和4字节的尾部 ,添加的[详细]
-
Linux内核分析 - 网络[十六]:TCP三次握手
所属栏目:[Linux] 日期:2016-09-26 热度:129
副标题#e# 内核:2.6.34 TCP是应用最广泛的传输层协议,其提供了面向连接的、可靠的字节流服务,但 也正是因为这些特性,使得TCP较之UDP异常复杂,还是分两部分[创建与使用]来进行分析。这篇主要包括TCP的创建及三次握手 的过程。 编程时一般用如下语句创建[详细]
-
Linux内核分析 - 网络[十四]:IP选项
所属栏目:[Linux] 日期:2016-09-26 热度:75
副标题#e# 内核版本:2.6.34 在发送报文时,可以调用函数setsockopt()来设置相应的选项,本文主要分析IP选项的生成,发送以及 接收所执行的流程,选取了LSRR为例子进行说明,主要分为选项的生成、选项的转发、选项的接收三部分。 先看一个源站路 由选项的例[详细]
-
Linux内核分析 - 网络[十三]:校验和
所属栏目:[Linux] 日期:2016-09-26 热度:152
副标题#e# 内核版本:2.6.34 报文的IP校验和、ICMP校验和、TCP/UDP校验和使用相同的算法,在RFC1071中定义,网上这方面的 资料和例子很多,就不解释算法流程了,而是侧重于在实现的变化和技巧。 The checksum algorithm is simply to add up all the 16-bit[详细]
-
Linux内核分析 - 网络[十二]:UDP模块 - 收发
所属栏目:[Linux] 日期:2016-09-26 热度:182
副标题#e# 内核版本:2.6.34 UDP报文接收 UDP报文的接收可以分为两个部分:协议栈收到udp报文,插入相应队列中;用户 调用recvfrom()或recv()系统调用从队列中取出报文,这里的队列就是sk-sk_receive_queue,它是报文中转的纽带,两部 分的联系如下图所示。[详细]
-
Linux内核分析 - 网络[十一]:ICMP模块
所属栏目:[Linux] 日期:2016-09-26 热度:98
副标题#e# 内核版本:2.6.34 ICMP模块比较简单,要注意的是icmp的速率限制策略,向IP层传输数据ip_append_data()和 ip_push_pending_frames()。 在net/ipv4/af_inet.c中的inet_init()注册icmp协议,从这里也可以看出,ICMP模块是绑 定在IP模块之上的。inet_[详细]
-
Linux内核分析 - 网络[十]:ARP杂谈
所属栏目:[Linux] 日期:2016-09-26 热度:172
内核版本:2.6.34 杂谈一:重复地址检测 Linux协议栈中处理重复地址检测报文的是arp_process()中的一段代码, RFC2131是DHCP的草案,相应的sip==0是DHCP服务器用来检测它所分发的地址是否重复的。 /* Special case: IPv4 duplicate address detection pack[详细]
-
Linux内核分析 - 网络[八]:IP协议
所属栏目:[Linux] 日期:2016-09-26 热度:51
副标题#e# 内核版本:2.6.34 这篇是关于IP层协议接收报文时的处理,重点说明了路由表的查找,以及IP分片重组。 ip_rcv 进入IP层报文接收函数 丢弃掉不是发往本机的报文,skb-pkt_type在网卡接收报文处理以太网头时会根据dst mac设置, 协议栈的书会讲不是发[详细]
-
Linux内核分析 - 网络[六]:网桥
所属栏目:[Linux] 日期:2016-09-26 热度:110
副标题#e# 看完了路由表,重新回到netif_receive_skb ()函数,在提交给上层协议处理前,会执行下面一句,这就是网桥的相关操作 ,也是这篇要讲解的内容。 skb = handle_bridge(skb, pt_prev, ret, orig_dev); 网桥可以简单理 解为交换机,以下图为例,一台l[详细]
-
Bash Socket编程技巧
所属栏目:[Linux] 日期:2016-09-10 热度:180
Bash Socket编程 可以使用系统中两个特殊的设备文件来判断一台主机的端口是不是开户的。 /dev/tcp/`hostname|IP/prot #如果是hostname和port是合法的话,Bash会[详细]
-
Ubuntu 12.04重启清空/etc/resolv.conf里nameserver的设置如何解决
所属栏目:[Linux] 日期:2016-09-10 热度:73
公司的新上的服务器用的都是最新的Ubuntu 12.04,同事跟我反映了一个问题,每次重启了之后,/etc/resolv.conf里面设置的nameserver就被清空了,很诡异 root@Ttp[详细]
-
Ubuntu中更改MySQL默认编码报错的解决
所属栏目:[Linux] 日期:2016-09-10 热度:159
Ubuntu 12.04,安装了MySQL,完了之后,更改了字符编译,就报错。感觉很郁闷。 环境: root@ubuntu:~# uname -a Linux ubuntu 3.2.0-23-generic #36-Ubuntu SMP[详细]
-
使用tar命令从压缩包里解压出指定文件
所属栏目:[Linux] 日期:2016-09-10 热度:198
tar命令不仅仅可以解压一个软件包,还可以解压软件包里的指定的文件。今天一朋友问我的,我才去找的资料,呵呵 root@ubuntu:/tmp# tar -tf json-1.2.1.tgz pack[详细]
-
Ubuntu中如何更改主机名
所属栏目:[Linux] 日期:2016-09-10 热度:184
Ubuntu更改主机名跟RedHat不一样,有两处需要修改,小记一下,以免以后忘掉 首先编辑 /etc/hosts文件,这个跟RedHat一样,不过略有不同 root@node1:~# cat /etc[详细]
-
ubuntu 12.04为何不能使用chkconfig管理服务
所属栏目:[Linux] 日期:2016-09-10 热度:179
今天在虚拟机里做DRBD实验,使用chkconfig管理服务的时候,出现了问题。 root@node2:/root# chkconfig --list | grep drbd drbd 0:off 1:off 2:off 3:off 4:off[详细]