迈思工作室 - 官方网站!

 找回密码
 马上加入

扫一扫,访问微社区

查看: 125626|回复: 1585

[已解决] 学完此教程 开始您的linux/unix之旅

  [复制链接]
发表于 2009-4-29 00:46:15 | 显示全部楼层 |阅读模式
游客,如果您要查看本帖隐藏内容请回复

评分

参与人数 1威望 +3 收起 理由
gs133790 + 3 技术性文章

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2009-4-29 00:46:28 | 显示全部楼层
55. 为计算机配置域名解析
如果想在你的LAN中配置域名解析服务(Domain Name Service,简称DNS),需要编辑好几个文件。首先你必须告诉系统使用什么样的DNS服务。还需要了解必须以什么样的顺序来使用这些服务,以及你想设置什么参数。初始化安装过程中的缺省设置对大多数人的使用要求一般来说就足够了。
通常并不需要修改/etc/host.conf文件中的内容。如果你需要修改这个缺省文件的话,请按照下面给出的步骤进行操作。
1) 以根用户身份登录进入系统。
2) 编辑/etc/host.conf文件。
3) 根据你的网络的具体情况设置有关选项。
4) 保存文件并退出。
如果有必要进行编辑,就必须在LAN中的每一个计算机上分别编辑其etc/ host.conf文件,即使你不打算在自己的局域网上运行一个D N S服务器计算机也需要这么做。只有在完全独立的机器上才不需要这么做。
当用户完成对/etc/host.conf文件的编辑修改之后(如果确实有必要这样做),还需要再配置DNS本身。请按照下面的方法进行操作:
1) 以根用户身份登录进入系统。
2) 编辑/etc/resolv.conf文件。
3) 根据用户的DNS具体情况设置有关的选项。
4) 保存文件并退出。
/etc/host.conf文件中的选项
选项 数据格式 用途
选项: alert
数据格式:On或者Off
用途:监监察是否有尝试进行IP地址欺诈的操作。如果该选项被设置为“on”,则任何类似的尝试都就被记录在各种系统日志文件中
选项: multi 数据格式:On或者Off
用途:监决定主机是否允许因为主机查询的目的而在/etc/hosts文件中有不止一个IP地址
选项: nospoof 数据格式:On或者Off
用途:监通过使用反向DNS域名解析方法匹配连接的主机名及其IP地址,防止IP地址欺诈。使用这个选项的负载将增加在你的域名服务器上
选项: order 数据格式:hosts,bind,nis
用途:监指定各种DNS域名解析服务的使用顺序。其中host选项告诉系统检查/etc/hosts文件; bind选项告诉系统去咨询某个DNS服务器;NIS选项指向网络信息服务(Network Information Service)来解析主机名。用户可以使用1、2或者全部3个选项。如果用户使用了不止一个选项,请使用一个空格字符分开它们.
选项: trim 数据格式:域名
用途:监告诉系统删除某个域名,并只查看/etc/hosts文件来解析IP地址。这样做对加速本地网络的域名解析很有用处,特别是在用户还遇到其他DNS问题的时候

resolv.conf文件中的选项
选项: domain 数据格式: 域名
用途: 告诉DNS域名解析用户LAN的域名是什么
选项: nameserver 数据格式: 域名
用途: 服务器的一个或者多个IP地址监告诉系统到什么地方把域名解析为IP地址。用户可以列出最多3个域名服务器的IP地址。如果其中的某个没有解析成功,解析器程序会转向下一个
选项: search 数据格式: 域名
用途: 一个或者多个域名监设置人们在LAN上经常使用的缺省域名。如果某个域名没有被包括一个查询中,解析器程序将尝试使用search选项列出的域名。没有必要把该LAN的域名放在search选项上.

