FreeBSD网站平台建设全过程 第一步

王朝学院·作者佚名  2011-12-23
窄屏简体版  字體:   |    |    |  超大  

第一步:安装系统

本文将对FreeBSD安装过程提供详细的图解,在安装之前,先提出几点建议供大家参考:

1、采用最小化安装。

2、安装时启用inetd,并在编辑inetd.conf文件时,把带有“ftp”的行前面的“#”号去掉。这样作是为了以后安装软件时可以用ftp上传文件。

3、添加一个wheel组的用户,这样在系统工作正常后可以在windows系统上通过终端登录软件(如SecureCRT)进行所有操作。

FreeBSD4.7在最小安装时支持SSH终端登录,所以我们需要使用支持SSH协议的终端软件,如SecureCRT。

例如:我添加的用户名是ylf,隶属wheel系统组。

系统产生一个用户目录/home/ylf。

我可以通过SecureCRT以ylf身份登录到系统,然后通过su命令切换到root用户。

同时我也可以在IE浏览器内键入ftp://192.168.0.1,并输入ylf用户名和密码登录ftp将需要的文件上传到自己的用户目录里。

(注:192.168.0.1是我的服务器连接内网的网卡ip地址)。

以下除系统安装部分,我都是采用终端方式操作。

4、分区时将/home、/usr和/var划的大一些,因为/usr为程序目录,/var要存放日志,/home是用户主目录,我的用户文件如网页、ftp上传文件等都放在这里。还有最好保留一部分空间留作以后需要的时候用。我的机器上有2块硬盘,一快18.2G SCSI硬盘,一块40G IDE硬盘。我是这样划分的。

128M

/

20G

/home

2G

/ftp

256M

/tmp

6G

/usr

5G

/var

其中/ftp是为匿名ftp用户访问专用。剩余空间留作备用。当然如果硬盘空间少的话,做我们的试验也是够用的。

关于安装方面的文章,大家也可以参考delphij写的《FreeBSD服务器的安装与优化》一文。

本系统安装过程图解是专为初学者提供的。整个系统的定制过程都是针对连载文章的系统要求作的。

我们采用光盘启动安装FreeBSD的方式,并且硬盘上只有FreeBSD一个系统。

首先修改CMOS使系统能够通过光盘引导。

插入FreeBSD的第一张盘。正常引导后进入定制内核界面,如图一:

图一

选Skip kernel configuration and continue with installation跳过内核定制,我们在整个系统安装结束后会重新定制内核。

接着进入系统安装主界面,图二:

图二

选择Standard开始标准安装。

接着出现提示告诉你下一步将要进行Fdisk操作,按回车继续(图略)。

进入Fdisk Partition Editor界面,图三:

图三

为了保证与FreeBSD共存的系统能够启动,默认情况下FreeBSD会保留一部分磁盘空间(64 cyl)。我们装的是单系统,这部分空间没有用,按“Shift+F”将所有空间都给FreeBSD,图四:

图四

这里选择No。

接着按“Q”完成。然后提示需要划分FreeBSD文件系统。回车继续。

进入Disklable Editor界面,按A先让系统自动划分,图五:

图五

然后移动光标到/var和/usr,按D将这两个分区先删除。把光标移到最上面,按C分别创建/var,/usr,/home,/ftp分区。如图六:

图六

其中/ftp分区专为匿名Ftp使用。/var用于存放日志,/usr存放程序,/home存放用户数据。

我这里是4G的硬盘,如果硬盘空间大,应该适当加大这4个分区的容量。

按“Q”继续。

出现Choose distributions(选择安装组件)界面,如图七:

图七

这里选Minimal最小化安装。选择OK继续。

出现Choose Installation Media选择安装媒体界面,图八:

图八

这里选择 1 CD/DVD,通过光盘安装。OK继续。

出现确认界面,这是最后一次后悔的机会!选YES开始安装,图略。

经过一段时间后,出现安装成功提示。OK继续,图略。

出现是否配置网络设备提示。选YES,图九:

图九

接下来会列出你的网络设备,选择第一块网卡,回车,会问你是否启用IPv6协议,选NO继续。问你是否使用DHCP,选NO继续。

出现网卡配置界面,图十:

图十

这里只要添入主机名和IP地址就可以,其他的在后续安装中会配置。

接着问你是否现在启用这块网卡接口,选YES。然后问你是否使用本系统作为网关,选YES。

