闇の光

读书笔记 经验感受

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

随笔分类 -  Linux

1 2 3 下一页

摘要:要建立一个Linux服务器就首先要了解Linux环境下和网络服务相关的配置文件的含义及如何进行安全的配置。在Linux系统中,TCP/IP网络是通过若干个文本文件进行配置的,也许你需要编辑这些文件来完成联网工作,下面介绍几个基本的TCP/IP网络配置文件。1./etc/sysconfig/network-scripts/ifcfg-<interface-name>文件在 RedHat中... 阅读全文
posted @ 2009-08-04 14:44 taizi 阅读(1144) 评论(0) 推荐(0)

摘要:查看RPM信息:rpm -q [软件的rpm名字]rpm -q下还有很多选项,具体功能如下:rpm -qa 列出所有已安装的RPM文件rpm -qa | grep [rpmname] 搜索一个特定的软件包,其名字的关键字[rpmname]rpm -ql 列出RPM中的文件rpm -qc 列出一个软件包上... 阅读全文
posted @ 2008-05-13 10:00 taizi 阅读(392) 评论(0) 推荐(0)

摘要:标准I/O库(stdio标准输入输出)与它的头文件stdio.h提供了一个到底层I/O系统调用的通用接口。此标准库现在已经是ANSI标准C的一部分,我们前面所见到的系统调用都不是。标准I/O库提供了许多复杂的函数用来格式化输出以及扫描输入,另外它也负责处理设备的缓冲需求。在许多方面,我们用使用底层文件描述符同样的方法来使用此标准库,我们只需要打开一个文件来建立一个访问通道,此操作所返回的值将作为其... 阅读全文
posted @ 2008-04-10 12:03 taizi 阅读(595) 评论(0) 推荐(0)

摘要:Other System Calls for Managing Files还有一些其他的系统调用,能够对这些底层的文件描述符进行操作,这些系统调用允许程序控制文件如何使用以及返回相关的状态信息。lseeklseek系统调用对文件描述符fildes的读写指针进行设置,也就是说,我们可以通过它来设置下一个读写操作所发生的位置。我们可以设置指针到文件中一个绝对位置,或者将它设置为相对于当前位置或文件末尾... 阅读全文
posted @ 2008-04-08 16:49 taizi 阅读(403) 评论(0) 推荐(0)

摘要:Initial Permissions当你使用O_CREAT标志和open来创建文件时,必须使用open调用的三种模式参数格式。第三个参数mode是几个标志按位OR后得到的,这些标志在头文件sys/stat.h.中定义,它们是: S_IRUSR读权限,文件属主 S_IWUSR写权限,文件属主 S_IXUSR执行权限,文件属主 S_IRGRP读权限,文件所属组 S_IWGRP写权限,文件所属组 S... 阅读全文
posted @ 2008-04-08 11:34 taizi 阅读(505) 评论(0) 推荐(0)

摘要:每个运行的程序,都被称之为一个进程,它们都有一个与之相关联的文件描述符。这些文件描述符是一些小的整数,你可以使用它们来访问打开的文件或设备,它们有效性的多少依赖于系统是如何配置的。当一个程序开始时,通常它拥有的三种描述符已经被打开,分别是:0: 标准输入1: 标准输出2:标准错误你可以通过使用open系统调用将其他的文件描述符同文件和设备关联起来,这样文件标识符就为自动打开的。不过,要允许你能够创... 阅读全文
posted @ 2008-04-07 15:12 taizi 阅读(323) 评论(0) 推荐(0)

摘要:在直接使用低级系统调用时,在输入输出上会存在这样一个问题,就是这些调用存在着效率低的状况。为什么会这样呢?下面我们来分析一下:在产生一个系统调用时会出现性能恶化的状况,因此系统调用跟函数调用相比,要浪费得多。这是因为Linux不得不从你正在运行的程序转到正在执行它的内核代码上,然后再倒转回去。所以最好的方法就是在一个程序中使用最少的系统调用来完成尽可能多的工作,比如,宁愿每次读取或者写入大量数据也... 阅读全文
posted @ 2008-04-05 18:18 taizi 阅读(228) 评论(0) 推荐(0)

