
linux系统管理、内核、程序设计
文章平均质量分 70
bat603
这个作者很懒,什么都没留下…
展开
-
rhel5中不关闭SeLinux配置SAMBA的方法
将smb.conf中如下这两行启用(去掉行首的;号就可以了) setsebool -P samba_domain_controller on setsebool -P samba_enable_home_dirs on这两行生效后,自己的home目录就可以正常读写了。 如果想将/home/samba/temp目录设置成完全的共享就应该在字符状态写输入:chcon -t samba_s转载 2008-03-11 13:51:00 · 4302 阅读 · 0 评论 -
Linux下的压缩打包--tar命令详解
Windows下最常见的压缩文件只有两种,.zip和.rar。可是Linux就不同了,有.Z、bz2、.gz、.tar、.tar.gz等众多的压 缩文件名,它们分别对应了各种压缩打包命令。要了解这些压缩打包命令的使用,首先要弄清两个概念:打包和压缩。打包是指将一大堆文件或目录什么的变成一个 总的文件,压缩则是将一个大的文件通过一些压缩算法变成一个小文件。Linux中的很多压缩命令只能针对一个文件进转载 2006-08-29 16:08:00 · 3636 阅读 · 0 评论 -
Proxy源代码分析--谈谈如何学习linux网络编程(转载,又一篇很好的文章)
出处未知.Linux是一个可靠性非常高的操作系统,但是所有用过Linux的朋友都会感 觉到,Linux和Windows这样的"傻瓜"操作系统(这里丝毫没有贬低Windows的意思,相反这应该是Windows的优点)相比,后者无疑在 易操作性上更胜一筹。但是为什么又有那么多的爱好者钟情于Linux呢,当然自由是最吸引人的一点,另外Linux强大的功能也是一个非常重要的原因,尤 其是Linux强大的网转载 2006-08-25 09:14:00 · 1584 阅读 · 0 评论 -
学习Linux网络编程(转载,很不错的入门文章)
出处未知 这篇教程是用来介绍在Linux下编写网络程序的.----------------------------------------------------------------- Linux 系统的一个主要特点是他的网络功能非常强大。随着网络的日益普及,基于网络的应用也将越来越多。 在这个网络时代,掌握了Linux的网络编程技术,将令每一个人处于不败之地,转载 2006-08-25 09:06:00 · 10471 阅读 · 3 评论 -
解决客户端与远程服务器端的连接(mysql) :xxx.xxx.xxx.xxx is not allowed to connect to this MySQL server
转自优快云,但原帖有不妥之处,我稍微更正了一下.1.创建一个新用户floydlee.[root@rainfish root]# useradd -g mysql floydlee[root@rainfish root]# mysql 2.进入mysql,格式:grant 权限 on 数据库名.表名 用户@登录主机 identified by "用户密码"; grant select,update原创 2006-08-20 22:30:00 · 2125 阅读 · 0 评论 -
在MySQL数据库中使用C执行SQL语句
从下列章节中,Neil Matthew和Richard Stones使用详尽的MySQL C接口向我们介绍了如何在MySQL数据库中执行SQL语句。他们将讨论返回数据的语句,例如INSERT以及不返回数据的语句,例如UPDATE和 DELETE。然后,他们将编写从数据库检索数据的简单程序。执行SQL语句现在,我们已经有了一个连接,并且知道如何处理错误,是时候讨论使用我们的数据库来作一些实际工作了。转载 2006-08-20 19:35:00 · 1131 阅读 · 0 评论 -
用autotools制作Makefile 和configure文件。
制作一个最简单的helloworld程序: 现有目录test mkdir src 建立src目录存放 源代码 在src下。 编辑hello.c文件 [CODE] #include int main() { printf("hello world/n"); return 0; } [/CODE] 在src目录下建立Makefile.am文件 (src/Makefil转载 2006-08-16 10:56:00 · 2348 阅读 · 0 评论 -
linux下c语言学习笔记——操作mysql(转贴)
原帖有一些错误之处,现修改linux下c语言学习笔记——操作mysqlBy falcon 2006年3月30日晚上完成版权声明:可以自由转载,但是必须保留原作者名和本站地址,谢谢http://oss.lzu.edu.cn/blog/article.php?tid_45.html今天上数据库的时候刚上到嵌入式sql,感觉非常有意思,上课的时候就想反正做搜索引擎要用到c连接mysql数据库的转载 2006-08-20 15:25:00 · 1627 阅读 · 0 评论 -
C++的iostream标准库介绍
C语言提供了格式化输入输出的方法,C++也同样,但是C++的控制符使用起来更为简单方便,在c++下有两中方法控制格式化输入输出。 1.有流对象的成员函数。 例如,下列程序以成员函数的方式控制输出的精度:#include using namespace std; int main() { float pi=3.14159f; cout转载 2006-12-17 17:19:00 · 1612 阅读 · 0 评论 -
emacs教程
Emacs 的命令通常包括控制键(就是上面标有 Ctrl或Ctl的那个)或者是META键(上面标有EDIT或ALT)。为了方便起见我们将用下面的缩写来代替这些键的全称: C- 意思是当敲入字符 时同时按住控制键,因此,C-f表 示:按住控制键并且按 f 。 M- 表示当键入 时按住META或ALT或EDIT键。如果没有META 或ALT或EDIT键,则用ESC键代替。 表示ESC键 注意:退出转载 2006-12-12 16:48:00 · 1538 阅读 · 1 评论 -
对Makefile的详细介绍
关于makefile的一些资料,从网上捞出来的入门的,而且解说很详细假设我们有下面这样的一个程序,源代码如下:/* main.c */#i nclude "mytool1.h"#i nclude "mytool2.h"int main(int argc,char **argv){mytool1_print("hello");mytool2_print("hello");}/* mytool1.h转载 2006-08-15 15:22:00 · 1381 阅读 · 0 评论 -
在linux下安装MySQL的步骤
根据网上的资料整理.MYSQL地址:http://dev.mysql.com/get/Downloads/MySQL-4.1/mysql-4.1.21.tar.gz/from/http://mirror.vmmatrix.net/mysql/yi.安装mysql 4.1.21# groupadd mysql# useradd -g mysql mysql# tar -zxvf mysql-4.1.原创 2006-08-14 19:11:00 · 6991 阅读 · 7 评论 -
利用Autoconf和Automake制作Makefile文件时,如何连接进MYSQL的库和头文件?
转载 2006-08-17 10:17:00 · 5294 阅读 · 1 评论 -
anjuta的基本使用方法(包括如何设置MYSQL)
转自:www.linuxsir.org by jerboa1.首先要建立项目。在文件-新增项目,然后利用程序精灵,生成需要的项目。如gtk 2.0项目。项目名称一定要给定,版本和用用户按需要给出,项目说明填写也很必要,如果真的开发项目应用的话。其余按默认完成即可。这时程序在用户主目录 下的~/Projects目录下生成项目文件目录。在项目文件目录下生成一大堆文件,如NEW、TODO、Copyi转载 2006-08-15 13:57:00 · 8832 阅读 · 3 评论 -
linux下Makefile的automake生成全攻略
http://colding.blogchina.com作为Linux下的程序开发人员,大家一定都遇到过Makefile,用make命令来编译自己写的程序确实是很方便。一般情况下,大家都是手工写一个简单Makefile,如果要想写出一个符合自由软件惯例的Makefile就不那么容易了。 在本文中,将给大家介绍如何使用autoconf和automake两个工具来帮助我们自动地生成符合自由软件惯转载 2006-08-15 21:39:00 · 867 阅读 · 0 评论 -
gcc 命令行详解(转)
gcc使用的方法 -- 作者: www.linuxfans.org mozilla1。gcc包含的c/c++编译器gcc,cc,c++,g++,gcc和cc是一样的,c++和g++是一样的,(没有看太明白前面这半句是什么意思:))一般c程序就用gcc编译,c++程序就用g++编译2。gcc的基本用法gcc test.c这样将编译出一个名为a.out的程序gcc test.c -o te转载 2006-08-15 16:59:00 · 1134 阅读 · 0 评论 -
GLIB 安装手记
里面也有一定的欠妥之处,由于时间匆忙,有时间再做更改.信息来源:http://bluesilence.blogchina.com/第一个GLIB第二个ATK第三个CAIRO第四个PANGO(安装指令统一为:./configure --prefix=/usr && make && make install)第五个GTK安装GTK的时候参数参考http://www.gtk.org (./configu转载 2006-08-22 21:34:00 · 2290 阅读 · 0 评论 -
gtk/glade程序开发(二)
微调按钮构件(spin buttons) 常用函数: 创建微调按钮构件: /*创建微调按钮构件要用到“调整对象”,所以还要创建“调整对象” 以下就是Glade自动创建的微调按钮构件,就用到了“调整对象”*/ GtkObject *spinbutton1_adj; GtkWidget *spinbutton1; spinbutton1_adj = gtk_adjustment_n转载 2006-08-23 00:42:00 · 6113 阅读 · 0 评论 -
linux下怎样得到文件的大小
1.SHELL //得到已经使用的磁盘空间,以字节为单位 #ifdef _LINUX sprintf(cmd, "cd %s;find . -name /"*.*/"|xargs ls -l|awk {size+=$5}END{print size}", str_FilePath.c_str()); //sprintf(cmd, "du -s %原创 2007-12-03 15:37:00 · 4852 阅读 · 1 评论 -
kill -9都杀不掉的进程
kill -9发送SIGKILL信号将其终止,但是以下两种情况不起作用: a、该进程处于"Zombie"状态(使用ps命令返回defunct的进程)。此时进程已经释放所有资源,但还未得到其父进程的确认。"Zombie"进程要等到下次重启时才会消失,但它的存在不会影响系统性能。 b、 该进程处于"kernel mode"(核心态)且在等待不可获得的资源。处于核心态的进程忽略所有信号处理,因此转载 2007-07-30 17:08:00 · 23466 阅读 · 0 评论 -
内核模块编译入门
内核模块编译入门环境:redhat AS4今天突然心血来潮,想知道内核模块的编程。于是在网上找了一些例子,但是总不能用,经过千辛万苦,终于找到一个能用的代码。#include #include MODULE_LICENSE("GPL");//许可证intinit_module(){ printk("/nhello, world/n"); return 0;}voidcleanup_mo原创 2007-07-17 17:36:00 · 1539 阅读 · 0 评论 -
学到一些shell命令
ls -lR 可以递归的显示当前目录的所有文件另外: find $PWD -name "*.*" |xargs ls -f -l du -s %s|awk {print $1} 显示当前目录的所有文件的总大小(递归计算的)另外方法:"find %s -name /"*.cpp/"|xargs ls -l|awk {size+=$5}END{print size}原创 2007-01-15 19:30:00 · 1422 阅读 · 0 评论 -
sizeof 解析
关键词:sizeof这是网上的一个帖子,最初来自那里已经记不得了,不过我觉得很不错。我又在文章的后面加了一部分内容,是关于类的sizeof。如果有什么错误的地方,请大家指正,谢谢~~ --- majianan 2005-12-19 0.关键字:sizeof,字节对齐,类型大小前向声明: sizeof,一个其貌不扬的家伙,转载 2007-01-09 19:11:00 · 1325 阅读 · 1 评论 -
vi配置文件集合
作者:聂飞转载请注明出处在终端下使用vim进行编辑时,默认情况下,编辑的界面上是没有显示行号、语法高亮度显示、智能缩进等功能的。为了更好的在vim下进行工作,需要手动设置一个配置文件:.vimrc。在启动vim时,当前用户根目录下的.vimrc文件会被自动读取,该文件可以包含一些设置甚至脚本,所以,一般情况下把.vimrc文件创建在当前用转载 2007-01-08 21:04:00 · 13173 阅读 · 4 评论 -
vi常用命令及快捷键
光标控制命令 命令 光标移动h或^h 向左移一个字符j或^j或^n 向下移一行k或^p 向上移一行l或空格 向右移一个字符G 移到文件的最后一行nG 移到文件的第n行w 移到下一个字的开头W 移到下一个字的开头,忽略标点符号b 移到前一个字的开头B 移到前一个字的开头,忽略标点符号L 移到屏幕的最后一行M 移到屏幕的中间一行H 移到屏幕的第转载 2006-12-30 10:03:00 · 1529 阅读 · 0 评论 -
STL vector 容器介绍
STL vector 容器介绍A Presentation of the STL Vector Container (By Nitron)翻译 masterlee介绍std::vector,并且讨论它在STL中的算法和条件函数remove_if()。 Download Console Demo - 6.19 Kb Download MFC Demo - 14.6 Kb转载 2006-12-23 22:54:00 · 2568 阅读 · 0 评论 -
STL中map用法详解
Map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力,由于这个特性,它完成有可能在我们处理一对一数据的时候,在编程上提供快速通道。这里说下map内部数据的组织,map内部自建一颗红黑树(一种非严格意义上的平衡二叉树),这颗树具有对数据自动排序的功能,所以在map内部所有的数据都是有序的,后边我们会见识到有转载 2006-12-23 15:49:00 · 128858 阅读 · 32 评论 -
(GTK)错误处理及其他实用函数
错误处理函数gchar *g_strerror( gint errnum );返回一条对应于给定错误代码的错误字符串信息,例如“ no such process”等。输出结果一般采用下面这种形式: +程序名:发生错误的函数名:文件或者描述:s t r e r r o r下面是一个使用g _ s t r e r r o r函数的例子:g_print("hello_world:open:%s:%s/n原创 2006-08-25 13:19:00 · 1365 阅读 · 0 评论 -
GTK中的字符串操作GString
GString除了使用gchar *进行字符串处理以外, G l i b还定义了一种新的数据类型: G S t r i n g。它类似于标准C的字符串类型,但是G S t r i n g能够自动增长。它的字符串数据是以N U L L结尾的。这些特性可以防止程序中的缓冲溢出。这是一种非常重要的特性。下面是G S t r i n g的定义:struct GString{gchar *str; /* P原创 2006-08-25 13:15:00 · 5166 阅读 · 0 评论 -
gtk/glade程序开发(一)
转自 http://www.linuxforum.net/forum/gshowflat.php?Cat=&Board=kylix&Number=566950&page=0&view=collapsed&sb=4&o=all&fpart=all&vc=1 by cuigf 我已经安装好gtk2.0/glade2.10.0,系统环境 RH9 准备用一个月转载 2006-08-23 00:40:00 · 8801 阅读 · 4 评论 -
用anjuta编译gtk程序时出现类似与"main.c::10:21:gtk/gtk.h:没有那个文件和目录"问题的解决
用 anjuta 编译程序时会出现类似与"main.c::10:21:gtk/gtk.h:没有那个文件和目录",但是可以使用 创建 并且能执行程序.产生的原因是因为 pkg-config --cflags gtk-2.0 惹的祸,因为anjuta在编译时并没有把这个命令输入,解决办法是:在菜单 设定--commands 中的 compile 项的末尾加入 pkg-config --cflag原创 2006-08-22 22:47:00 · 3711 阅读 · 0 评论 -
GTK 计时器函数
计时器函数计时器函数可以用于为操作计时(例如,记录某项操作用了多长时间)。使用它的第一步是用g _ t i m e r _ n e w ( )函数创建一个计时器,然后使用g _ t i m e r _ s t a r t ( )函数开始对操作计时,使用g _ t i m e r _ s t o p ( )函数停止对操作计时,用g _ t i m e r _ e l a p s e d ( )函数判原创 2006-08-25 13:17:00 · 5700 阅读 · 1 评论 -
gtk/glade程序开发(三)
菜单构件(menu) 这一节我们是这样设计的:单击主窗口 菜单“文件”下的“打开”子菜单,会弹出一个新窗口。 菜单构件的使用比较简单,只要设计好后,在callbacks.c文件中找到“相应菜单”对应的“函数”, 在里面添加代码就可以了。 我们设计的主菜单有两项,“文件”和“编辑”。“文件”下有:“打开”、“保存”。“编辑”下有:“拷贝”、“粘贴”。 创建菜单构件: /* 创建菜转载 2006-08-23 00:46:00 · 3998 阅读 · 3 评论 -
linux中.o,.a,.o,.so文件的意义和编程实现
转自 烟雨楼 http://hi.baidu.com/yanyuloulinux下文件的类型是不依赖于其后缀名的,但一般来讲: .o,是目标文件,相当于windows中的.obj文件 .so 为共享库,是shared object,用于动态连接的,和dll差不多 .a为静态库,是好多个.o合在一起,用于静态连接 .la为libtool自动生成的一些共享库,vi编辑查看,主要记录了一些配置信转载 2006-12-11 13:52:00 · 18167 阅读 · 0 评论 -
自旋锁入门
自旋锁最多只能被一个可执行线程持有。自旋锁不会引起调用者睡眠,如果一个执行线程试图获得一个已经被持有的自旋锁,那么线程就会一直进行忙循环,一直等待下去,在那里看是否该自旋锁的保持者已经释放了锁,"自旋"一词就是因此而得名。 由于自旋锁使用者一般保持锁时间非常短,因此选择自旋而不是睡眠是非常必要的,自旋锁的效率远高于互斥锁。 信号量和读写信号量适合于保持时间较长的情况,它们会导致调用者睡眠,转载 2006-12-07 20:17:00 · 1557 阅读 · 0 评论 -
多进程读写一个缓冲区的机制
今天主管给安排了一个工作,实现多进程对一个缓冲区的对操作,做流媒体的,需要高效率的机制。经过一天的思考,确定了一个比较好的机制。 把缓冲区设置成1、2两区,读进程(多个)去读1区,同时写进程(多个)要向2区写,这样可以提高一倍的吞吐量。现在问题是当读进程发现1区没有了内容,怎么通知写进程切换到1区写,以方便读进程去2区读。 解决办法:设置一个fla原创 2006-12-07 19:13:00 · 3441 阅读 · 0 评论 -
在redhat as4查看windows下的分区的方法
最终还是从网上找到了一个较新的版本,然后刻录成光盘.在这里有必要说一下的是用网上流行的硬盘安装的方法行不通,提示是:“CRC ERROR”,本来以为是我下载的镜像文件有问题呢,没有想到刻录成光盘安装一点问题没有。 安装完成进去体验了一把,感觉做的非常不错,跟以前版本相比有较大改进,和个人版的FC5差不多。想想终于可以在linux下做东西了感觉无比兴奋。 安静下来后,首先要做的就原创 2006-11-04 12:09:00 · 1922 阅读 · 0 评论 -
对X-Window的一些小知识
一 基本概念1 “linux”是一个内核名称,本身没有图形界面,现在的图形界面都是由linux下的应用程序实现的。2 X和XFree86是什么关系? X是一个协议,而不是具体的某个软件; XFree86是实现这个协议的一个软件; 实现X协议的软件也并不只有XFree86,只不过在LINUX上最常用的是XFree86。苹果电脑的图形界面也是用X协议,而且被认为是做的最好的X 协转载 2006-10-31 13:22:00 · 1079 阅读 · 1 评论 -
一个LINUX高手写给初学者的话
现在好多的人开始接触电脑的时候,见到的应该是Windows98 说实话,98 已经是一个很人性化,封装的很好的一个系统了 一个对电脑一窍不通的人都能很快的使用它。这样很多人对 "电脑"的印象和那些和我一样一开始接触的是DOS人是绝然不 同的。在DOS时代,如果你对电脑的基础知识不懂的话是玩不 动它的,不像现在好多人CPU是什么都不知道,却能够是Flash 高手,倾倒MM无数。如果你是这转载 2006-06-11 02:05:00 · 2150 阅读 · 3 评论 -
Linux操作系统的内核编译内幕详解
转自 嵌入式资讯网内核简介 内核,是一个操作系统的核心。它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。 Linux的一个重要的特点就是其源代码的公开性,所有的内核源程序都可以在/usr/src/linux下找到,大部分应用软件也都是遵循GPL而设计的,你都可以获取相应的源程序代码。 全世界任何一个软件工程师都可以将自己认为优秀的代码加入到其中,转载 2006-06-03 23:45:00 · 965 阅读 · 0 评论