Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2490752
  • 博文数量: 609
  • 博客积分: 10061
  • 博客等级: 上将
  • 技术积分: 5920
  • 用 户 组: 普通用户
  • 注册时间: 2008-06-25 08:30
文章分类

全部博文(609)

文章存档

2010年(13)

2009年(39)

2008年(558)

我的朋友

分类: LINUX

2008-08-25 12:59:06

8. 配置系统

8.a. 文件系统信息

在Linux系统下,系统所用到的所有分区都必须在/etc/fstab文件中指明。这个文件包含了这些分区的挂载点(在系统目录树中的位置)、挂载方法和特殊挂载选项(是否自动挂载,是否可以用户挂载等)。

/etc/fstab使用一种特殊语法格式。每行都包含六个字段。这些字段之间由空白键(空格键,tab键,或者两者混合使用)分隔。每个字段都有自己的含意:

  • 第一个字段是对分区的描述,也就是设备文件的路径
  • 第二个字段是分区挂载点,也就是分区应该挂载到的地方
  • 第三个字段给出分区所用的文件系统
  • 第四个字段给出的是挂载分区时mount命令所用的挂载选项。由于每个文件系统都有自己的挂载选项,我们建议你阅读mount手册(man mount)以获得所有挂载选项的列表。多个挂载选项之间是用逗号分隔的。
  • 第五个字段是给dump使用的,用以决定这个分区是否需要dump。一般情况下,你可以把该字段设为0(零)。
  • 第六个字段是给fsck使用的,用以决定系统非正常关机之后文件系统的检查顺序。根文件系统应该为1,而其它的应该为2(如果不需要文件系统自检的话可以设为0)。

重要: Gentoo系统默认的/etc/fstab文件不是有效的fstab文件。你必须创建自己的/etc/fstab

代码 1.1: 打开/etc/fstab

# nano -w /etc/fstab

让我们看看/boot分区的挂载选项是怎么写的。这仅仅是个例子,如果你没有或者不能创建/boot,请不要复制它。

在我们默认的x86分区例子中,/boot一般 为/dev/sda1分区,且采用ext2文件系统。 这个分区在引导过程中需要自检,因此我们这样写:

代码 1.2: /etc/fstab中/boot行的一个例子

/dev/sda1   /boot     ext2    defaults        1 2

为了提高系统的安全性,一部分用户不希望/boot分区自动挂载。这些用户应该用noauto替换defaults。这就表示用户每次使用该分区时,需要手动挂载。

增加符合你分区方案的规则,为你的光驱(当然,如果你有其他分区或者驱动器,也为它们加上)添加挂载规则。

现在就参考以下例子创建你的/etc/fstab

代码 1.3: /etc/fstab的一个完整例子

/dev/sda1   /boot        ext2    defaults,noatime     1 2
/dev/sda2 none swap sw 0 0
/dev/sda3 / ext3 noatime 0 1

/dev/cdrom /mnt/cdrom auto noauto,user 0 0

auto选项可以使mount猜测文件系统(推荐对于可移动设备采用这个选项,因为它们可能采用很多不同的文件系统),而user选项使得非root用户可以挂载光驱。

为了提高性能,大部分用户会添加noatime挂载选项。由于不记录该分区中文件的访问时间(一般来说你并不需要知道它),这个选项能够提高系统速度。

请再次确认你的/etc/fstab文件是正确的,保存并退出,继续下面的内容。

8.b. 网络信息

用户必须要做的事情之一就是命名自己的机器。尽管这看上去很容易,但是很多用户觉得为他们的Linux机器起一个合适的名字是很难的。为了加快事情的进度,你应该知道你所命名的所有名字都是可以在今后重新修改的。因此,你可以简单命名你的系统为tux,域名为homenetwork

代码 2.1: 设定主机名

# nano -w /etc/conf.d/hostname

(将HOSTNAME的变量值设定为主机名)
HOSTNAME="tux"

第二,如果你需要一个域名,在/etc/conf.d/net中设定。只有你的ISP或者网络管理员说你需要一个域名,或者你有一个DNS服务器但是没有DHCP服务器的时候,你才需要域名。如果你的网络是DHCP分配IP,那么你不需要理会DNS和域名的问题。

代码 2.2: 设定域名

# nano -w /etc/conf.d/net

(设定dns_domain的变量值为你的域名)
dns_domain_lo="homenetwork"

注意: 如果你选择不设定域名,你可以去掉登录界面上的这条信息“This is hostname.(none)”。你只需要修改/etc/issue,把字符串.\O从该文件里删掉即可。

如果你有一个NIS域(如果你不知道这是什么,就说明你没有),你也需要定义一个:

代码 2.3: 设定NIS域名

# nano -w /etc/conf.d/net

(设定nis_domain的变量值为你的NIS域名)
nis_domain_lo="my-nisdomain"

注意: 如果想知道更多关于DNS和NIS配置的信息,可以看/etc/conf.d/net.example当中的例子。当然,你也可以安装openresolv来帮助设置DNS、NIS。

