网络安全 频道

定制自己的Linux应用环境

上面这三个命令将会为RamDisk创建一个目录、格式化RamDisk(创建件系统),并把RamDisk装载到目录“/tmp/ramdisk0”中。现在,就可以把它作为一个磁盘分区使用了。

把下面这一行加到你的lilo.conf 文件中去:

ramdisk_size=20000


这样,当键入LILO命令并重新启动后,RamDisk的大小将为20MB。

如果你有512MB以上的内存,划出256MB作为暂存区/tmp,当很多程序用到/tmp,如Web服务,那么系统性能会大大提高。重新启动后,/tmp 中将被清空。注意:一定要记住保存RamDisk中有用的东西。

以上介绍了如何根据工作要求定制Linux系统应用环境,最后要强调的是一定要进行系统备份。

定制Linux启动方式


Linux系统有很多启动方法,有硬盘LILO启动、使用软盘启动、利用GRUB(GRand Unified Bootloader)启动、从其它操作系统直接启动等等,其中使用最多的是硬盘LILO启动。

现在大多数Linux发行版本的LILO都有同样的一个问题:根分区(/boot分区)不能分在超过1024柱面的地方,一般是在8.4GB左右的地方,否则LILO不能安装,或者安装后不能正确引导系统。我想这可能是Linux的一个遗憾之处。不过可以通过下载补丁LILO 21.4.3来解决这个问题。LILO 21.4.3采用了 EDD BIOS 延伸功能,破除 1024 柱面开机的限制,并且将支持的硬盘大小增进到 2TB。下载地址:http://www.ccidnet.com/soft/soft_down_addtimes.php3?id=14430&url=http://download1.ccidnet.com/20001130/lilo.tar.gz。

在安装Linux时,安装程序一般都会提示制作一张软盘启动盘,因为在系统需要紧急恢复的情况下这一张小小的软盘是非常有用的。Linux的启动软盘有boot盘和boot/root盘之分。boot盘只能用来启动已经安装在硬盘上的Linux系统,而boot/root盘本身就是一个小Linux系统。制作boot Linux的启动软盘比较简单:

#mkbootdisk --device /dev/fd0 2.xx.xx


上面代码“--device /dev/fd0”表示要建立启动软盘,也是默认选项,因此也可以省略它;接下来的参数是内核版本号,如2.2.26。

下面详细介绍一下制作boot/root盘。

首先制作一个DOS启动盘(format a:/s),将装载程序loadlin.exe和可引导内核vmlinuz拷贝到软盘上,然后建立自动批处理文件autoexec.bat,其内容如下:

loadlin vmlinuz root=/dev/hdax ro


在Linux安装光盘上都可以找到loadlin.exe和某个可引导内核vmlinuz,在DOS中就可以拷贝到A:,其中hdax为自己的根分区, ro表示 readonly。

GRUB(GRand Unified Bootloader) 是一个多重启动管理器,它可以在多个操作系统共存时选择引导哪个系统。它可以引导的操作系统包括Linux 、OpenBSD、GNU HURD,以及DOS、FreeBSD、Solaris、NetBSD、BeOSi、OS/2、Windows 95/98/Me、Windows NT/2000。GRUB和LILO相比,GRUB可以引导根分区在8.4GB以外的操作系统,不需要打补丁,可以直接从 FAT、minix、FFS、ext2 或 ReiserFS 分区读取 Linux 内核。这就意味着无论怎样它总能找到内核。

GRUB与LILO相比,它有以下特点:

◆ 支持大硬盘 只要安装时大硬盘是在LBA模式下,GRUB就可以引导根分区在8GB以外的操作系统。

◆ 支持开机画面 GRUB支持在引导开机的同时显示一个开机画面,可以制作自己的个性化开机画面,GRUB支持640x480、800×600各种模式的开机画面,而且可以自动侦测选择非常好的模式。

◆ 两种执行模式 GRUB不但可以通过配置文件进行例行的引导,还可以在选择引导前动态改变引导时的参数,还可以动态加载各种设备。例如在Linux下编译了一个新的核心,但不能确定它能不能工作,这时就可以在引导时动态改变GRUB的参数,尝试装载这个新的核心进行使用。GRUB的命令行有非常强大的功能,而且支持如bash一样的历史功能,可以用上下键来寻找以前的命令。

◆ 菜单式选择 GRUB使用选单来选择不同的系统进行引导;还可以配置各种参数,如延迟时间、默认操作系统等。

◆ 分区位置改变后不必重新配置  GRUB是通过文件系统直接把核心读取到内存,因此只要操作系统核心的路径没有改变,GRUB就可以引导系统。