摘要:我们可以通过使用一小部分函数来访问和控制文件以及设备,这些函数,就是我们所共知的系统调用(system call),它是直接由Unix和Linux所提供的,是用来访问操作系统本身的接口。操作系统的核心,也就是内核,其实就是一些设备驱动程序,它们是控制系统硬件的一堆低级接口。比如,有一个磁带设备的设备驱动,它所要达到的就是知道如何启动该磁带,向前卷还是向后卷,读操作还是写操作等等之类的。同时它还要知... 阅读全文
posted @ 2008-04-04 11:50 taizi 阅读(298) 评论(0) 推荐(0)

摘要:/dev/null,外号叫无底洞,你可以向它输出任何数据,它通吃,并且不会撑着!/dev/zero,是一个输入设备,你可你用它来初始化文件。/dev/null------它是空设备,也称为位桶(bit bucket)。任何写入它的输出都会被抛弃。如果不想让消息以标准输出显示或写入文件,那么可以将消息重定向到位桶。/dev/zero------该设备无穷尽地提供0,可以使用任何你需要的数目——设备提... 阅读全文
posted @ 2008-04-01 17:40 taizi 阅读(277) 评论(0) 推荐(0)

摘要:在UNIX和Linux环境中,文件显得特别的重要,因为在Linux环境下只为操作系统服务以及设备提供了一个简单一致的接口。所以在Linux下,everything is a file,至少大多数是这样。而这也就是说,一般情况下,程序所使用的磁盘文件、串行端口、打印机以及其他设备,这些都是通过同样的方法——使用一个相关的文件。当然,也有一些例外,比如网络连接。总之我们所需要的只是使用五个基本的函数:... 阅读全文
posted @ 2008-04-01 17:15 taizi 阅读(306) 评论(0) 推荐(0)

摘要:CD database application既然我们已经学习了shell程序语言的主要特性,现在就让我们用我们所学的东西来创建一个简单完整的程序CD database application。要求:首先,要存储CD的一些基本信息,比如:标签、音乐类型以及艺术家或作曲家。同时,还要储存一些简单的音轨信息。之后,我们的CD信息搜索是根据每一片CD的信息来搜索,而不是根据音轨的具体信息来搜索。最后,我... 阅读全文
posted @ 2008-03-27 15:00 taizi 阅读(1141) 评论(0) 推荐(0)

摘要:Going Graphical -- The dialog Utility在我们结束shell脚本讨论之前,有一个虽然不是shell的一部分但却有更多的特性,尤其对于shell编程来说使用也非常普遍,因此我们将在此对它做一番了解。如果我们知道我们的脚本将只在linux控制台运行,有一种简洁的方法可以用来改善我们的脚本特色,它就是dialog,一个实用程序命令。该命令虽然使用文本模式图形和颜色,但看... 阅读全文
posted @ 2008-03-17 21:21 taizi 阅读(621) 评论(0) 推荐(0)

摘要:Debugging Scripts调试shell脚本通常十分容易,除了没有特定的工具来帮助我们调试。在这一部分我们将快速地概括一下调式脚本的基本方法。当一个错误发生时,通常shell将打印出错误所在行的行号。如果错误不是可以直接就能找到的话,我们可以添加额外的echo程序语句以显示变量的内容,并且可以简单将代码片段输入到交互式的shell中进行测试。因为脚本运行通常是被解释运行的,因此修改和重试一... 阅读全文
posted @ 2008-03-16 21:21 taizi 阅读(322) 评论(0) 推荐(0)