出现是否配制inetd(Internet超级服务器)界面。选YES,图十一:

图十一

提示是否启用inetd,选YES。图略

提示是否编辑inetd的配置文件,inetd.conf,选YES。图略

接着出现文件编辑界面,图十二:

图十二

移动光标到带有ftp的行,将前面的#删掉,只删除头两行的即可。按ESC退出并保存。

接着问你是否启用匿名ftp访问,选YES,后面的提示也选YES继续,图略。

图十三

图十三对匿名用户的组和用户目录进行了设置,不用改动,直接选OK继续。

接着问你是否建立一个ftp登陆时的欢迎信息。选NO不建立继续。

接下来的几个提示:

是否使本机运行NFS服务器,选NO。图略

是否使本机运行NFS客户,选NO。图略

是否配制默认安全策略,选NO。图略

列出当前对inetd做过的设置,OK继续。图略

是否定制系统控制台,选NO。图略

设置系统时区,依次选NO——Asia——China——East China——YES

图十四

图十四询问是否启用linux二进制兼容支持,这将使FreeBSD可以运行所有Linux程序。选YES。

接着提示是否配制非USB鼠标,选NO继续。图略

接着问是否浏览Package collection,选NO继续,图略

问是否添加系统用户和组,选YES,图略

图十五

图十五选择USER Add a new user to the system,添加一个新用户。OK 继续。

图十六

这里添加一个wheel组的用户ylf,用于终端登录时可以用这个用户切换到root。

OK后回到前一个界面,选EXIT退出。图略

这时提示要求输入root用户密码。需要输入2次。图略

然后问你是否想回到主界面对配置做改动,选NO——Exit Install退出安装,图略。

最后提示是否退出重新启动,选YES,记得要拿出光盘。图十七。

图十七

为了让系统可以重新编译内核和使用ports安装应用程序。我们重新运行系统配置程序安装内核编译支持和ports。

以root用户登录后,运行:

# /stand/sysinstall

出现系统配置主界面,图十八:

图十八

选择Configure后回车继续。出现FreeBSD Configuration菜单,图十九:

图十九

选择Distributions后 OK继续。出现组件安装选择界面,图二十:

图二十

选择src——sys和ports,OK后出现选择安装媒体界面,选通过光盘安装,图略

这样就把内核编译支持和ports安装到系统。

安装完成后,选Exit——Exit Install退出。

安装完系统后,要重新编译内核。目的是要系统支持Firrwall和提高运行效率。

注意:这之后的过程在终端上操作要方便许多。SecureCRT支持在终端界面上直接拷贝和粘贴文本内容。

转到内核文件目录:

# cd /usr/src/sys/i386/conf

编辑内核文件:

# vi kernel_wwwx # kernel_wwwx为我的内核文件名

我的内核文件如下:

#

# GENERIC -- Generic kernel configuration file for FreeBSD/i386

#

# For more information on this file, please read the handbook section on

# Kernel Configuration Files:

#

# http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html

#

# The handbook is also available locally in /usr/share/doc/handbook

# if you've installed the doc distribution, otherwise always see the

# FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the

# latest information.

#

# An exhaustive list of options and more detailed explanations of the

# device lines is also PResent in the ./LINT configuration file. If you are

# in doubt as to the purpose or necessity of a line, check first in LINT.

#

# $FreeBSD: src/sys/i386/conf/GENERIC,v 1.246.2.48 2002/08/31 20:28:26 obrien Exp $

machine i386

cpu I586_CPU

cpu I686_CPU

ident kernel_wwwx #内核文件名,这个要和你的内核文件名一致

maxusers 0

options INET #InterNETworking

options FFS #Berkeley Fast Filesystem

options FFS_ROOT #FFS usable as root device [keep this!]

options SOFTUPDATES #Enable FFS soft updates support

options UFS_DIRHASH #Improve performance on big directories

options PROCFS #Process filesystem

options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!]

options SCSI_DELAY=15000 #Delay (in ms) before probing SCSI

options SYSVSHM #SYSV-style shared memory

options SYSVMSG #SYSV-style message queues

options SYSVSEM #SYSV-style semaphores

options P1003_1B #Posix P1003_1B real-time extensions

options _KPOSIX_PRIORITY_SCHEDULING

options ICMP_BANDLIM #Rate limit bad replies

options AHC_REG_PRETTY_PRINT # Print register bitfields in debug