56. 配置一个NFS文件服务器计算机
配置网络文件系统(Network File System,简称NFS)实现文件共享。它的基本功能就是允许用户可以跨操作系统挂装硬盘分区。
如果用户选择使用NFS,那么网络协议就必须使用TCP/IP。
1) 以根用户身份登录进入系统。
2) 编辑/etc/rc.d/init.d/inet文件。
3) 在那个长“if”语句部分的紧下面,加上如下所示的语句:
/sbin/portmap
4) 保存文件并退出。这样portmap命令将在开机引导启动的时候自动运行。
5) 输入“/sbin/portmap”命令立刻运行portmap命令。
6) 编辑/etc/exports文件。
用户必须对每一台允许挂装其分区的机器中的exports文件都进行修改。
7) 为准备允许外部系统共享的那些机器中的每一个文件系统建立一个数据项。举例来说,
如果想把地址blue.colors.org处的目录/home及其内容设置为允许colors.org中所有机器都能够以只读权限进行访问,用户应该加上如下所示的语句:
/home*.colors.org(r)
NFS挂装参数
参数 用途
secure\\*d 只接受来自小于1024号的因特网端口的导出请求。缺省值是on
insecure 接受来自任何因特网端口的导出请求
ro 不允许NFS用户对导出共享卷(硬盘分区)执行写操作
rw 允允许NFS用户对导出共享卷(硬盘分区)执行写操作。缺省值是on。使用这个参数的时候要谨慎,不要再让任何人都可以访问这个卷
noaccess 允阻止NFS客户看到或者访问当前位置以下的目录
link_relative 允把所有以斜杠字符( /)打头的符号链接转换为相对链接,方法是在它们的前面加上适当数量的斜杠字符和点作为引导(比如: . . / . . / . . /),使之指向正确的目录
link_absolute 允保持符号链接不变。缺省值是on
8) 保存文件并退出。
9) 编辑/etc/exportfs文件。
10) 输入如下所示的内容:
# ! /bin/sh
killall -HUP /usr/sbin/rpc.mountd
killall -HUP /usr/sbin/rpc.nfsd
11) 把这个文件的存取权限修改为555。
12) 输入“exportfs”命令。
每次修改过exportfs文件之后,用户都必须运行exportfs命令。
13) 把路径切换到目录/usr/sbin。
14) 输入“rpc.mountd”命令运行mountd守护进程。
15) 输入“rpc.nfsd”命令运行nfsd守护进程。

57. 配置一个NFS客户计算机
下面的方法自动挂装用户机器可以使用的NFS分区:
1) 以根用户身份登录进入系统。
2) 编辑/etc/fstab文件。
3) 在这个文件中,为用户想挂装的每一个分区加上一个数据项。比如说用户准备把地址yellow.colors.org处的计算机配置为开机自动挂装地址blue.colors.org处的/home分区。那么需要加上如下所示的一行内容:
blue:/home /mnt/blue nfs rsize = 1024 , wsize = 1024 , hard , intr 0 0
如果只是想临时性地挂装NFS文件系统,请使用格式“ mount host:/directory /mountpoint”。举例来说,要想把计算机purple.colors.org里的/home/bruce目录通过NFS服务挂装到同一个域名中的挂装点/mnt/bruce上的话,请输入“mount /purple:/home/bruce /mnt/bruce”命令。

58.Samba(SMB,即Session Message Block协议,任务消息块协议)
Samba是通用Internet文件系统(Common Internet File System,简称CIFS)的一个具体实现,而CIFS则是以微软公司Windows操作系统内所使用的文件和打印机访问协议为基础的。适用于其他类型操作系统的CIFS工具也已经开发出来,使不同网络之间能够更容易地共享数据。
如果有许多人需要通过网络服务访问文件,并且还极有可能会在同一时间对文件进行存取的话,请使用Samba服务代替NFS服务。因为NFS服务不锁定文件,所以多个用户可以在同一时间里访问同一个文件并试图对之进行修改,而最终的结果是只能够有一个用户的修改被保存下来。另一方面,CIFS客户程序和服务器程序却能够跟踪对文件的存取访问,在某个文件被打开的时候,对它进行“锁定”。这样在这个文件存盘并退出操作之前,其他人是不能再打开它的。
另外一个选择Samba代替NFS的基本理由是:采用微软公司的Windows作为操作系统的计算机不支持NFS,因此用户无法通过NFS服务跨Linux/Windows网络访问数据。
Samba的组成部分
整个Samba包括两个服务器组件(守护进程)、两个客户程序和一个管理工具程序。这些不同的组件在Samba套装软件中各有其特定的作用。
A. 硬盘驱动器和打印机共享
服务器组件smbd负责硬盘驱动器和打印机的共享。对smbd服务器程序进行访问的客户端组件是smbclient程序。
B. 域名解析和浏览
服务器组件nmbd将激活NetBIOS信息的管理和传递。它还可以跨整个网络提供一系列文件和打印服务。这些服务能够被网络中的其他机器浏览。用来访问nmbd服务器程序的客户程序是nmblookup。
注意如果用户选择安装的是服务器级别的Linux操作系统,那么smbd和nmbd服务器程序就将已经安装并运行在用户的系统中了。而且,在系统的开机引导文件中,它也已经被配置为直接运行。
查看Samba守护进程是否正在运行
以根用户身份登录进入系统并输入命令组合“ps -aux | grep *bd”。如果在进程清单中看到smbd和nmbd,说明这两个进程正常运行着。
具体安装及配置详细见网络相关专题教程。

