编译linux内核
摘要:编译linux内核1 编译前的准备 下载linux源文件:https://www.kernel.org/,我下载的是linux-3.7.4版本,解压到/usr/src/kernels目录中,然后进入/usr/src/kernels/linux-3.7.4中,用make menuconfig命令来选择要编译的模块,但使用make menuconfig(重新编译内核常用的命令,还可以用其他的)报下面的错误:说缺少ncurses库,然后安装ncurses开发库就可以了 yum install ncurses-devel.i686再次使用make menuconfig,出现下面的界面:然后我直接保..
阅读全文
Linux CentOS6.3安装配置vsftpd服务器详解
摘要:Linux CentOS6.3安装配置vsftpd服务器详解Linux下的vsftpd服务软件是一个非常实用强大的开源ftp服务器软件。不多做解释了,有兴趣可以查Wiki。下面就来介绍下Centos6.3下安装和配置vsftpd服务。长话短说了,这里直接调用配置文件再做说明。有些人配置出现错误提示:500 OOPS: bad bool value in config file for 。这个需要注意的是配置参数的=号左右两边都不要出现空格。配置真实用户登录出现的错误提示响应: 331 Please specify the password.命令: PASS ***响应: 530 Login i
阅读全文
Linux设备驱动动态插入内核与直接集成到内核方式的利弊分析
摘要:Linux设备驱动动态插入内核与直接集成到内核方式的利弊分析引子:公司做了一款基于Linux的以太网接口板,目前由我来进行维护,该板主CPU采用PowerPC,运行Linux系统,外接两块DPRAM,DPRAM是用字符设备驱动程序的方式写的,直接集成在了内核源代码中,通过和内核一块编译来进行烧录,接手该板的相关程序后,我和同事探讨了一下将DPRAM的驱动为什么采用集成到内核随内核整体编译而么有采用单独编译动态加载的方式的问题,今天自己又简单的总结了一下,于是有了此篇BOLG。正文: 在Linux环境开发设备驱动程序,要使驱动能共正常工作,主要有两种方式, 第一种是集成到内核,随内核一起编译..
阅读全文
C#开源文件实时监控工具Tail&TailUI
摘要:C#开源文件实时监控工具Tail&TailUITail & TailUITail 是一种基于命令行的文件实时监控和查看器,是对 UNIX 'tail -f' 命令的Windows移植。Tail 可以快速显示大文件的末尾部分,而无需加载整个文件。并且其可以用于查看一个正在增长的文件。Tail 仅是一个文件查看器,其不会对文件进行任何更改。TailUI 是 Tail 的 GUI 桌面程序。环境要求Microsoft .NET Framework 4功能选项-f, --follow[=name]显示输出文件增长的部分。-r, --retry始终尝试打开一个文件,尽管其
阅读全文
[原]常用Linux命令总结[Thx for commandlinefu]
摘要:[原]常用Linux命令总结[Thx for commandlinefu]总结commandlinefu.com 的vote数目最多的实用命令如下(按vote数目),送给英文不好的亲们:——————————————lsof -i -P | grep -i "listen"lsof -Pni4 | grep LISTENnetstat -plnt查看正在监听的端口————————————————————————————————————————————————netstat -ant | awk '{print $NF}' | grep -v '[a-z
阅读全文
文件监控
摘要:文件监控我实现的文件监控主要是对某个文件夹里所有的文件检测是否修改、是否有新建文件、是否有文件被删除,并把这些改变记录到文件中。开始想用链表存储文件信息,毕竟链表删除方便,但链表的查找效率不高,所以打算用红黑树实现,因为红黑树查找和删除的操作都是比较快的。 基本思路是这样的:对于指定的文件夹,首先调用一个扫描函数,扫描指定文件夹里的所有文件和文件夹,当遇到一个文件或文件夹时,用文件名作为关键字在红黑树中查找该文件,如果不存在,就把文件名作为关键字,将文件路径,文件修改时间,标记等信息存入一个结点插入到红黑树中,将标记设置为新插入,如果存在,由于找到的结点会有多个(同名文件),所以要比较所有找.
阅读全文
Linux下JDK的配置(以CentOs为例)
摘要:Linux下JDK的配置(以CentOs为例)准备:下载jdk-6u10-linux-i586.bin(我这版本太老了,大家下新的吧)(1)、权限问题:如果以普通用户登陆,切换到root用户,因为Linux很注重权限,普通用户对某些文件没有操作权限,可以直接以root用户登陆,但安全起见,还是建议普通用户登陆,切换方式:$ su–root//准备切换口令://输入根口令,如果没显示,别管,继续摸着输(2)、解压文件:mkdir/usr/java//在usr目录下建一个文件夹java//进入home文件夹,假设jdk-6u10-linux-i586.bin在home文件夹下#cd /home#c
阅读全文
Vim案例两则
摘要:Vim案例两则博问中看见两个比较典型的Vim处理文本的案例,总结一下,希望对大家有所帮助。如果大家有好的方法,欢迎讨论。尤其是第二个案例,如果能够一个命令处理更好。案例一这是在博问中看到的一个问题,原始文本如下。要求处理成下面的样子,也就是把逗号从行尾移动到下一行第一个单词前面。我的第一想法是先将2-6行的逗号删除,然后在3-7行加上逗号即可。删除2-6行的逗号:%s/,// 解释一下:: 冒号在Vim里面是命令引导符,想要输入命令必须先输入冒号。% 表示匹配所有行s/old/new/ 表示用new来替换old。s表示substitude(替换)。在s/,//中,old是逗号,new是空(注意
阅读全文
ssh
摘要:Linux学习之CentOS(十四)--初识ssh早在学习Linux之前,就有听说过ssh这个词了,当时因为学了j2ee的三大框架,所以当听到ssh时,我立马想到的是struts + spring + hibernate,当时也在想这不是java的东西么?怎么跟Linux扯上关系了???后面在百度一下ssh以后,才发现此ssh并非咱们常说的那三大框架的总称,而是一种安全协议,Secure Shell的缩写。。。看来自己的墨水还是太少了。。。还有太多东西要去学习啊。。。。SSH(Secure Shell的缩写),由 IETF 的网络工作小组(Network Working Group)所制定;S
阅读全文
Linux 内核编码风格
摘要:Linux 内核编码风格序 像其他大型软件一样,Linux制订了一套编码风格,对代码的格式、风格和布局做出了规定。我写这篇的目的也就是希望大家能够从中借鉴,有利于大家提高编程效率。 像Linux内核这样大型软件中,涉及许许多多的开发者,故它的编码风格也很有参考价值。括号 1、左括号紧跟在语句的最后,与语句在相同的一行。而右括号要另起一行,作为该行的第一个字符。 2、如果接下来的部分是相同语句的一部分,那么右括号就不单独占一行。 3、还有 4、函数采用以下的书写方式: 5、最后不需要一定使用括号的语句可以忽略它: 每行代码的长度 要尽可能地保证代码长度不超...
阅读全文
Linux.NET jexus
摘要:Linux.NET学习手记(2)上一回合,我们讨论学习了如何在Linux环境中搭建能够供.NET运行的环境,不知道各位读者是否已经完成了环境的搭建?不过,无论各位读者是采用我们上回合介绍的方法还是采用网上提供的其他方法搭建Linux.NET环境,选择哪个发行版的Linux,采用了那个版本的mono,都有一点非常重要的,就是:必须保证.NET能够在这上面正常的运行,换句话说就是要确保搭建的环境能够正常工作。所谓“三军未动粮草先行”,今后所有关于Linux.NET学习实验都是基于该环境进行的,如果连这个环境没办法正常的运作,那我们今后Linux.NET的学习与实验将会变得困难重重,甚至是无法进行下
阅读全文
构建优美的Linux系统环境
摘要:Linux离你其实并不遥远--------构建优美的Linux系统环境构建自己的Linux工作环境 安装Ubuntu12.04LTS操作系统,当然也可以安装其他版本,但是比较推荐安装LTS长期支持版本。 Ubuntu的安装ISO文件可以到Ubuntu官网去下载,然后使用Ultro ISO工具写入U盘,直接用U盘安装,快捷方便。个人建议选择语言的时候使用英文,整个系统环境为英文看起来更舒服,在命令行的时候也更美观。其次在命令行出现报错的情况,利用英文的提示去google搜索通常会得到满意的答复。百度实在不是很给力,很多搜索的信息都是无用信息或者牛头不对马嘴。牢骚也发完了,现在开始进入正题。本..
阅读全文
linux学习之命令行笔记(一)
摘要:linux学习之命令行笔记(一)最近在centOS环境下初学linux命令行,刚好在博客园上又看到一篇文章:命令行是你的至交好友是介绍命令行的,觉得不错,就按照文章的实例一步一步执行命令,收获良多。 1、文章开始介绍的是BASH的提示符,我总算明白提示符是怎么来的,不过有个疑问,就是不知道如何定制自己的个性化提示符,应该是修改配置文件,可是如何修改呢?文章没有说明,我也只好存疑啦。 PS1、PS2、PS3、PS4是BASH的特殊变量,分别控制着不同类型的提示符。可以用下面的命令查看个人的PS1变量:echo $PS1 可以在BASH命令中使用的特殊字符完整列表:\a - ASCII响铃字符..
阅读全文
CentOS下j2ee环境搭建
摘要:Linux学习之CentOS(七)--CentOS下j2ee环境搭建因为是做j2ee后台开发的,所以在Linux上搭建j2ee环境是每一个java程序员所需要掌握的。所以这篇随笔主要记录一下j2ee环境搭建过程,包括jdk、tomcat、eclipse的安装,(对于mysql数据库的安装,将会在后面的随笔中记录)。一、jdk1.7的安装及环境搭建在CentOS6.4安装完以后,系统默认安装了jdk1.6,以及jre-1.7.0-openjdk等版本,我们在这里选择安装自己的jdk1.7首先先去oracle官网下载jdk1.7,我的CentOS是64位的,所以选择64位下载,(我下载的是 jdk
阅读全文
Linux 架构
摘要:Linux 架构我们以下图为基础,说明Linux的架构(architecture)。(该图参考《Advanced Programming in Unix Environment》)最内层是我们的硬件,最外层是我们常用的各种应用,比如说使用firefox浏览器,打开evolution查看邮件,运行一个计算流体模型等等。硬件是我们的物质基础,而应用是我们所要奋斗的目标,但在两者之间,还要经过一番周折。还记得我们在Linux启动的时候。首先会启动内核(kernel),内核是一段计算机程序,这个程序直接管理管理硬件,包括CPU、内存空间、硬盘接口、网络接口等等。所有的计算机操作都要通过内核传递给硬件。
阅读全文
CentOs6.4环境搭建
摘要:CentOs6.4环境搭建一、前言作为一个想从事j2ee后台开发的程序猿,linux系统怎能不学呢?所以,这几天自己准备学习一下linux操作系统。废话不多说,直奔主题。要学linux开发,首先得要安装linux系统吧,这里我在选择之前也挺迷茫,因为linux系统有太多可选择了,例如最著名的的RedHat、咱中国人开发的红旗Linux,Ubuntu、Fedora、CentOS等等,最后在请教了一下前辈们以后,选择了安装CentOS这个系统。二、CentOS简介CentOS(Community ENTerprise Operating System)是Linux发行版之一,它是来自于Red Ha
阅读全文
安装nginx
摘要:安装nginx什么是nginx?说到nginx大家都不会陌生。它是一个HTTP和反向代理服务器,同时也是一个邮件代理服务器。nginx是俄罗斯程序员Igor Sysoev编写的,并在BSD 2-clause协议下开放源代码。现在很多网站都采用了nginx作为服务器,大名鼎鼎的Wordpress.com就是典型的例子。目前支持的平台也相当多,像类UNIX平台、Windows平台等。为什么要写这篇博客?虽然我没怎么用过nginx,但是现在了解一下,看看源码还是很不错的。我知道国内早就有很多人在研究nginx源码,并且有很深的造诣。我不敢跟大牛们攀比,写这些东西仅仅作为notes来记录我的学习经历以
阅读全文
Linux下C编程,进程通信之标准流管道通信(即系统调用)
摘要:Linux下C编程,进程通信之标准流管道通信(即系统调用)1.概述 在编程的过程中总会需要使用系统调用,如linux下的ps,touch,rm,grep命令等;windows下的dir,mkdir,del命令等。 在linux中执行系统调用,通常使用标准流管道。 标准流管道将一系列的创建过程合并到一个函数popen()中。poen完成的工作有以下几步: (1)创建一个管道。 (2)fork一个子进程。 (3)在父子进程中关闭不需要的文件描述符。 (4)执行exec函数族调用。 (5)执行函数中所指定的命令。2.主要函数说明 FILE*popen(const char*comm...
阅读全文
Linux下的C编程实战
摘要:Linux下的C编程实战Linux下的C编程实战(一)――开发平台搭建1.引言 Linux操作系统在服务器领域的应用和普及已经有较长的历史,这源于它的开源特点以及其超越Windows的安全性和稳定性。而近年来,Linux操作系统在嵌入式系统领域的延伸也可谓是如日中天,许多版本的嵌入式Linux系统被开发出来,如ucLinux、RTLinux、ARM-Linux等等。在嵌入式操作系统方面,Linux的地位是不容怀疑的,它开源、它包含TCP/IP协议栈、它易集成GUI。 鉴于Linux操作系统在服务器和嵌入式系统领域愈来愈广泛的应用,社会上越来越需要基于Linux操作系统进行编程的开发人员。浏览许
阅读全文
Linux下C编程
摘要:Linux下C编程,进程通信之无名管道通信最近在看进程间的通信,下面说说管道通信之无名管道。1.概述 管道是Linux中很重要的一种通信方式,他是把一个程序的输出直接连接到另一个程序的输入,并且管道具有队列的特性。如Linux命令,“ps -ef | grep root”。如下图所示:2.无名管道 2.1特点 (1)它只能用于具有亲缘关系的进程之间的通信(也就是父子进程或者兄弟进程之间)。 (2)它是一个半双工的通信模式,具有固定的读端和写端。 (3)管道也可以看成是一种特殊的文件,对于它的读写也可以使用普通的read、write等函数。但是它不是普通的文件,并不属于其他任何文件系统...
阅读全文