分类: BSD
2011-02-17 01:21:03
Sysinstall 添加软件
修改时区
Sysinstall configure time zone
Ntpdate 210.72.145.44 国家授时中心IP (校准时间)
Ee .chsrc 修改 alias ls ls –Gl(G:彩色显示,l:长格式显示)
修改 setenv EDITOR ee
增加 setenv PACKAGEROOT
Set prompt = “%B%n@%m[%/]# ”
#Pkg_add –r cvsup-without-gui 安装更新包
#rehash
最小化安装需安装源码
Sysinstall distributions src base sys(选项) [光盘安装]
如果不存在 /usr/src/ 下面的文件,那么就证明没有安装内核源码,就需要安装
到 /usr/share/examples/cvsup 这个目录修改 stable-supfile 主要是修改下面几行:
#cvsup –L 2 –h /usr/share/examples/cvsup/standard-supfile (下载最新的系统源码)
#Cd /usr/src/sys/i386/conf
#make buildworld
1,#cd /usr/src/sys/i386/conf
#cp GENERIC NEWKEL //拷贝一个副本,一种好的习惯吧,不在原来的文件上修改
2,编辑NEWKEL,
#ee NEWKEL
#machine i386
//7.0中已经没有这行,现在的计算机很NB,谁还用386地啊,开个玩笑!
#cpu I486_CPU
#cpu I586_CPU
cpu I686_CPU
//CPU类型,可以用dmesg查看,在靠前的位置
ident MYKERNEL
//核心名称,自己随便起
注意:象machine 与cpu 这两个设置。如果你的内核名称包含数字,请记得用双引号把它括起来。内核名将会使用-D 参数传给编译器,所以不要用像DEBUG或是其它可能干扰编译器的机器、CPU 名称,如vax ,别那么另类嘛!。
#maxusers n
//简单的讲,他决定着系统进程表能够容纳多少个进程,在做服务器时,这个值一定要大,7.0中已经没有这行,可能是系统自动完成这项功能吧~,我们不用理会
# To statically compile in device wiring instead of /boot/device.hints
#hints "GENERIC.hints" # Default places to look for devices.
//默认该行被注释上了,表示:在系统启动loader阶段,动态的从/boot/device.hints加载设备驱动程序参数;如果拿掉注释“#”,则会静态地将设备驱动程序参数编译进内核。该行保持默认即可。
#makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols
//内核开发与测试时用,将该行注释上。
#options MATH_EMULATE #Support for x87 emulation
//早期CPU只有整型运算器,浮点运算器是单独卖的,用户可以选购,现在的CPU都带浮点运算器,这行就是浮点运算模拟器的支持,7.0中已经没有这行,不用理会。
options SCHED_4BSD # 4BSD scheduler
//SCHED_4BSD是BSD系统默认调度器,也可以说成排成工作,保留。
options PREEMPTION # Enable kernel thread preemption
//允许内核根据线程的优先级抢占式调度。 这有助于改善交互性,并可以让中断的线程更早地执行,保留。
options INET # InterNETworking
//对IPv4的支持,即使不接入Internet也要保留,计算机内部循环网络lookback要使用,保留。
#options INET6 # IPv6 communications protocols
//对IPv6的支持,拿掉。
#options SCTP # Stream Control Transmission Protocol
//流控制传输协议,借鉴 UDP 的优点解决了 TCP 的某些局限。拿掉。
options FFS # Berkeley Fast Filesystem
#options FFS_ROOT #FFS usable as root device [keep this!]
//最基本的文件系统,从硬盘启动需要此项,保留。注意: 在FreeBSD 5.X中, FFS_ROOT 已不是必须的了。
options SOFTUPDATES # Enable FFS soft updates support
//简单的讲,保持文件系统一致性,这个一致性在数据库中体现的也很明显,比如我们的机器突然掉电,可能内存中有些在数据还没有来得及写入硬盘,这样,文件系统中数据就可能不一致,还有两种保持文件系统一致性的技术,Soft Updates技术不同于这两种技术,保留。
关于Soft Updates:
options UFS_ACL # Support for access control lists
//启用内核中的访问控制表的支持,访问控制技术是一种主动防护技术,保留。
//访问控制技术通过控制与检查进出关键服务器中的访问,保护服务器中的关键数据。它是一种主机防护技术。如果说安全保护就像保护自己的球网不被攻破一样,防火墙是中卫、IDS是后卫,则访问控制就是守门员——随时准备扑出任何非法的进入。-------引自互联网
options UFS_DIRHASH # Improve performance on big directories
//通过使用额外的内存,提升对大目录磁盘操作的性能。大型服务器和频繁使用的工作站打开这个选项,在磁盘操作不是很重要的小型系统上关闭它,比如防火墙。保留吧
options UFS_GJOURNAL # Enable gjournal-based UFS journaling
//这个技术不太清楚,打开吧。
#options MFS #Memory Filesyste
#options MD_ROOT # MD is a potential root device
//内存映射文件系统。如果有些数据需要快速的访问,用这个功能挺好的,拿掉。
#options NFSCLIENT # Network Filesystem Client
#options NFSSERVER # Network Filesystem Server
#options NFS_ROOT # NFS usable as /, requires NFSCLIENT
//网络文件系统。通过网络挂接UNIX分区,我们一般用不着,这个通常用在大型服务器上,拿掉。
#options MSDOSFS # MSDOS Filesystem
//对MS-DOS® 文件系统的支持,拿掉。
#options CD9660 # ISO 9660 Filesystem
//CD-ROM 使用的ISO 9660文件系统,可以拿掉,需要时,内核会动态加载。拿掉。
options PROCFS # Process filesystem (requires PSEUDOFS)
options PSEUDOFS # Pseudo-filesystem framework
//虚拟的文件系统,挂在/proc下,允许程序(如ps)获取正在执行的进程信息。6.X 内核中, 如果希望使用 PROCFS, 就必须加入 PSEUDOFS 的支持。两个都保留。
options GEOM_PART_GPT # GUID Partition Tables.
options GEOM_LABEL # Provides labelization
//提供了在磁盘上使用大量分区的能力。保留
options COMPAT_43TTY # BSD 4.3 TTY compat [KEEP THIS!]
//使系统兼容4.3BSD。有些程序依赖这个功能,看后边的KEEP THIS!,一定要保留。保留
options COMPAT_FREEBSD4 # Compatible with FreeBSD4
options COMPAT_FREEBSD5 # Compatible with FreeBSD5
options COMPAT_FREEBSD6 # Compatible with FreeBSD6
//对FreeBSD4、5、6中程序的支持,运行老应用程序时需要这些功能。保留
#options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI
//内核探测SCSI设备延迟时间,视情况而定是否保留,如果只有IDE硬盘驱动器,可以拿掉这行。
#options UCONSOLE #Allow users to grab the console
//FreeBSD7.0没有这个;FreeBSD 5.X中, 就已经没有UCONSOLE了。
#options USERCONFIG #boot -c editor
//这个选项允许从启动菜单启动配置编辑器。
#options VISUAL_USERCONFIG #visual boot -c editor
//这个选项允许从启动菜单启动可视化的配置编辑器。
注意: 从FreeBSD 5.0 开始,USERCONFIG选项和新的device.hints方式冲突。
#options KTRACE # ktrace(1) support
//打开内核进程跟踪,在调试时很有用。拿掉。
options SYSVSHM # SYSV-style shared memory
options SYSVMSG # SYSV-style message queues
options SYSVSEM # SYSV-style semaphores
//分别是System V共享内存、消息队列、信号量,保护共享资源。这三行保留。
#options P1003_1B #Posix P1003_1B real-time extensions
//在1993 POSIX中添加的实时扩展。在ports中有些应用程序会用到它们(比如Star Office )。
注意: 在 FreeBSD 5.X中, 此项功能已经被 _KPOSIX_PRIORITY_SCHEDULING 选项所取代,并且P1003_1B也不再是必选项了。--引自互联网
options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
//实时扩展。Ports Collection中某些应用程序会用到这些。保留
#options ICMP_BANDLIM #Rate limit bad replies
//这个选项启用基于带宽限制的ICMP的错误响应。你使用这个选项可以帮助你保护你的机器
免受拒绝式服务攻击。
FreeBSD 5.X, 已经默认支持这种功能,而不需要有ICMP_BANDLIM选项。--引自互联网
options KBD_INSTALL_CDEV # install a CDEV entry in /dev
//这个选项是在 /dev下建立键盘设备节点必需的。保留
options ADAPTIVE_GIANT # Giant mutex is adaptive.
//对内核全局锁技术的支持,保护内核资源。保留
options STOP_NMI # Stop CPUS using NMI instead of IPI
options AUDIT # Security event auditing
//这两项保留吧,不太清楚,第二个是审计什么的。保留
# To make an SMP kernel, the next two lines are needed
#options SMP # Symmetric MultiProcessor Kernel
#device apic # I/O APIC
//对多CPU的支持,单CPU可以拿掉。
# CPU frequency control
device cpufreq
//CPU频率控制,保留
# Bus support.
#device eisa
device pci
//计算机总线类型,每个计算机都有其中的一种,选择自己的总线类型。
isa总线在现在的i386机器上已经很少见了。而eisa在586以后的主机板已经没见过了。pci是目前的主流。
# Floppy drives
#device fdc
//软盘驱动器
# ATA and ATAPI devices
device ata
//IDE接口的硬盘也叫ATA接口的硬盘,如果有IDE/ATA硬盘或光驱,一定要打开这个选项。如果要支持以下任何IDE接口装置都必须将这个选项打开。
device atadisk # ATA disk drives
#device ataraid # ATA RAID drives
device atapicd # ATAPI CDROM drives
#device atapifd # ATAPI floppy drives
#device atapist # ATAPI tape drives
//以上装置分别是IDE或ATA硬盘、IDE或ATA磁盘阵列装置、IDE或ATA光驱、IDE或ATA软盘机、及IDE或ATA磁带机。您可以将不必要的装置移除,例如IDE软盘机等。
#options ATA_STATIC_ID # Static device numbering
//创建固定的IDE或ATA控置器的控制号码,如果拿掉这个选项,控制号码将动态创建,通常用在一些比较旧的设备上。拿掉。
# SCSI Controllers
#device ahb # EISA AHA1742 family
#device ahc # AHA2940 and onboard AIC7xxx devices
#options AHC_REG_PRETTY_PRINT # Print register bitfields in debug
# output. Adds ~128k to driver.
#device ahd # AHA39320/29320 and onboard AIC79xx devices
#options AHD_REG_PRETTY_PRINT # Print register bitfields in debug
# output. Adds ~215k to driver.
#device amd # AMD 53C974 (Tekram DC-390(T))
#device hptiop # Highpoint RocketRaid 3xxx series
#device isp # Qlogic family
#device ispfw # Firmware for QLogic HBAs- normally a module
#device mpt # LSI-Logic MPT-Fusion
#device ncr # NCR/Symbios Logic
#device sym # NCR/Symbios Logic (newer chipsets + those of `ncr')
#device trm # Tekram DC395U/UW/F DC315U adapters
#device adv # Advansys SCSI adapters
#device adw # Advansys wide SCSI adapters
#device aha # Adaptec 154x SCSI adapters
#device aic # Adaptec 15[012]x SCSI adapters, AIC-6[23]60.
#device bt # Buslogic/Mylex MultiMaster SCSI adapters
#device ncv # NCR 53C500
#device nsp # Workbit Ninja SCSI-3
#device stg # TMC 18C30/18C50
//SCSI控制器。如果没有SCSI硬盘之类的东东,就都拿掉。
# SCSI peripherals
device scbus # SCSI bus (required for SCSI)
//SCSI总线,下边的每项都需要scbus的支持。
#device ch # SCSI media changers
device da # Direct Access (disks)
#device sa # Sequential Access (tape etc)
#device cd # CD
#device pass # Passthrough device (direct SCSI access)
#device ses # SCSI Environmental Services (and SAF-TE)
//这些是周边的SCSI接口设备,每一项都需要scbus的支持。ch是SCSI media changer(一种备份用的设备)。如果有SCSI硬盘或是USB硬盘,保留da这个选项。sa及cd分别是SCSI磁带机及光驱。
# RAID controllers interfaced to the SCSI subsystem
#device amr # AMI MegaRAID
#device arcmsr # Areca SATA II RAID
#device asr # DPT SmartRAID V, VI and Adaptec SCSI RAID
#device ciss # Compaq Smart RAID 5*
#device dpt # DPT Smartcache III, IV - See NOTES for options
#device hptmv # Highpoint RocketRAID 182x
#device hptrr # Highpoint RocketRAID 17xx, 22xx, 23xx, 25xx
#device iir # Intel Integrated RAID
#device ips # IBM (Adaptec) ServeRAID
#device mly # Mylex AcceleRAID/eXtremeRAID
#device twa # 3ware 9000 series PATA/SATA RAID
# RAID controllers
#device aac # Adaptec FSA RAID
#device aacp # SCSI passthrough for aac (requires CAM)
#device ida # Compaq Smart RAID
#device mfi # LSI MegaRAID SAS
#device mlx # Mylex DAC960 family
#device pst # Promise Supertrak SX6000
#device twe # 3ware ATA RAID
//磁盘阵列的支持,磁盘阵列是将多个物理磁盘组成一个逻辑磁盘,如果只有一个硬盘,就都拿掉吧!
# atkbdc0 controls both the keyboard and the PS/2 mouse
device atkbdc # AT keyboard controller
device atkbd # AT keyboard
device psm # PS/2 mouse
//atkbdc用来控制AT键盘及PS/2鼠标(就是圆口的鼠标)。而atkbd及psm分别为AT键盘及PS/2鼠标的驱动程序。后两者需要前两者的支持。保留
#device kbdmux # keyboard multiplexer
//对多个键盘的支持。 如果只使用一个键盘,可以拿掉。
device vga # VGA video card driver
//显卡驱动。保留。
device splash # Splash screen and screen saver support
//启动时的 splash 画面! 屏幕保护程序也需要这一选项。保留。
# syscons is the default console driver, resembling an SCO console
device sc
//预设的console终端驱动程序,有屏幕就一定要保留。
#device agp # support several AGP chipsets
//对AGP接口显卡支持的驱动程序。我的是集成显卡,所以我去掉了,要注意自己的哦!!
# PCCARD (PCMCIA) support
# PCMCIA and cardbus bridge support
#device cbb # cardbus (yenta) bridge
#device pccard # PC Card (16-bit) bus
#device cardbus # CardBus (32-bit) bus
//笔记本专用,拿掉。
# Serial (COM) ports
device sio # 8250, 16[45]50 based
device uart # Generic UART driver
//支持串行端口 Serial (COM) ports,这个不太懂,保留吧~
# Parallel port
device ppc
device ppbus # Parallel port bus (required)
#device lpt # Printer
device plip # TCP/IP over parallel
device ppi # Parallel port interface device
#device vpo # Requires scbus and da
// 这些是并行端口驱动程序,ppc提供ISA-bus并行接口支持;ppbus提供并行总线的支持;lpt提供并行打印机的支持,plip提供并行网络接口 驱动器的支持;普通用途的I/O (“geek port”) + IEEE1284 I/O;这是针对Iomega Zip驱动器的。它要求scbus和da的支持。 最好的执行效果是工作在EPP 1.9模式。--引自手册
# If you've got a "dumb" serial or parallel PCI card that is
# supported by the puc(4) glue driver, uncomment the following
# line to enable it (connects to sio, uart and/or ppc drivers):
#device puc
//默认已经注释,不太清楚,不用理会了。
# PCI Ethernet NICs.
#device de # DEC/Intel DC21x4x (``Tulip'')
#device em # Intel PRO/1000 adapter Gigabit Ethernet Card
#device ixgb # Intel PRO/10GbE Ethernet Card
device le # AMD Am7900 LANCE and Am79C9xx PCnet
#device txp # 3Com 3cR990 (``Typhoon'')
#device vx # 3Com 3c590, 3c595 (``Vortex'')
//网卡驱动,保留自己的。
# 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
//对MII总线的支持,对于一些PCI 10/100 Ethernet NIC来说是必需的。
#device bce # Broadcom BCM5706/BCM5708 Gigabit Ethernet
#device bfe # Broadcom BCM440x 10/100 Ethernet
#device bge # Broadcom BCM570xx Gigabit Ethernet
#device dc # DEC/Intel 21143 and various workalikes
#device fxp # Intel EtherExpress PRO/100B (82557, 82558)
#device lge # Level 1 LXT1001 gigabit Ethernet
#device msk # Marvell/SysKonnect Yukon II Gigabit Ethernet
#device nfe # nVidia nForce MCP on-board Ethernet
#device nge # NatSemi DP83820 gigabit Ethernet
#device nve # nVidia nForce MCP on-board Ethernet Networking
#device pcn # AMD Am79C97x PCI 10/100 (precedence over 'le')
#device re # RealTek 8139C+/8169/8169S/8110S
#device rl # RealTek 8129/8139
#device sf # Adaptec AIC-6915 (``Starfire'')
#device sis # Silicon Integrated Systems SiS 900/SiS 7016
#device sk # SysKonnect SK-984x & SK-982x gigabit Ethernet
#device ste # Sundance ST201 (D-Link DFE-550TX)
#device stge # Sundance/Tamarack TC9021 gigabit Ethernet
#device ti # Alteon Networks Tigon I/II gigabit Ethernet
#device tl # Texas Instruments ThunderLAN
#device tx # SMC EtherPower II (83c170 ``EPIC'')
#device vge # VIA VT612x gigabit Ethernet
#device vr # VIA Rhine, Rhine II
#device wb # Winbond W89C840F
#device xl # 3Com 3c90x (``Boomerang'', ``Cyclone'')
# ISA Ethernet NICs. pccard NICs included.
#device cs # Crystal Semiconductor CS89x0 NIC
# 'device ed' requires 'device miibus'
#device ed # NE[12]000, SMC Ultra, 3c503, DS8390 cards
#device ex # Intel EtherExpress Pro/10 and Pro/10+
#device ep # Etherlink III based cards
#device fe # Fujitsu MB8696x based cards
#device ie # EtherExpress 8/16, 3C507, StarLAN 10 etc.
#device sn # SMC's 9000 series of Ethernet chips
#device xe # Xircom pccard Ethernet
//ISA 以太网卡驱动
# Wireless NIC cards
#device wlan # 802.11 support
#device wlan_wep # 802.11 WEP support
#device wlan_ccmp # 802.11 CCMP support
#device wlan_tkip # 802.11 TKIP support
#device wlan_amrr # AMRR transmit rate control algorithm
#device wlan_scan_ap # 802.11 AP mode scanning
#device wlan_scan_sta # 802.11 STA mode scanning
#device an # Aironet 4500/4800 802.11 wireless NICs.
#device ath # Atheros pci/cardbus NIC's
#device ath_hal # Atheros HAL (Hardware Access Layer)
#device ath_rate_sample # SampleRate tx rate control for ath
#device awi # BayStack 660 and others
#device ral # Ralink Technology RT2500 wireless NICs.
#device wi # WaveLAN/Intersil/Symbol 802.11 wireless NICs.
#device wl # Older non 802.11 Wavelan wireless NIC.
//无线网卡驱动
# Pseudo devices.
device loop # Network loopback
// 内部循环网络,telnet等用,保留
device random # Entropy device
device ether # Ethernet support
//这是用来支持以太网络,只要您有网络卡都必须保留这个项目。保留
#device sl # Kernel SLIP
//SLIP已经被PPP取代了,拿掉。
device ppp # Kernel PPP
//PPP 就是 Point-to-Point 通讯协议的简写,提供了相当完整的 TCP/IP 功能。需要时可动态加载。
这里的PPP称为Kernel-mode PPP,传输速度较快,但设定较为不易,额外功能较少。随便选择。
#device tun # Packet tunnel.
//tun 是User-modePPP(亦称 iijppp),比Kernel-mode PPP容易设定,传输速度略慢,但提供许多特殊能,如需要时自动拨号联机 (Dial-up on demand)、封包过滤器 (packet filter)等等。后接数字表示要支持多少线的PPP,需要时可动态加载。随便选择。
tun 会被ppp所使用,如果有拨接网络(含 ADSL 拨号)一定要保留这两个选项。
device pty # Pseudo-ttys (telnet etc)
//终端例如:telnet同时上线最大人数,在 FreeBSD 4.x 预设是 16。你可以在pty的后面加上数字来提高人数,最大是 256。FreeBSD 5.x 后则不用理会这个问题。保留。
device md # Memory "disks"
//用来支持虚拟的 Memory disk,这是一种将某块内存拿来当成磁盘驱动器使用的虚拟装置。
这个不太清楚,保留吧
device gif # IPv6 and IPv4 tunneling
//IPv4与IPv6通信,可动态加载。随便选择。
device faith # IPv6-to-IPv4 relaying (translation)
//抓取封包,并将封包转交给负责IPv4与IPv6通讯的后台服务程序,提供动态加载。随便选择。
device firmware # firmware assist module
//介于硬件与软件之间的东东,挺麻烦的家伙,保留吧
# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
# Note that 'bpf' is required for DHCP.
device bpf # Berkeley packet filter
//提供网络封包过滤功能,网络监控程序用来获取网络上的封包。保留
# USB support
#device uhci # UHCI PCI->USB interface
#device ohci # OHCI PCI->USB interface
device ehci # EHCI PCI->USB interface (USB 2.0)
device usb # USB Bus (required)
#device udbp # USB Double Bulk Pipe devices
#device ugen # Generic
#device uhid # "Human Interface Devices"
#device ukbd # Keyboard
#device ulpt # Printer
#device umass # Disks/Mass storage - Requires scbus and da
device ums # Mouse
#device ural # Ralink Technology RT2500USB wireless NICs
#device rum # Ralink Technology RT2501USB wireless NICs
#device urio # Diamond Rio 500 MP3 player
#device uscanner # Scanners
# USB Ethernet, requires miibus
#device aue # ADMtek USB Ethernet
#device axe # ASIX Electronics USB Ethernet
#device cdce # Generic USB over Ethernet
#device cue # CATC USB Ethernet
#device kue # Kawasaki LSI USB Ethernet
#device rue # RealTek RTL8150 USB Ethernet
//USB支持,如果要使用鼠标(包括USB接口(方口)和PS/2接口(圆口))一定要有usb和ums的支持,其中如果想使用USB 2.0就要保留ehci。
# FireWire support
device firewire # FireWire bus code
device sbp # SCSI over FireWire (Requires scbus and da)
device fwe # Ethernet over FireWire (non-standard!)
device fwip # IP over FireWire (RFC 2734,3146)
device dcons # Dumb console driver
device dcons_crom # Configuration ROM for dcons
//防火墙支持
Cd /usr/src/
Make buildworld KERNCONF=NEWKEL
#内核编译ipfw 内核中加入
#options IPDIVERT
#options IPFIREWALL
#options IPFIREWALL_FORWARD
#options IPFIREWALL_VERBOSE
#options IPFIREWALL_VERBOSE_LIMIT=100
##options IPFIREWALL_DEFAULT_TO_ACCEPT
#options IPSEC
###############################################################################
#rc.conf中加入了:
#firewall_enable="YES"
#firewall_nat_enable="YES"
#firewall_nat_interface="em0"
#firewall_script="/etc/ipfw.conf"
#firewall_logging="YES"
pf_enable=”yes”
Pf FAQ
pfctl: /dev/pf: No such file or directory
Pf编译到内核:
device pf
device pflog
device pfsync
options ALTQ
options ALTQ_CBQ
options ALTQ_RED
options ALTQ_RIO
options ALTQ_HFSC
options ALTQ_PRIQ
options ALTQ_NOPCC
编缉pf.conf
Ee /etc/pf.conf
wan_if="le0"
int_if="le1"
noroute="{127.0.0.1,255.255.255.255/32}"
routeip="172.16.0.1"
internal_net="172.16.0.0/16"
wan_addr="192.168.10.50"
loop="lo0"
nat on $wan_if from $internal_net to any ->($wan_if)
编缉/etc/rc
在/etc/rc最后面加上
/etc/pfroute
编缉/etc/pfroute
没有就建个
#!/bin/sh
pfctl -d
pfctl -e
pfctl -f /etc/pf.conf
chmod 700 /etc/pfroute
###############################################################################
编译内核:
一、
#/usr/sbin/config MYKERNEL
#cd ../compile/MYKERNEL //新内核的原始码目录
#make cleandepend //清除依赖吧关系吧~ 我的理解
#make depend //创建依赖关系 我的理解
#make //编译
#make install //安装
# cd /usr/src
二、
# make buildworld KERNCONF=MYKERNEL
# make kernel KERNCONF=MYKERNEL
#reboot
更新ports树
#cvsup –L 2 –h cvsup5.cn.freebsd.org /usr/share/examples/cvsup/ports-supfile
或者:
#Portsnap fetch
#Portsnap extract
#Portsnap update
PppoeServer安装
Cd /usr/ports/rp-pppoe
Make install clean
配置文件:
/etc/ppp/ppp.conf
default:
set log phase ipcp lcp
pppoe:
set timeout 0
set device PPPoE:le1
allow mode direct
set mru 1492
set mtu 1492
set speed sync
enable lqr
set lqrperiod 60
enable chap
set cd 5
accept dns
# set radius /etc/radius.conf
set ifaddr 192.168.1.1 192.168.1.2-192.168.1.100
注意:上面pppoe标签前面没有空格,下面的都要缩进.
在/etc/ppp/下新建
ppp.secret
格式:
用户名 密码 ip地址(如果自己指定ip的话)
Pppoe服务器启动:
/usr/libexec/pppoed -l pppoe -P /var/pppoed.pid le1 //pppoe指/usr/ppp/ppp.conf里面的pppoeserver配置的标签 le1指pppoe接收拨入的网卡 具体的请用ifconfig自己看.
(最新8.1系统这样启动不了了好象!)
修改/etc/rc.conf
加入
pppoed_enable="YES"
pppoed_flags="-d -P /var/run/pppoed.pid -a "server" -l "pppoe""
pppoed_interface="le1"
关闭sendmail
编缉/etc/rc.conf
加入
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"
安装msyql
Pw adduser mysql –d /dev/null –s /bin/nologin
Cd /usr/ports/databases/mysql51-server/
Make WITH_CHARSET=gbk WITH_XCHARSET=all install clean Cd /var/dbMkdir mysqlChown –R mysql /var/db/mysqlCd /usr/local/bin./mysql_install_db --user=mysql
cp /usr/local/share/mysql/my-large.cnf /etc/my.cnf #服务器内存1G,但是与apache在一起
#############################################################################
/usr/local/share/mysql下面有5个my-xxxx.cnf文件
my-small.cnf 最小配置安装,内存<=64M,数据数量最少
my-large.cnf 内存=512M
my-medium.cnf 32M<内存<64M,或者内存有128M,但是数据库与web服务器公用内存
my-huge.cnf 1G<内存<2G,服务器主要运行mysql
my-innodb-heavy-4G.cnf 最大配置安装,内存至少4G
./ mysqld_safe –user=mysql
./ mysqladmin –u root password “新密码”
开机启动mysql
方法1
touch /usr/local/etc/rc.d/mysql.sh
chmod 700 /usr/local/etc/rc.d/msyql.sh
echo "/usr/local/bin/mysqld_safe --user=mysql" >> /usr/local/etc/rc.d/mysql.sh
方法2
编缉/etc/rc.conf
加入mysql_enable=”YES”
安装freeradius
看看有没有安装perl5
如果没有
Cd /usr/ports/lang/perl5.8
Make install clean
FreeBSD-安装DHCP服务
# cd /usr/ports/net/isc-dhcp3-server
# make config ; make install clean
# rehash
二、配置
1、将配置文件的样例文件复制为配置文件,并编辑它。
# cd /usr/local/etc
# cp dhcpd.conf.sample dhcpd.conf
# ee dhcpd.conf
2、下滚到 domain-name 选项(大约在7行)。替换 example.org 为你的域名,替换 ns1.example.org 和 ns2.example.org 为你DNS服务器的IP地址。你可以用你自己的DNS服务器IP,也可以用ISP的。
option domain-name "example.com";
option domain-name-servers 192.168.1.11, 61.32.24.84;
3、下滚到大约15行,去掉 authoritative 语句前面的井号(#)。这将让DHCP服务器成为有权威的。
authoritative;
注意:确保在网络中没有其它的DHCP服务器。许多路由器有内嵌的DHCP服务,在测试前禁用它。
4、下滚到 ddns-update-style 选项(大约18行)。更改 ad-hoc 为 none ,这将禁用动态DNS更新。要启用动态DNS更新,更改这个为 interim (你必须有个本地的开启了动态DNS更新功能的BIND DNS服务器)。如果动态更新启用,这行(~18)看起来象这样:
ddns-update-style interim;
5、下滚到第二个子网声明段(~32)。看起来象下面:
subnet 10.254.239.0 netmask 255.255.255.224 {
range 10.254.239.10 10.254.239.20;
option routers rtr-239-0-1.example.org, rtr-239-0-2.example.org;
}
这些行指定了子网的IP地址、网络掩码和路由器。修改它们以适合你的实际网络情况。我们用子 网 192.168.1.0 和掩码 255.255.255.0 。设置 DHCP 范围从 192.168.1.12 到 192.168.1.62 。路由器IP是 192.168.1.1 。
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.12 192.168.1.62;
option routers 192.168.1.1;
}
6、默认的,dhcp.conf 文件包含多行象上面例子中的语句。最简洁的是移去子网声明后面的所有语句。
7、第三节和第四节是可选的。如果你用不到这些功能,跳到“测试”章节。
三、分配静态IP
1、通过DHCP分配一个静态(固定)IP给某个主机,需要获取它的MAC地址。MAC地址有多种获取方法。在 FreeBSD 和 Macintosh OS X 系统上,用 ifconfg 命令。在 Windows 系统上用 ipcongfig/all 命令。
2、添加下面的行到 dhcpd.conf 文件末尾。替换 desktop01.example.com 为目标系统主机名。MAC地址和IP地址为你想分配的。
host desktop01.example.com {
hardware ethernet 08:00:07:26:c0:a5;
fixed-address 192.168.1.10;}
注意:如果你有带域查询文件的权威 DNS服务器,固定地址也可以是一个完全限定域名(FQDN)。不要分配动态IP范围中的IP给固定IP地址。在上面简单配置中,声明的范围从 192.168.1.12 到 192.168.1.62 ,因此 192.168.1.10 是可接受的,而 192.168.1.13 是不能接受的。
你可以用同样的格式添加多个静态IP 。
四、动态DNS更新
1、复制 rndc.key 文件的内容到 dhcpd.conf 。这将运行DHCP进程加密与DNS服务器更新时的通讯。
# cd /usr/local/etc
# cp dhcpd.conf dhcpd.conf.old
# cat /var/named/etc/namedb/rndc.key >> dhcpd.conf
2、添加两个域声明到 dhcpd.conf 文件底部。
# ee /usr/local/etc/dhcpd.conf
添加:
zone example.com. {
primary 192.168.1.11;
key rndc-key;
}
zone 1.168.192.in-addr.arpa. {
primary 192.168.1.11;
key rndc-key;
}
替换 example.com 和 1.168.192.in-addr.arpa. 为你的正向和反向域文件名。上面的IP地址应该指向你的BIND DNS服务器(如果你的DNS服务与DHCP服务存在于同一台电脑,你可以用 127.0.0.1)。如果你没有创建反向查找域文件,省略反向查找域声明。
3、如果你设置了静态IP分配,添加下面行到 dhcpd.conf 文件。这将允许 DHCP 用静态分配更新DNS。
update-static-leases on;
保存退出。
五、测试
1、如果网络中存在其它DHCP服务器,关闭它。许多路由器有内嵌的DHCP服务,在测试前禁用它。下面的命令可以实时查看DHCP消息。
# dhcpd -f -d
按 Ctrl+C 退出这个模式。
2、如果你启用了动态DNS更新,可以用下面的命令解析主机的IP地址。替换 desktop01.example.com 为你的目标主机名。
# host desktop01.example.com
desktop01.example.com has address 192.168.1.13
3、配置DHCP随系统启动。
# ee /etc/rc.conf
添加:
dhcpd_enable="YES"
保存退出。
4、启动DHCP服务用下面命令。
# /usr/local/etc/rc.d/isc-dhcpd start
六、文件位置
1、配置文件。
/usr/local/etc/dhcpd.conf
主配置文件位置。
2、日志文件:
/var/db/dhcpd.leases
dhcpd 发出租期的数据库文件。
/var/log/messages
错误和状态日志。