59. Linux软件常用发行方式:源代码(source),二进制代码(binaries), RPM包, DEB包等
tar档案文件 .tar扩展名 使用tar命令压缩 .tgz或者.tar.gz后缀的文件往往把tar命令和gzip命令结合起来压缩
GZip压缩 .gz或者 .z 扩展名
Z压缩 .Z扩展名 使用compress文件压缩程序
zip 压缩 .zip 采用zip程序压缩过的文件

A. RPM常见用法:
1).安装一个RPM软件包
. rpm -i—用来安装一个新的软件包。
. rpm -U—用来升级一个新的软件包,如果它不存在就进行安装。
. rpm -F—用来升级一个新软件包,即使它不存在也不进行安装。
. -v—用来查看安装过程的各种信息。
. -h—用来在安装过程中显示进度条。
一个常用的组合形式如下所示:
rpm -Uvh package-name.rpm
这个命令升级或者安装新的软件包,同时显示安装信息和进度条。你可以用参数i或者F换掉参数U。
2). 删除一个R P M软件包 rpm -e package-name
3). “rpm -qa”命令列出用户已经安装的R P M包清单
如果用户想查看是否已经安装了某个软件包,请输入“rpm -q package-name”命令。
4) 查看一个R P M软件包中都有哪些文件
. 如果还没有安装这个软件包,使用命令: rpm -qlp package-name.rpm
. 如果已经安装了这个软件包,使用命令: rpm -ql package-name
5). 确定某个文件在哪个RPM软件包里 “rpm -qf file-with-full-path”。
举例来说,如果用户想看看目录/etc/rc.d/init.d /中的httpd属于哪个软件包,输入“rpm-qf /etc/rc.d/init.d/httpd”命令。
6). 确定某个RPM软件包的用途 “rpm -qip package-name.rpm”
B. 使用tar档案文件
1). 列出一个t a r档案文件的内容清单 tar -tf filename.tar 或者 tar -tvf filename.tar
2). 对文件进行解tar归档操作 tar -xvf filename.tar
参数x表示解包,参数v表示显示信息,参数f告诉tar命令后面跟着一个文件名
3). 从tar 档案文件中只解包README文件 tar xf achive.tar dir/README > README
举例来说,有一个名为program.tar的档案文件,并且在它的目录结构中看到列出了home/bruce/Read.me的内容,那么就应该输入命令:tar xf program.tar home/bruce/Read.me > README
注意在进行上面的操作时也可以不使用重定向,但是这样就会按照档案文件中包含的目录结构建立这个文件。因此,如果上面的例子中在命令的结尾处没有使用重定向的话,这个Read.me文件就会被解包到home/bruce目录中。
4) 建立一个tar档案文件
找到你想对它们进行归档操作的目录或文件,决定是否允许档案文件被恢复到一个相对路径或者决对路径,把路径切换到你想对之进行归档操作的目录或者文件的上一级父目录中。比如说,如果想对/var/spool/mail目录进行归档操作,就切换到/var/spool目录中。输入“tar cvf archiev.tar directory”命令,建立档案文件,命令中的archive.tar是新档案文件的名字,directory是对之进行归档操作的目录的名称。还是用上面的例子,如果打算把/var/spool/mail目录归档到mail-arc hive.tar文件中去,需要从/var/spool目录中输入“ tar cvf mail-archive.tar mail”命令。
5). 向现有tar档案文件中添加文件 tar rf mail-archive.tar mail-to-add