摘要:Here Documents有一种特别的方式通过输入从而到达一个shell脚本的指令中,这种方式就是使用here document。它允许一个实际上输入是来自于脚本的命令去执行,就好像是从一个文件或者键盘所读取的那样。一个here document由前导字符<<开始,之后跟随一个在文档结尾不断重复的特殊字符序列。<<是shell下的重定向标签,在此情况下,它会强迫命令将输入给here docume... 阅读全文
posted @ 2008-03-16 19:56 taizi 阅读(329) 评论(0) 推荐(0)

摘要:Command Execution我们在写shell脚本时,总想要得到运行此脚本中的命令后的结果。也就是,我们想要命令运行之后能够将结果输出到一个变量中保存起来。而要达到此目的,我们可以用以前所提过的$(command)语法,当然还有与之相对应的旧的`command`模式,依旧是可以达到我们所要的效果。如果我们想要良好的可移植性,使用旧的`command`模式会是你最好的选择。相反,新的脚本写法中... 阅读全文
posted @ 2008-03-15 23:14 taizi 阅读(299) 评论(0) 推荐(0)

摘要:Grepgrep这个命令的全称为:general regular expression parser。在我们的系统中搜索文件,我们使用的命令是:find。而在文件中搜索字符串,我们所使用的命令就是:grep。当然,我们也可以将grep跟随在find命令后面的-exec选项里,这毕竟是再普通不过的了。grep命令的语法结构如下:grep [options] PATTERN [FILES]如果没有给出... 阅读全文
posted @ 2008-03-14 17:22 taizi 阅读(354) 评论(0) 推荐(0)

摘要:find我们通常使用find这个命令来搜索文件,它十分有效,不过对于刚用linux的新手而言,在使用上总是觉得有点棘手。一定程度上就是因为它所自带的选项、测试、参数动作类型以及一个参数的结果能够影响到之后的参数的处理。在我们研究选项、测试以及参数之前,让我们先来看一个简单的例子,在你本地的机器上搜索名叫test的文件。不过做之前请确保你当前为root用户状态,以避免权限的问题。Code highl... 阅读全文
posted @ 2008-03-13 12:00 taizi 阅读(348) 评论(0) 推荐(0)

摘要:下面为大家介绍几个Bash提示里面比较有用的几个小窍门,使用这些诀窍可以让我们避免一些繁琐的输入,从而节省大量的时间。清屏一般我们都使用clear命令来清屏,不过我们还可以通过快捷键(Ctrl+L)的方式来达到这种效果。逆向搜索有时候我们需要重新执行先前曾输入过的命令,我们可以通过快捷键(Ctrl+R),之后输入命令,Bash会帮我们自动匹配我们的命令。命令置换当我们在输入命令是,难免会发生命令字... 阅读全文
posted @ 2008-03-12 16:23 taizi 阅读(212) 评论(0) 推荐(0)

摘要:Commands(2)exportexport命令能够将变量命名为在子shell中的参数变量。默认状况下,在一个shell生成的变量是不能被此shell的子shell所调用的。而export命令可以通过它的参数生成一个环境变量,这个参数可以被在当前程序下所调用的其他脚本和程序所发现。更专业些来说,就是说来自于该shell的子进程中的环境变量都是由此shell所导出的变量构成。下面是连个脚本expo... 阅读全文
posted @ 2008-03-11 16:58 taizi 阅读(426) 评论(0) 推荐(0)

摘要:Commands(1)在shell脚本中,你可以运行两类命令:一种是命令提示符运行的普通命令,也叫外部命令;还有一种是内置命令,也叫内部命令。内置命令是在shell的内部实现,所以不能像外部命令那样被调用。不过,大多数内部命令都可以作为独立程序被提供,而这也是POSIX规范要求的一部分。通常,命令都无所谓外部的还是内部的,除非内部命令的运行效果更高效。在此,我们主要了解主要的几个命令,既有外部命令... 阅读全文
posted @ 2008-03-10 13:35 taizi 阅读(295) 评论(0) 推荐(0)

1 2 3 下一页