随笔分类 -  Linux

1
解读Linux源码,与应用技巧
摘要:1、关于目录 /lib/modules/2.6.9-42.ELsmp/build/ 这个是内核源码所在的目录 一般使用这样的命令进入这个目录:cd /lib/modules/$(uname -r)/build/ 这个目录实际上指向了:/usr/src/kernels/2.6.9-42.EL-smp-i6862、编译驱动所使用的makefile 实际上编译驱动的时候是使用预先提供的一个makefile的,位置在:/lib/modules/$(uname -r)/build/Makefile 注意:M是大写的3、网上抄录的Linux驱动Hello world的源码:// hello.c#inclu 阅读全文
posted @ 2013-09-16 14:36 einyboy 阅读(5005) 评论(0) 推荐(1) 编辑
摘要:libiconv库是一个基于GNU协议的开源库,主要是解决多语言编码处理转换等应用问题。 怎样学习使用libiconv库?对于刚接触到人来说,这篇文章不妨去看一看,若已经用到过该库的人,在应用的过程中可能遇到一些问题,我们可以一起来探讨,我的联系方式是 cnangel@gmail.com 。 几个函数原型:iconv_t iconv_open(const char *tocode, const char *fromcode);size_t iconv(iconv_t cd, char **inbuf, size_t *inbytesleft, char **outbuf, size_t *ou 阅读全文
posted @ 2013-07-11 16:08 einyboy 阅读(1277) 评论(0) 推荐(1) 编辑
摘要:在windows平台上使用source insight开发时,常常会有文件格式的问题,我们知道dos2unix可以完成从dos格式到unix格式的转换,但是最好能够有一个现成的批量转换脚本。#!/bin/shforeachd () { echo $1 for file in $1/* do if [ -d $file ] then echo "directory $file" foreachd $file fi if [ -f $file ] then echo "file $file" dos2unix $file chmod -x $file fi 阅读全文
posted @ 2013-01-14 16:48 einyboy 阅读(927) 评论(0) 推荐(1) 编辑
摘要:在使用SI过程中,我根据自己的使用习惯修改了它的默认快捷键,并且在配置文件中添加了一些人性化功能,下面一一介绍:修改快捷键:Options->Key Assignments...1.main window:Esc 2.Hight light:Middle Mouse3.Go Back:Alt+z 4.Go Forward:Alt+x 5.Caller:Alt+c 6.Reference:Alt+r7.Previous Link:Alt+a 8.Next Link:Alt+s9.First Link:Alt+d 10.Go Line:Alt+... 阅读全文
posted @ 2013-01-14 10:49 einyboy 阅读(832) 评论(0) 推荐(1) 编辑
摘要:实战Makefile.amMakefile.am是一种比Makefile更高层次的规则。只需指定要生成什么目标,它由什么源文件生成,要安装到什么目录等构成。表一列出了可执行文件、静态库、头文件和数据文件,四种书写Makefile.am文件个一般格式。表 1Makefile.am一般格式对于可执行文件和静态库类型,如果只想编译,不想安装到系统中,可以用noinst_PROGRAMS代替bin_PROGRAMS,noinst_LIBRARIES代替lib_LIBRARIES。Makefile.am还提供了一些全局变量供所有的目标体使用:表 2 Makefile.am中可用的全局变量在Makefil 阅读全文
posted @ 2013-01-07 15:02 einyboy 阅读(13502) 评论(0) 推荐(1) 编辑
摘要:CMake是一个比make更高级的编译配置工具,它可以根据不同平台、不同的编译器,生成相应的Makefile或者vcproj项目。通过编写CMakeLists.txt,可以控制生成的Makefile,从而控制编译过程。CMake自动生成的Makefile不仅可以通过make命令构建项目生成目标文件,还支持安装(make install)、测试安装的程序是否能正确执行(make test,或者ctest)、生成当前平台的安装包(make package)、生成源码包(make package_source)、产生Dashboard显示数据并上传等高级功能,只要在CMakeLists.txt中简单 阅读全文
posted @ 2013-01-04 11:54 einyboy 阅读(616) 评论(0) 推荐(0) 编辑
摘要:相信做过Mutipath Device的童鞋对multipath.conf并不陌生。不错,这个是DM的配置文件。初次配置DM可以不修改配置文件中的任何内容,它会默认加载,当然用的参数也是默认的。有些时候我们的存储并不支持默认的配置,或者默认的配置并不适合存储的需求,这就需要对默认的参数做些修改。下面看一下默认mutipath.conf的内容:[root@ProsDB01 etc]# more multipath.conf# This is a basic configuration file with some examples, for device mapper# multipath.# 阅读全文
posted @ 2012-12-13 21:23 einyboy 阅读(866) 评论(0) 推荐(0) 编辑
摘要:1、autoscan autoscan是用来扫描源代码目录生成configure.scan文件的。autoscan可以用目录名做为参数,但如果你不使用参数的话,那么autoscan将认为使用的是当前目录。autoscan将扫描你所指定目录中的源文件,并创建configure.scan文件。2、configure.scan configure.scan包含了系统配置的基本选项,里面都是一些宏定义。我们需要将它改名为configure.in3、aclocal aclocal是一个perl脚本程序。aclocal根据configure.in文件的内容,自动生成aclocal.m4文件。aclo... 阅读全文
posted @ 2012-12-01 19:29 einyboy 阅读(758) 评论(0) 推荐(0) 编辑
摘要:0.准备软件及插件。(a)gvim72.exe地址ftp://ftp.vim.org/pub/vim/pc/gvim72.exe。(b)vimcdoc-1.7.0-setup.exe地址http://prdownloads.sourceforge.net/vimcdoc/vimcdoc-1.7.0-setup.exe?download(c)ec57w32.zip地址http://prdownloads.sourceforge.net/ctags/ec57w32.zip(d)taglist_45.zip地址http://www.vim.org/scripts/download_script.ph 阅读全文
posted @ 2012-11-10 02:23 einyboy 阅读(9860) 评论(0) 推荐(0) 编辑
摘要:iptables防火墙可以用于创建过滤(filter)与NAT规则。所有Linux发行版都能使用iptables,因此理解如何配置iptables将会帮助你更有效地管理Linux防火墙。如果你是第一次接触iptables,你会觉得它很复杂,但是一旦你理解iptables的工作原理,你会发现其实它很简单。首先介绍iptables的结构:iptables -> Tables -> Chains -> Rules. 简单地讲,tables由chains组成,而chains又由rules组成。如下图所示。图: IPTables Table, Chain, and Rule Struc 阅读全文
posted @ 2012-11-10 00:33 einyboy 阅读(383) 评论(0) 推荐(0) 编辑
摘要:一,图形界面方式:1,进入图形界面,选择“开始”――“system settings”――“network”进入网络设置(network configuration)。2,在网络设置窗口的工具栏点击“new”,新建一个网络。3,选择需要的网络设备类型,一般是以太网卡(Ethernet Connection),然后选择要增加ip的网卡。按下一步。4,选择“statically set ip addresses”给网卡分配需要的ip和子网掩码,按下一步,完成ip的分配,这时网络设备会新增一个。5,退回“network configrtation”窗口,点击“active”激活新增的网络设备。6,在 阅读全文
posted @ 2012-09-18 16:47 einyboy 阅读(8294) 评论(0) 推荐(0) 编辑
摘要:例如想要查看一些python进程的开始时间(stime)、已经运行了多长时间(etime)[dwapp@ldrac:/home/dwapp/admin/alisql/task/rtdc]ps -eo pid,tty,user,comm,stime,etime | grep python14433 ? dwapp python 00:00 09:26:4514436 ? dwapp python 00:00 09:26:4515905 ? dwapp python 07:45 01:41:23 阅读全文
posted @ 2012-09-18 10:30 einyboy 阅读(9749) 评论(0) 推荐(1) 编辑
摘要:使用RMAN>show all;可以显示出RMAN 配置参数为:CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # defaultCONFIGURE BACKUP OPTIMIZATION OFF; # defaultCONFIGURE DEFAULT DEVICE TYPE TO DISK; # defaultCONFIGURE CONTROLFILE AUTOBACKUP OFF; # defaultCONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F&# 阅读全文
posted @ 2012-09-13 15:20 einyboy 阅读(3130) 评论(0) 推荐(0) 编辑
摘要:<<< Log from 210.42.35.61 started 五月 22, 2010, 14:49:01 >>>[root@Backup-ctgu /]#parted /dev/sdd (用parted分区) GNU Parted 1.8.1 Using /dev/sdd Welcome to GNU Parted!... 阅读全文
posted @ 2012-09-13 15:04 einyboy 阅读(3065) 评论(0) 推荐(0) 编辑
摘要:方法一:以setarch-1.3-1.src.rpm 软件包为例(可以到CSDNhttp://download.csdn.net/source/215173#acomment下载)假设该文件已经存在于/usr/local/src/下。在该目录下执行rpmbuild --rebuild --clean setarch-1.3-1.src.rpm若顺利执行成功则会在/usr/src/redhat/RPMS/i386/目录下生成setarch-1.3-1.i386.rpm这个rpm文件。接下来就是rpm的安装过程。方法二:(1)rpm –ivhsetarch-1.3-1.src.rpm执行rpm安装 阅读全文
posted @ 2012-09-13 11:19 einyboy 阅读(33782) 评论(0) 推荐(0) 编辑
摘要:件系统限制:以下信息出自:维基百科ext3块尺寸 最大文件尺寸 最大文件系统尺寸1KiB 16GiB 2TiB2KiB 256GiB 8TiB4KiB 2TiB 16TiB8KiB 16TiB 32TiBext4Extentsext4引进了Extent档案储存方式,以取代ext2/3使用的block mapping方式。Extent指的是一连串的连续实体block,这种方式可以增加大型档案的效率并减少分裂档案。ext4支援的单一Extent, 在单一block为4KB的系统中最高可达128MB[1]。单一inode中可储存4笔Extent;超过四笔的Extent会以Htree方式被索 引。最大 阅读全文
posted @ 2012-09-12 13:50 einyboy 阅读(16423) 评论(0) 推荐(0) 编辑
摘要:比如我们加入了一个新的大于2T的 LUN到Linux服务器 /dev/sdb# parted -s /dev/sdb mklabel gpt将磁盘格式化为GPT格式# parted -s /dev/sdb “mkpart primary 0 –1”将整块磁盘分成一个分区 阅读全文
posted @ 2012-09-12 12:03 einyboy 阅读(4128) 评论(0) 推荐(0) 编辑
摘要:打算给系统装一个oracle,发现磁盘空间不足。在安装系统的时候我选择的是自动分区,系统就会自动以LVM的方式分区。为了保证系统后期的可用性,建议所有新系统安装都采用LVM,之后生产上的设备我也打算这样做。参于LVM基本介绍与常用命令请参考:http://blog.haohtml.com/archives/11957LVM结构图扩容之前的磁盘状况[root@localhost ~]# df -h文件系统容量已用可用已用%%挂载点/dev/mapper/VolGroup-lv_root5.3G2.5G2.6G50% /tmpfs538M0538M0% /dev/shm/dev/sda1485M3 阅读全文
posted @ 2012-05-31 16:11 einyboy 阅读(25740) 评论(1) 推荐(0) 编辑
摘要:根文件系统快用完了,给你一块新硬盘,怎样实现根文件系统扩容?这是面试中经常会出现的一个问题。接下来,我们就在虚拟机里面做一下这个试验。1、试验环境物理机:Windows XP虚拟机:VMware 7虚拟系统:RHEL 42、当前的磁盘使用情况三块SCSI虚拟硬盘,每个8G,总共24G。一个卷组VolGroup00,分成两个逻辑卷,LogVol00作为根文件系统,LogVol01作为swap。[root@Shell_HAT]# df -hFilesystem Size Used Avail Use% Mounted on/dev/mapper/VolGroup00-LogVol00 20G 17 阅读全文
posted @ 2012-05-31 15:11 einyboy 阅读(999) 评论(0) 推荐(0) 编辑
摘要:LVM(Logical Volume Manager)逻辑卷管理,是一种将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的分区加入其中,这样可以事项一种磁盘空间的动态管理,相对于普通的磁盘分区有很大的灵活性,使用普通的磁盘分区,当一个磁盘的分区空间不够使用的时候,可能就会带来很大的麻烦。使用LVM在一定程度上就可以解决普通磁盘分区带来的问题。如图1所示由四个磁盘分区可以组成一个很大的空间,然后在这些空间上划分一些逻辑分区,当一个逻辑分区的空间不够用的时候,可以从剩余空间上划分一些空间给空间不够用的分区使用如图2,从剩余空间中划分一部分 阅读全文
posted @ 2012-05-31 15:00 einyboy 阅读(711) 评论(0) 推荐(0) 编辑

1