C. 使用GZip压缩
"gzip file"命令生成file.gz文件,“gunzip file”命令,解压缩Gzip压缩的文件
.tar档案还可以用gzip压缩得到.tar.gz

60. Linux目录结构
/ 文件系统的根目录
/bin 正确完成命令功能所必须的二进制代码
/boot 开机引导加载程序(LILO)需要的文件
/dev 用来告诉Linux操作系统如何对硬件设备进行各种操作的设备文件
/etc 用于某个特定机器的配置文件
/home 用户目录开始的位置
/lib 根文件系统中各种程序共享的函数库
/mnt 挂装临时文件系统的位置,通常它自身会明确构成一个目录结构。
/opt 某些套装软件二进制程序安装的位置
/root 根用户的用户目录
/sbin 正确完成系统功能所必须的二进制代码
/tmp 用户们和各种程序使用的临时文件
/usr 供大多数或全部用户使用的公共应用程序,文件系统的这个部分通常保存在作为服务器的某个特定的计算机上,然后由LAN中的所有机器进行挂装,这样做可以保证只有一个中央/usr管理入口
/var 程序日志之类的可变化数据

61. 编译安装源代码
阅读源代码中的README文件或者INSTALL文件。一般步骤:
1) make config—检查系统设置并建立专用的配置文件,这个专用配置文件将用来建立安装用的程序。
2) make clean—把以前不成功的编译过程中留下的任何文件都删除。
3) make—针对缺省的目标开始制作,在这一步实际完成对程序的编译操作。
4) make install—把程序的各个组成部分放到适当的位置,给它们分配各自的所有者权限和存取权限。
make all >out 可以把制作编译过程中全部的输出信息都放到这个名为out的文件中去,以记录并方便查阅编译问题。

62. 安装二进制代码
1) 如果它是经过压缩或归档操作的,先把它解压缩到一个临时目录中。
2) 仔细阅读随软件包而来的任何README或者INSTALL文档。查看一下制作文件也不会有什么问题。如果你愿意,就可以在其中进行一些诸如改变安装缺省路径之类的修改。
3) 输入“make install”命令。

63. 把软件包添加到用户的PATH语句中
如果使用的是bash或者korn shell,就可以使用下面的方法把一个新的目录添加到PATH语句中:
1) 登录进入你想改变其PATH语句的帐户。
注意如果想一次性为全部用户改变PATH路径,请以根用户身份编辑/etc/profile文件。
2) 输入“PATH = $PATH: additional-path”命令,把一个新路径添加到这个帐户当前的path语句中。
举例来说,如果你想把“/usr/local/bin”添加到path语句中,应当输入“PATH=$PATH:/usr/local/bin”命令。
注意要想查看完整的path语句,请输入“echo $PATH”命令。

