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

  •   2009-07-28/15:34
  • 第一步:安装系统

    本文将对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一个系统。

    首先修改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为你的内核文件名

    重新启动。


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多