# output. Adds ~128k to driver.

options AHD_REG_PRETTY_PRINT # Print register bitfields in debug

# output. Adds ~215k to driver.

device tun 1

options IPFIREWALL #防火墙

options IPFIREWALL_FORWARD #允许透明代理

options IPFIREWALL_VERBOSE #允许防火墙日志

options IPFIREWALL_VERBOSE_LIMIT=100 #限制日志

options IPFIREWALL_DEFAULT_TO_ACCEPT #默认允许所有IP包

options IPDIVERT #启用由ipfw divert使用的转向IP套接字

# To make an SMP kernel, the next two are needed

# options SMP # Symmetric MultiProcessor Kernel

# options APIC_IO # Symmetric (APIC) I/O

device isa

device eisa

device pci

# ATA and ATAPI devices

device ata

device atadisk # ATA disk drives

# SCSI Controllers #没有SCSI设备不需要这段

device ahb # EISA AHA1742 family

device ahc # AHA2940 and onboard AIC7xxx devices

device ahd # AHA39320/29320 and onboard AIC79xx devices

device amd # AMD 53C974 (Tekram DC-390(T))

device isp # Qlogic family

device mpt # LSI-Logic MPT/Fusion

device ncr # NCR/Symbios Logic

device sym # NCR/Symbios Logic (newer chipsets)

options SYM_SETUP_LP_PROBE_MAP=0x40

# Allow ncr to attach legacy NCR devices when

# both sym and ncr are configured

device adv0 at isa?

device adw

device bt0 at isa?

device aha0 at isa?

device aic0 at isa?

device ncv # NCR 53C500

device nsp # Workbit Ninja SCSI-3

device stg # TMC 18C30/18C50

# SCSI peripherals #没有SCSI设备不需要这段

device scbus # SCSI bus (required)

device da # Direct access (disks)

device sa # Sequential Access (tape etc)

device cd # CD

device pass # Passthrough device (direct SCSI access)

# atkbdc0 controls both the keyboard and the PS/2 mouse

device atkbdc0 at isa? port IO_KBD

device atkbd0 at atkbdc? irq 1 flags 0x1

device vga0 at isa?

# syscons is the default console driver, resembling an SCO console

device sc0 at isa? flags 0x100

# Floating point support - do not disable.

device npx0 at nexus? port IO_NPX irq 13

# Serial (COM) ports

device sio0 at isa? port IO_COM1 flags 0x10 irq 4

# 我用的是8139和Dlink DFE-530TX网卡,大家可根据自己的网卡型号保留或删除

# 使用公共的MII总线控制器代码的PCI以太网适配器

# 注意:一定要保留'device miibus'以确保可用

# PCI Ethernet NICs that use the common MII bus controller code.

# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!

device miibus # MII bus support

device fxp # Intel EtherExpress PRO/100B (82557, 82558)

device rl # RealTek 8129/8139

device vr # VIA Rhine, Rhine II

device xl # 3Com 3c90x (``Boomerang'', ``Cyclone'')

# Pseudo devices - the number indicates how many units to allocate.

pseudo-device loop # Network loopback

pseudo-device ether # Ethernet support

pseudo-device sl 1 # Kernel SLIP

pseudo-device ppp 1 # Kernel PPP

pseudo-device tun # Packet tunnel.

pseudo-device pty # Pseudo-ttys (telnet etc)

pseudo-device md # Memory "disks"

pseudo-device gif # IPv6 and IPv4 tunneling

pseudo-device faith 1 # IPv6-to-IPv4 relaying (translation)

# The `bpf' pseudo-device enables the Berkeley Packet Filter.

# Be aware of the administrative consequences of enabling this!

pseudo-device bpf #Berkeley packet filter

我用的是8139网卡和Dlink DFE-530TX网卡,如果你用其他型号的网卡,需要察看当前目录的GENERIC 内核文件,找到描述自己的网卡型号的段并将其添加到新的内核文件里。其他的不改直接拷贝过来就可以用了。

接下来编译安装新内核:

# /usr/sbin/config kernel_wwwx #kernel_wwwx为你的内核文件名

# cd ../../compile/kernel_wwwx

# make depend

# make

# make install

重新启动(reboot)

如果系统升级过源代码树,按下面方法编译内核:

# cd /usr/src

# make kernel KERNCONF=kernel_wwwx #kernel_wwwx为你的内核文件名

重新启动。

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航