64. 建立系统备份:
A. 进行一次完全备份
1) 在文件系统中选择希望进行备份的部分。
2) 确定这些选定的部分什么时候使用得比较少。这样做是为了在备份进行的时候,力求文件不会发生太大的变化。
3) 在文件系统中挂装备份介质, 输入"mke2fs /dev/driver”命令格式化备份目的磁盘(软盘,闪存盘或者移动硬盘)
4) 使用tar软件包把有关的文件打包. tar cfzM /dev/driver /
5) 如果存储空间是一个值得考虑的因素,可以使用gzip命令压缩第4步生成的文件。
给打包好的档案文件取一个有意义的名称,尽量包括那些一看就能明白其意思的信息:比如版本号、城市名称或者其他可以帮助回忆的关键词(术语)。
6) 如果没有直接把档案文件打包存放到备份介质上的话,现在把它拷贝上去。
7) 给备份介质贴上标签,标签中应包括诸如档案文件建立日期以及档案文件内容等信息。
8) 把备份介质保存到一个安全并容易找到的位置。
B. 向一个现有的tar备份文件中添加文件
tar rfz /dev/device /item_to_add
C. 从磁带或软盘中恢复完全备份
1) 对那些在准备恢复的档案文件建立之后又经过修改的文件进行备份。
2) 把第一个磁带或软盘放入驱动器。
3) 输入下面的命令把系统恢复到进行完全备份时的状态:
tar xfsM /dev/driver
4) 从刚才第1步建立的备份中恢复新修改过的文件。
D. 如果想让备份工作能够自动地执行,可以编写一个运行必要程序的命令脚本,然后把这个命令脚本添加到定期的cron工作中去。
65. 管理系统
使用last命令列出成功登录的记录清单。如果想列出比缺省数目更多的记录,使用格式“last -n number”告诉last命令需要显示多少登录记录.以根用户身份执行“touch /sar/log/wtmp”命令来建立日志记录文件
lastb命令列出不成功登录的记录清单,也有last的-n参数. 以根用户身份执行"touch /var/log/btmp"命令来建立日志记录文件
(转自linux-cn)
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-29 00:47:19 | 显示全部楼层
介绍 bash

shell

如果您使用过 Linux 系统,那么您知道当登录时,将会看到像这样的提示符:

$

您所看到的特殊的提示符可能看起来很不一样。它可能包含系统的主机名、当前的工作目录名,或者两者都有。但是不管这个特殊的提示符看起来像什么,有一件事是肯定的。打印出这个提示符的程序叫“shell”,极有可能您的特殊的 shell 是一个叫bash的程序。

您在运行 bash 吗?

您可以通过输入下面的命令来检查您是否正在运行bash:

$ echo $SHELL

/bin/bash

如果上面的命令行报错或者不会类似地响应我们的示例,那么您可能正在运行一个不同于bash的 shell。

关于 bash

Bash 是“Bourne-again shell”的首字母缩写,它是大多数 Linux 系统缺省的 shell。shell 的任务是执行您的命令,使您能够与 Linux 系统进行交互。当您输完命令,您可以通知 shell 执行exit或logout命令,在此您将返回到登录提示符。

顺便提一下,您还可以通过在bash提示符下按 control-D 来注销。

使用“cd”

您可能已经发现,目不转睛地盯着bash提示符可不是世界上最让人感到有劲的事。那么,让我们来开始用bash来浏览我们的文件系统。在提示符下,输入下面的命令(不包括$):

$ cd /

我们只告诉bash您想在/(也称为根目录)中工作;系统上的所有目录形成一棵树,/被认为是这棵树的顶部,或者是根。cd设置当前您正在工作的目录,也称为“当前工作目录”。

路径

要看 bash 的当前工作目录,您可以输入:

$ pwd

/

在上面的示例中,cd的/参数叫做路径。它告诉cd我们要转到什么地方。特别是,/参数是一个绝对路径,意味着它指定了相对于文件系统树的根的位置。

绝对路径这里有几个其它的绝对路径:/dev


/usr


/usr/bin


/usr/local/bin


您可以看到,所有绝对路径有一个共同点就是,它们都以/开头。通过路径

/usr/local/bin,我们告诉cd进入/目录,接着进入这个目录之下的

usr目录,然后再进入local和bin。绝对路径总是通过是否以/开头

来判断。

相对路径



另一种路径叫相对路径。在 Bash 中,cd以及其它命令总是解释那些相对于

当前目录的路径。相对路径绝不会以/开头。这样,如果我们在/usr中:

$ cd /usr

那么,我们可以使用相对路径来转到/usr/local/bin目录:

$ cd local/bin


$ pwd


/usr/local/bin

使用“..”

相对路径还可以包含一个或多个..目录。..目录是指向父目录的专门目录。

那么,继续前面的示例:

$ pwd


/usr/local/bin


$ cd ..


$ pwd


/usr/local

您可以看到,现在我们的当前目录是/usr/local。我们能够“后退”到相对

于我们所在的当前目录的一个目录

此外,我们还可以将 \\\\\\"..\\\\\\"添加到一个现有的相对路径中,使我们可以进入与