在准备说“嘿,我们已经配置过网络”之前,你应该记得在开始安装Gentoo之初所设置的网络配置是仅仅为了安装而设置的。现在你所要设置的是Gentoo系统的永久网络配置。

注意: 更多关于网络配置的详细信息,包括网卡绑定、网桥、802.1Q VLANs和无线网络在内的高级配置会在这一部分介绍.

/etc/conf.d/net当中收集了所有的网络信息。尽管这个文件采用直接易懂的语法,如果你还是因为觉得不够直观而完全不知道如何手动进行网络配置的话,请不用担心,我们将一一解释。在/etc/conf.d/net.example中有一个详细注释过的例子,它涵盖了许多种类不同的配置。

系统默认使用DHCP。如果使用DHCP的话,你需要安装一个DHCP客户端。这个将在稍后的部分介绍。但是不要忘记安装一个DHCP客户端。

如果你需要配置你的网络连接,不管是因为你是需要指定DHCP选项还是你根本不想采用DHCP,请使用你喜欢的编辑器(在这个例子中用的是nano)打开/etc/conf.d/net

代码 2.4: 打开/etc/conf.d/net准备编辑

# nano -w /etc/conf.d/net

你会看到以下的文件:

代码 2.5: 默认的/etc/conf.d/net

# This blank configuration will automatically use DHCP for any net.*
# scripts in /etc/init.d. To create a more complete configuration,
# please review /etc/conf.d/net.example and save your configuration
# in /etc/conf.d/net (this file :]!).

为了输入你自己的IP地址,子网掩码和网关,你需要设置config_eth0routes_eth0

代码 2.6: 手动为eth0设置IP信息

config_eth0=( "192.168.0.2 netmask 255.255.255.0 brd 192.168.0.255" )
routes_eth0=( "default via 192.168.0.1" )

如果你使用DHCP并且想设定DHCP选项,请定义一下config_eth0dhcp_eth0:

代码 2.7: 让eth0自动获得IP地址

config_eth0=( "dhcp" )
dhcp_eth0="nodns nontp nonis"

请阅读/etc/conf.d/net.example以得到所有选项的列表。

如果你有多个网络接口,那么重复之前对于config_eth1config_eth2等的操作步骤。

现在可以保存配置并且退出,继续下面的安装和配置。

为了在启动时自动激活网络接口,你必须添加这些到default运行级别。

代码 2.8: 添加net.eth0到默认的运行级别

# rc-update add net.eth0 default

如果你有多个网络接口,你需要为他们创建合适的net.eth1net.eth2等启动脚本。你可以用ln来做这个。

代码 2.9: 创建额外的启动脚本

# cd /etc/init.d
# ln -s net.lo net.eth1
# rc-update add net.eth1 default

现在你需要告诉Linux有关你的网络的信息。这需要在/etc/hosts文件中定义,它将帮助你将那些无法被域名解析器解析的主机名解析成IP地址。你需要定义你自己的系统。如果你不想启用内部DNS系统的话,你也需要定义内部网络上的其它系统。

代码 2.10: 打开/etc/hosts

# nano -w /etc/hosts

代码 2.11: 填入网络信息

(这里定义的是现在的系统)
127.0.0.1 tux.homenetwork tux localhost

(定义你网络上的其它系统。如果你要用这种方式进行定义的话,它们必须有静
态IP。)

192.168.0.5 jenny.homenetwork jenny
192.168.0.6 benny.homenetwork benny

保存并且退出编辑器,继续下面的过程。

如果你没有PCMCIA,你可以跳过以下内容进入了。 PCMCIA用户应该读一下以下关于PCMCIA的内容。

PCMCIA用户首先应该安装pcmciautils软件包。

代码 2.12: 安装pcmciautils

# emerge pcmciautils

8.c. 系统信息

首先我们键入以设置root密码:

代码 3.1: 设置root密码

# passwd

Gentoo使用/etc/rc.conf来做通用的、系统级的配置。打开/etc/rc.conf并好好读读这个文件中的注解:)

代码 3.2: 打开/etc/rc.conf

# nano -w /etc/rc.conf

当你完成对/etc/rc.conf的配置后,保存并退出。

正如你所看到的,为了帮助你完成必要变量的配置,这个文件有丰富的注释信息。你可以让你的系统使用unicode并定义你的默认编辑器和你的显示管理器(比如gdm或者kdm)。

Gentoo用/etc/conf.d/keymaps来处理键盘设置。编辑它就可以设置你的键盘。

代码 3.3: 打开/etc/conf.d/keymaps

# nano -w /etc/conf.d/keymaps

KEYMAP这个变量要特别注意。如果你选择了错误的KEYMAP,在你敲击键盘的时候会有奇怪的结果。

完成/etc/conf.d/keymaps的配置之后,保存并退出。

Gentoo使用/etc/conf.d/clock来设置时钟选项。根据你的需要来编辑它。

代码 3.4: 打开/etc/conf.d/clock

# nano -w /etc/conf.d/clock

如果你机器上的钟不用UTC,你需要在文件钟加上CLOCK="local"。否则,你的时钟就有可能出现偏差。

完成对/etc/conf.d/clock的配置后,保存并且退出。

请继续阅读。

阅读(579) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~