GRUB还有许多非常强大的功能,例如支持多种外部设备、动态装载操作系统内核,甚至可以通过网络装载操作系统核心。GRUB支持多种文件系统,支持多种可执行文件格式,支持自动解压,可以引导不支持多重引导的操作系统等。

从Red Hat Linux 7.2起,GRUB取代LILO成为了默认的启动装载程序。

其它操作系统也可以启动Linux。Loadlin.exe可以在DOS环境下迅速启动Linux,而且无需重启计算机。启动方法是将Linux内核文件和装载程序loadlin.exe复制到DOS分区,再编写一个Linux.bat的批处理文件,其内容如下:

c:\loadlin c:\vmlinuz root=/dev/hda1 ro


上面代码中,ro表示readonly。以后在DOS下要启动Linux时,运行Linux.bat就可以了。这样启动Linux快速、高效,可以减少系统自检时等待的时间。

上面介绍了几种Linux的启动方法,读者可以根据自己的情况选择。对于Linux的初学者使用LILO启动还是比较安全的,当对Linux比较熟悉以后,GRUB(GRUB配置较复杂)是一个不错的选择。

定制Linux IPv6网络


目前广泛使用的IPv4有很大的局限性,比如:

◆ 地址空间的局限性 IP地址空间的危机由来已久,也是升级的主要原因。

◆ 性能 IPv4是20多年前设计的,目前已经不能满足使用要求,特别是在服务质量(QoS)等方面。

◆ 安全性 IPv4的安全性能明显已经落伍。我们从大量的安全报告中可以看出,它尽管采用了各种方法,但安全漏洞还是存在很多。IPv6中包含了一套用于保护IP通信的IP安全协议(IPSec),它对安全机制的增强可以简化安全虚拟专用网(VPN)的实现。

从以上几点可以看出,使用IPv6在地址空间、网络性能、安全性等方面有迫切要求。

Linux内核(Kernel)从 2.2.xxx开始支持IPv6 ,不过使用前要看系统IPv6模块是否被加载:

# test -f /proc/net/if_inet6 && echo "Running kernel is IPv6 ready"


如果没有加载可以手工加载:

# modprobe ipv6
# lsmod |grep -w ''ipv6'' && echo "IPv6 module successfully loaded"


如果你的内核不支持IPv6,也可以编译内核。不过根据我的经验,最好使用2.4.xx的核心。IPv6虽然支持2.2.xx的核心,但需要ICMPv6 支持的补丁。我建议初次使用IPv6的读者,使用Red Hat 7.1、Mandrake 8.0或SuSE 7.3。

使用“ifconfig -a”命令,如果可以看到一个 inet6 的 local link地址,就可以使用IPv6了,如图1所示。

按此在新窗口浏览图片


图1 第五行显示IPv6已经加载


当系统支持Ipv6后,还要安装以下软件包:net-tools,其中包括netstat、route、iptunnel;iproute 包括IP;iputils-ping,其中包括ping6;iputils-tracepath,其中包括traceroute6。

以上软件配置好了就可以使用IPv6。

下面举例说明在两台支持IPv6的Linux主机上建立隧道(tunnel)。

1.配置

主机1的配置为:192.168.0.1 (IPv4)。主机2的配置为:192.168.0.2(IPv4)。网络结构见图2所示。


按此在新窗口浏览图片

图2 进行测试的网络结构


(1)在HOST1上配置HOST2的IPv6兼容地址。

(2)IPv4兼容的IPv6地址格式:0:0:0:0:0:0:IPv4(如图3所示)。


图3 IPv4兼容的IPv6地址格式


#/sbin/ifconfig sit0 inet6 tunnel ::192.168.0.1

按此在新窗口浏览图片

(3)配置HOST1和HOST2 之间的隧道和两端主机的IPv6地址:

#/sbin/ifconfig sit1 up
#/sbin/ifconfig sit1 add fe80:250:fcff:fe56:75f5/10
#/sbin/route -A inet6 add fe80:250:fcff:fe56:75f5/10 sit1


(4)建立点对点(HOST 1 to HOST2)隧道(tunnel)和路由。

#/sbin/route -A inet6 add fe80::/16 gw fe80:250:fcff:fe56:75f5/10 sit1


至此配置结束。

2.测试

(1)检测是否建立IPv6 路由表:

#route -A inet6


上面代码表明,结果显示一切正常(如图4所示)。


按此在新窗口浏览图片

图4 已经检测到IPv6路由表


(2)使用ping6命令进行检测,检测结果成功如图5所示。


按此在新窗口浏览图片

图5 HOST1已经可以ping6通HOST2


现在对Linux下IPv6的研究还不是很多,更多的资料可以在http://www.bieringer.de/linux/IPv6/找到。 http://netadmin.77169.com/HTML/20040209041000.html

0
相关文章