我们已在目录并排的目录,例如:

$ pwd


/usr/local


$ cd ../share


$ pwd


/usr/share

相对路径示例

相对路径可以变得相当复杂。这里有几个示例,所有的都没有显示出结果的目标

路径。请试着推断一下,输入这些命令后,您最终将会转到什么地方:

$ cd /bin


$ cd ../usr/share/zoneinfo

$ cd /usr/X11R6/bin


$ cd ../lib/X11

$ cd /usr/bin


$ cd ../bin/../bin

现在,试验一次,看看您的推断是否正确。

理解“.”

在我们结束cd的介绍之前,我们还需要讨论一些更多的内容。首先,

还有另一个叫.的专门的目录。它表示“当前目录”。然而该目录

不为cd命令使用,它通常用来执行一些当前目录中的程序,如下所示:

$ ./myprog

在上面的示例中,驻留在当前工作目录中的myprog可执行文件将被执行。

cd 和主目录

如果我们想要转到主目录,我们可以输入:

$ cd

没有参数,cd 将转到主目录,对于超级用户来说是/root,对于一般用户来说

通常是/home/username。但是,如果我们想要指定一个主目录中的文件,将

会怎样呢?可能我们想要将一个文件参数传给 myprog 命令。如果该文件在主目

录中,我们可以输入:

$ ./myprog /home/drobbins/myfile.txt

但是,使用像这样的绝对路径并不总是很方便。幸好,我们可以使用~(代字符)

字符来完成同样的事:

$ ./myprog ~/myfile.txt




其他用户的主目录

Bash 将把单独的~扩展为指向主目录,然而您还可以用它来指向其他用户的主目录。例如,如果我们想要引用 fred 的主目录中的名为 fredsfile.txt 的文件,可以输入:




$ ./myprog ~fred/fredsfile.txt
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-29 00:47:29 | 显示全部楼层
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-29 00:49:53 | 显示全部楼层
回复 支持 反对

使用道具 举报

发表于 2009-4-29 03:37:11 | 显示全部楼层
  
回复 支持 反对

使用道具 举报

发表于 2009-4-29 06:38:29 | 显示全部楼层
俺是来学习的》》》》》》》》
回复 支持 反对

使用道具 举报

发表于 2009-4-29 09:03:17 | 显示全部楼层
是吗得学学
回复 支持 反对

使用道具 举报

发表于 2009-4-29 11:14:08 | 显示全部楼层
  
回复 支持 反对

使用道具 举报

发表于 2009-4-29 12:35:52 | 显示全部楼层
  
回复 支持 反对

使用道具 举报

发表于 2009-4-29 13:44:53 | 显示全部楼层
回复 支持 反对

使用道具 举报

发表于 2009-4-29 14:30:46 | 显示全部楼层
好东西,刚好可以学习
回复 支持 反对

使用道具 举报

发表于 2009-4-29 18:11:55 | 显示全部楼层
ddddddddddddddddddddddddddd
回复 支持 反对

使用道具 举报

发表于 2009-4-30 10:06:46 | 显示全部楼层
还隐藏!够阴!也学习下!
回复 支持 反对

使用道具 举报

发表于 2009-4-30 17:05:07 | 显示全部楼层
顶了再看 好的再顶!
回复 支持 反对

使用道具 举报

发表于 2009-4-30 21:59:59 | 显示全部楼层
高手们多指教
回复 支持 反对

使用道具 举报

发表于 2009-5-1 00:24:16 | 显示全部楼层
opem
回复 支持 反对

使用道具 举报

发表于 2009-5-1 09:39:51 | 显示全部楼层
学习下,谢谢分享
回复 支持 反对

使用道具 举报

发表于 2009-5-1 11:28:53 | 显示全部楼层
下面那个怎么下不了?
回复 支持 反对

使用道具 举报

发表于 2009-5-1 13:36:50 | 显示全部楼层
看看啦,,学习一下
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 马上加入

本版积分规则

QQ|小黑屋|手机版|迈思工作室 ( 闽ICP备05021721号 )

GMT+8, 2018-5-27 23:37

Array

快速回复 返回顶部 返回列表