自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 收藏
  • 关注

转载 在Linux上安装ipmitool

1. 下载ipmitool:http://ipmitool.sourceforge.net/2. 确定gcc工具已经安装好3. 在Linux系统上加载启用IPMI驱动:insmod /lib/modules/2.6.32-220.el6.x86_64/kernel/drivers/char/ipmi/ipmi_msghandler.koinsmod /lib/modules/2.6

2015-07-24 07:43:44 2951

原创 Linux中与环境变量相关函数

1 在终端可以通过env、set命令查看当前的环境变量2 通过main函数中的第三个参数可以得到当前进程的环境变量列表int main(int argc , char *argv[] , char *env[]);其中argv和env是一个指针数组,数组的最后一个元素为NULL3 打印当前进程的环境变量int main(int argc , char *argv[] , char *env[]){...

2015-07-24 07:41:27 109

转载 Linux下Configure参数配置

Linux环境下的软件安装,并不是一件容易的事情;如果通过源代码编译后在安装,当然事情就更为复杂一些;现在安装各种软件的教程都非常普遍;但万变不离其中,对基础知识的扎实掌握,安装各种软件的问题就迎刃而解了。Configure脚本配置工具就是基础之一,它是autoconf的工具的基本应用。'configure'脚本有大量的命令行选项.对不同的软件包来说,这些选项可能会有变化,但是许多基本的选项是

2015-07-23 12:41:15 804

原创 Linux的特殊权限

Linux引入suid、sgid、sticky这三种特殊权限,能够更加方便、有效和安全地控制文件。当在一个目录或文件上加入suid特殊权限时,如过原来目录或文件的属主具有x(执行)权限,就会用小写的s来替代x;如果原来文件或目录不具有x(执行)权限,就会用大写的S来代替x。同样,sgid和suid相同,如过原来目录或文件的属组具有x(执行)权限,就会用小写的s来替代x;如果原来文件或目录不具有x(...

2015-07-23 12:38:45 112

转载 Linux 下网卡配置参数

在 Linux 下如果想修改网卡的参数有很多种方法,第一种方法是修改 /etc/network/interfaces 文件,这种方法可以在重启后依然有效;另外一种方法是使用 ifconfig 指令,这种方法只能临时性的修改网卡参数,在重启后会失效。第一种:修改 interfaces 文件interfaces 文件在 /etc/network/ 文件夹下,是网络接口配置文件,里面包含了所有网

2015-07-22 14:57:12 617

原创 Linux下TCP的Keepalive相关参数

一 基本原理TCP的Keepalive可以简单理解成为keep tcp alive,用来检测TCP sockets的连接是否正常或是已经断开。Keeplived的原理很简单,当建立一个TCP连接时,发送端就会创建一些计时器,其中一些计时器就是处理keeplaive相关问题的。当keepalive的计时器计数到0时,发送端就会向对端发送一些不含数据的keepalive数据包并开启ACK标志。如果得到...

2015-07-22 14:55:26 386

转载 Linux的shell脚本基础

第1部分  Linux 脚本编写基础1.1  语法基本介绍1.1.1 开头程序必须以下面的行开始(必须方在文件的第一行):#!/bin/sh符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。当编辑好脚本时,如果要执行该脚本,还必须使其可执行。要使脚本可执行:编译 chmod +x filename 这样才能用./f

2015-07-21 12:24:13 393

原创 linux下网络设备驱动简要过程

最近项目中,应用层要对CAN帧接收的时间戳进行记录,由于BSP中的CAN驱动是做成网络接口驱动通过socket让应用层实现收发的,所以较系统地研究了一遍linux下的网络子系统的框架,这里总结记录一下:1.对socket的应用编程,以前主要只是简单地应用write和read进行收发,这些接口只是简单地对需要收发的数据内容进行操作,应用起来也很方便,所以就想着在数据内容里面增加时间戳数据,其实后来通...

2015-07-21 12:21:57 145

转载 Linux正则表达式awk讲解

转自:http://blog.tianya.cn/post-5951527-86481149-1.shtmlawk和sed一样是流式编辑器,它也是针对文档中的行来操作的,一行一行的去执行。awk比sed更加强大,它能做到sed能做到的,同样也能做到sed不能做到的。awk常用来分段;awk不用加任何参数就可以实现 + ? * .  | 这些特殊符号;1、截取文档中的某个段[ro

2015-07-20 10:01:39 351

原创 linux下的route命令

转载:http://2768717191.bokee.com/503190967.html 为了让设备能访问另一个子网,需要在设备里增加路由到子网络,下面是一些资料。基本操作如下:一般来说,都是为了能访问别的子网才设置路由的,比如说,你的主机处于192.168.10.0/24,而你想访问192.168.20.0/24网的主机,当然你知道一个网关IP,例如192.168.10.1(必须和你...

2015-07-20 09:58:50 136

转载 linux僵死进程的产生与避免

一个进程在调用exit命令结束自己的生命的时候,其实它并没有真正的被销毁, 而是留下一个称为僵死进程(Zombie)的数据结构(系统调用exit,它的作用是使进程退出,但也仅仅限于将一个正常的进程变成一个僵死进程,并不能将其完全销毁)。一、僵死进程的产生在每个进程退出的时候,内核释放该进程所有的资源,包括打开的文件,占用的内存等,但是仍然为其保留一定的信息(包括进程号the process

2015-07-18 22:17:15 303

原创 Linux下的监控工具dstat

1) 工具说明dstat是一个用来替换 vmstat,iostat netstat,nfsstat和ifstat这些命令的工具, 是一个全能系统信息统计工具. 与sysstat相比, dstat拥有一个彩色的界面, 在手动观察性能状况时, 数据比较显眼容易观察; 而且dstat支持即时刷新, 譬如输入dstat 3, 即每三秒收集一次, 但最新的数据都会每秒刷新显示. 和sysstat相同的是, ...

2015-07-18 22:15:21 460

转载 Linux正则表达式sed

ed、awk工具可以实现文本替换并且把替换的文本输出到屏幕上sed和awk都是流式编辑器,是针对文档的行来操作的。sed通常用来替换操作。示例的文本内容,以下操作根据此文本。[root@linuxidc ~]# cat test.txt  rot:x:0:0:rot:/rot:/bin/bashroot:x:0:0:root:/root:/bin/bashdaemon:x:

2015-07-17 15:30:21 476

原创 linux的会话和进程组

会话: 一个或多个进程组。起于用户登录,终止于用户退出。此期间所有进程都属于这个会话期。会话首进程:调用setsid创建会话的进程1.规定组长进程不能调用setsid,因为调用setsid后,调用进程会成为新的进程组的组长进程.如何保证? 先调用fork,然后终止父进程,此时由于子进程的进程组ID为父进程的进程组ID,而子进程的ID是重新分配的,所以保证子进程不会是进程组长,从而子进程可以调用se...

2015-07-17 15:28:36 130

转载 Linux虚拟机ftp客户端与Windows ftp服务器建立连接的方法

1.准备两台电脑,其中一台安装Linux虚拟机。2.在无Linux虚拟机的电脑上安装ftp服务器软件FileZilla,并设置用户名和密码以及共享文件夹。3.在虚拟机->设置的硬件选项卡配置网络为NAT模式(用于共享主机的IP地址),然后启动Linux虚拟机。4.在控制面板中把装有ftp服务器的电脑防火墙关掉。5.在Linux控制台输入service iptables stop关闭

2015-07-16 11:54:58 6260

原创 linux中解压rar文件

步骤如下:1.到rarsfot的官网http://www.rarsoft.com/download.htm下载对应版本的rar for linux2.通过wget或者firefox下载到本地后,通过tar -zxvf xxx.tar.gz3.解压完成后,cd到rar目录下并执行make点击(此处)折叠或打开cd rarmake4.会出现提示如下,这样就安装好了rar解压工具了点击(此处)折叠或打开...

2015-07-16 11:53:01 330

转载 Linux系统性能分析

1.Linux性能分析的目的1)找出系统性能瓶颈(包括硬件瓶颈和软件瓶颈);2)提供性能优化的方案(升级硬件?改进系统系统结构?);3)达到合理的硬件和软件配置;4)使系统资源使用达到最大的平衡。(一般情况下系统良好运行的时候恰恰各项资源达到了一个平衡体,任何一项资源的过渡使用都会造成平衡体系破坏,从而造成系统负载极高或者响应迟缓。比如CPU过渡使用会造成大量进程等待CPU资源,系

2015-07-15 16:37:56 442

原创 linux环境变量设置方法总结(PATH/LD_LIBRARY_PATH)

PATH:  可执行程序的查找路径查看当前环境变量:echo $PATH设置: 方法一:export PATH=PATH:/XXX 但是登出后就失效方法二:修改~/.bashrc或~/.bash_profile或系统级别的/etc/profile        1. 在其中添加例如export PATH=/opt/ActivePython-2.7/bin:$PATH        2. sourc...

2015-07-15 16:34:36 1086

转载 UNIX/linux密码文件介绍

众所周知UNIX/Linux的密码文件原来采用/etc/passwd,共有7个字段。用户的密码加密后放在每一行的第二个字段里,这个 /etc/passwd文件在一般情况下是所有用户可读,只有root用户可写的,这样不良用户就可能读取加密后的密码字串来取得密码。因为这个安全原 因,设置一个/etc/shadow文件专门用于保存密码且它的权限一般是root可读,没有其他权限。这样加密后的密码文件就不能

2015-07-14 14:43:45 3882

原创 Linux终端下用cat命令查看不可见字符

时常,某个程序或软件并没有语法错误,并且你检查它的相关内容也确实没有发现问题。这是因为你用普通文本编辑器软件来查看的时候,有许多字符没有显示出来,但在终端使用cat命令可以很容易地检测出是否存在这些字符。首先,我们创建一个简单的文本文件,写入一些特殊字符。打开终端,运行命令:printf 'testing\012\011\011testing\014\010\012more testing\012...

2015-07-14 14:41:22 872

转载 Linux监控工具vmstat命令详解

转自:http://2768717191.bokee.com/503171161.html一、前言很显然从名字中我们就可以知道vmstat是一个查看虚拟内存(Virtual Memory)使用状况的工具,但是怎样通过vmstat来发现系统中的瓶颈呢?在回答这个问题前,还是让我们回顾一下Linux中关于虚拟内存相关内容。二、虚拟内存原理在系统中运行的每个进程都需要使用

2015-07-13 18:58:15 666

原创 ip_forward参数对Linux内核转发的影响

转自:http://10495372.blog.51cto.com/10485372/1671453在进行Linux内核转发时,需要在proc文件系统的proc/sys目录设置转发的参数,可以使用下面的方法查看该参数的值 cat /proc/sys/net/ipv4/ip_forward,该参数的默认值为0,可以使用下面的方法进行修改该值,使能Linux内核的IP层的数据抓发,但是下面的方法...

2015-07-13 18:56:29 249

原创 Linux的网络监控工具Smokeping

Smokeping主要是监控网络性能,包括常规的ping,用echoping 监控www 服务器性能,监控dns 查询性能,监控ssh 性能等。Smokeping底层是用rrdtool做支持,特点是画图漂亮,网络丢包和延迟用颜色和阴影来表示。Smokeping 由以下组件组成: RRDtool、Fping、Echoping、Curl、Dig、SSh、Perl 模块。虽然Smokeping 可以探测...

2015-07-12 23:53:19 413

转载 linux中IPC管道实现进程间传输数据

1 无名管道,工作方式:半双工,即单项传输,无名管道局限性较大,只实现了有亲缘关系的进程进程间的通信,如下是简单的实现例子涉及到的函数只有pipe(),其它的read(),write()为通用文件操作的系统调用.原型如下:int pipe(int pipefd[2]);简单测试代码如下:#include #include #include #include

2015-07-12 23:52:10 504

原创 Linux设备驱动中得DTS文件加载过程

1. 在\kernel\of\fdt.c 中有如下初始化函数  注释上:展开设备树,创建device_nodes到全局变量allnodes中void __init unflatten_device_tree(void){    __unflatten_device_tree(initial_boot_params, &allnodes,                early_init_...

2015-07-11 10:59:59 750

转载 linux内核代码风格

这是一个简短的文档,描述了linux内核的首选代码风格。代码风格是因人而异的,而且我不愿意把我的观点强加给任何人,不过这里所讲述的是我必须要维护的代码所遵守的风格,并且我也希望绝大多数其他代码也能遵守这个风格。请在写代码时至少考虑一下本文所述的风格。首先,我建议你打印一份GNU代码规范,然后不要读它。烧了它,这是一个具有重大象征性意义的动作。第一章:缩进制表

2015-07-11 10:59:32 355

原创 Linux的volatile关键字

volatile提醒编译器它后面所定义的变量随时都有可能改变,因此编译后的程序每次需要存储或读取这个变量的时候,都会直接从变量地址中读取数据。如果没有volatile关键字,则编译器可能优化读取和存储,可能暂时使用寄存器中的值,如果这个变量由别的程序更新了的话,将出现不一致的现象。下面举例说明。在DSP开发中,经常需要等待某个事件的触发,所以经常会写出这样的程序:short flag;void t...

2015-07-10 11:32:54 1056

转载 Linux register 关键字简介

这里还是稍微先一下auto这个关键字吧auto:它很宽恒大量的,你就当它不存在吧。编译器在默认的缺省情况下,所有变量都是auto 的。一语代过。。。register:这个关键字请求编译器尽可能的将变量存在CPU 内部寄存器中而不是通过内存寻址访问以提高效率。注意是尽可能,不是绝对。你想想,一个CPU 的寄存器也就那么几个或几十个,你要是定义了很多很多register 变量,它累死也可能不能

2015-07-10 11:32:52 1242

原创 linux文件读写浅析

http://blog.csdn.net/q27687/article/details/46754659 1、VFS,虚拟文件系统。之前我们已经看到f_op->read/f_op->write如何被调用,这就是VFS干的事(参见:《linux内核虚拟文件系统浅析》);2、Disk Caches,磁盘高速缓存。将磁盘上的数据缓存在内存中,加速文件的读写。实际上,在一般情况下,r...

2015-07-09 11:41:01 102

转载 linux的mkdir命令

http://10495372.blog.51cto.com/10485372/16710841.作用mkdir命令的作用是建立名称为dirname的子目录,与MSDOS下的md命令类似,它的使用权限是所有用户。2.格式mkdir [options] 目录名Usage:mkdir [OPTION]... DIRECTORY...3.[options]主要参数-m,--mode=模式

2015-07-09 11:39:33 482

原创 Linux kernel启动参数

ARM体系结构:1.最常用的方式,就是在make config里修改“General Setup”子菜单中的“Default kernel command string” 选项,通过修改这个选项来修改include/linux/autoconf.h文件中的CONFIG_CMDLINE宏2.有的时候为了省去make menuconfig的时间,并且内核命令也是固定的,就可以写死内核arch/...

2015-07-08 12:29:33 273

转载 linux开机启动脚本的顺序

linux下开机自动启动脚本所涉及的知识和方法如下:1、相关基础知识点   1)redhat的启动方式和执行次序是: 加载内核 执行init程序       /etc/rc.d/rc.sysinit # 由init执行的第一个脚本       /etc/rc.d/rc $RUNLEVEL # $RUNLEVEL为缺省的运行模式       /etc/rc.d/r

2015-07-08 12:29:26 579

原创 Linux中文乱码解决办法

vi /etc/sysconfig/i18n LANG="zh_CN.GB18030:"LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en"SYSFONT="lat0-sun16"

2015-07-07 21:03:57 226

原创 linux线程间通信示例

#include #include #include int buf[1000000]; int w=0,r=0; //r是读指针,w是写指针 int size=10; //缓冲区大小 pthread_mutex_t lock; //锁 pthread_cond_t is_empty; //缓冲区是否为空 pthread_cond_t is_full...

2015-07-06 21:12:38 212

原创 Linux的ACL配置

一、 为什么要使用ACL首先,在 linux下,对一个文件可以进行的操作的对象分别为user(文件的拥有者),group(组,注意不一定是文件拥有者所在的组), other (其他)而对于每一对象的操作又有了读 写 执行 (这里不讨论SUID, SGID以及Sticky bit的设置)通过ls -l命令就我们就可以列出一个文件的权限(看一下就行了,不需要操作)代码:...

2015-07-05 18:41:45 537

转载 linux文件读写浅析

1、VFS,虚拟文件系统。之前我们已经看到f_op->read/f_op->write如何被调用,这就是VFS干的事(参见:《linux内核虚拟文件系统浅析》);2、Disk Caches,磁盘高速缓存。将磁盘上的数据缓存在内存中,加速文件的读写。实际上,在一般情况下,read/write是只跟缓存打交道的。(当然,存在特殊情况。下面会说到。)read就直接从缓存读

2015-07-04 12:27:34 564

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除