#!/bin/sh
# Dieses Script macht ein FreeBSD-UPDATE, konfigurieren und starten!
################################################################################
#
# $ FreeBSD-cvsuprun.sh
#
# Es wird alles vorbereitet!
# - evtl. CVSUP installiert (nur, wenn nicht schon vorhanden)
# - wenn "DOCSUP=YES" die DOC-src werden aktualisiert
# - wenn "STABLESUP=YES" die SYSTEM-src werden aktualisiert
# - wenn "PORTSSUP=YES" das PORTS-Verzeichnis wird aktualisiert
# - das SYSTEM wird neu kompiliert
# - der GENERIC-Kernel wird kompiliert
# - der MYKERNEL-Kernel wird kompiliert
# Diesen Aufruf kann man im Hintergrund beim normalen arbeiten am Rechner
# laufen lassen und sollte anschliessend die Installation im Singleusermode
# durchfuehren.
# Nach dem der Vorgang mit "mergemaster" abgeschlossen ist, sollte unbedingt ein
# Neustart durchgefuehrt werden!
#
################################################################################
#
# $ FreeBSD-cvsuprun.sh install
#
# Alles wie oben, und anschliessend noch folgendes:
# - GENERIC-Kernel wird installiert
# - GENERIC-Kernel wird nach /kernel.GENERIC kopiert
# - MYKERNEL-Kernel wird installiert
# - das neue SYSTEM wird installiert
# - das Programm "mergemaster" wird gestartet und wartet auf die
# Wenn das Script mit dem Parameter "install" gestartet wird, sollte kein
# anderes Programm laufen, da die alten Bibliotheken am Ende der Installation
# ueberschrieben werden, und dadurch Konflikte auftreten koennen.
# Nach dem der Vorgang mit "mergemaster" abgeschlossen ist, sollte unbedingt ein
# Neustart durchgefuehrt werden!
#
################################################################################
# Dieses Script ueberprueft ob die folgenden individuelle Konfigurationsdateien
# im System vorhanden sind:
# "/usr/src/sys/i386/conf/MYKERNEL"
# "/etc/make.conf"
# "stable-supfile"
# "doc-supfile"
# "ports-supfile"
# Sowie das CVSUP-Programm "/usr/local/bin/cvsup".
# Wenn eine der Konfigurationsdateien nicht vorhanden ist, wird sie nach den
# Angaben im folgenden Variablenblock angelegt.
# Ist CVSUP nicht installiert, so wird es per Netzwerk automatisch installiert.
#
# Sind dann alle Vorraussetzungen geschaffen fuer ein Update,
# werden die Quellen aktuallisiert und anschliessend ein "make buildworld"
# sowie /usr/bin/make buildkernel KERNCONF=GENERIC
# /usr/bin/make buildkernel KERNCONF=MYKERNEL
# ausgefuehrt und anschliessend die folgenden noetigen Schritte ausgegeben!
################################################################################
######## VARIABLEN BEGINN #####################################################
################################################################################
#
SRCRELEASE="RELENG_4_7" # RELEASE 4.7 + Sicherheits-Patches
DOCSUP="YES" # Quellen der Dokumentation installieren/updaten?
STABLESUP="YES" # Quellen des Systems installieren/updaten?
PORTSSUP="YES" # Die Ports-Collection updaten?
CPUSRC="i686" # i386 i486 i586 i586/mmx i686 p2 p3 p4 k5 k6 k6-2 k7
CPUKERN="I686_CPU" # I386_CPU I486_CPU I586_CPU I686_CPU
SERVERKERN="NO" # bei "YES" ===> minimalistischer KERNEL
KERNELCONFIG="/usr/src/sys/i386/conf/MYKERNEL"
KERNIDENT="MYKERNEL"
CPUPLUSEXTRAS="YES" # ENABLE_SSE / FASTER_5X86_FPU / SUSP_HLT
#
################################################################################
######## VARIABLEN ENDE #######################################################
################################################################################
case $CPUPLUSEXTRAS in
[Yy][Ee][Ss])
CPUEXTRAS="
options CPU_ENABLE_SSE
options CPU_FASTER_5X86_FPU
options CPU_SUSP_HLT
" # siehe /usr/src/sys/i386/conf/LINT
;;
*)
CPUEXTRAS=""
;;
esac
################################################################################
# Wenn CVSUP noch nicht installiert ist, wird es jetzt installiert!
#
# Eventuell muss der Pfad zum Paket von Hand angegeben werden:
# /usr/sbin/pkg_add ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-4.6.2-release/Latest/cvsup-without-gui.tgz
################################################################################
if test -f /usr/local/bin/cvsup
then
echo "/usr/local/bin/cvsup wurde gefunden"
else
echo "Bitte warten, /usr/local/bin/cvsup wird installiert..."
#set PACKAGESITE ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4.6.2-release/Latest/
#export PACKAGESITE
/usr/sbin/pkg_add -r cvsup-without-gui
#pkg_add ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-4.6.2-release/Latest/cvsup-without-gui.tgz
fi
################################################################################
echo "Es wird auf $SRCRELEASE upgedatet!"
################################################################################
# SOURCE-tree update
if [ -f /etc/stable-supfile ] ; then
echo "/etc/stable-supfile existiert schon..."
else
echo "/etc/stable-supfile wird angelegt..."
echo "
#*default host=cvsup.FreeBSD.org
*default host=cvsup.uk.FreeBSD.org
#*default host=cvsup.de.FreeBSD.org
*default base=/usr
*default prefix=/usr
*default release=cvs
*default tag=$SRCRELEASE
*default delete use-rel-suffix
*default compress
src-all
" > /etc/stable-supfile
fi
################################################################################
# PORTS-tree update
if [ -f /etc/ports-supfile ] ; then
echo "/etc/ports-supfile existiert schon..."
else
echo "/etc/ports-supfile wird angelegt..."
echo "
#*default host=cvsup.FreeBSD.org
*default host=cvsup.uk.FreeBSD.org
#*default host=cvsup.de.FreeBSD.org
*default base=/usr
*default prefix=/usr
*default release=cvs
*default tag=.
*default delete use-rel-suffix
*default compress
ports-all
" > /etc/ports-supfile
fi
################################################################################
# DOC-tree update
if [ -f /etc/doc-supfile ] ; then
echo "/etc/doc-supfile existiert schon..."
else
echo "/etc/doc-supfile wird angelegt..."
echo "
#*default host=cvsup.FreeBSD.org
*default host=cvsup.uk.FreeBSD.org
#*default host=cvsup.de.FreeBSD.org
*default base=/usr
*default prefix=/usr
*default release=cvs
*default tag=.
*default delete use-rel-suffix
*default compress
doc-all
" > /etc/doc-supfile
fi
################################################################################
######## MYKERNEL ##############################################################
################################################################################
mkdir -p /usr/obj/
mkdir -p /usr/src/sys/i386/conf/
if [ -f ${KERNELCONFIG} ] ; then
echo "${KERNELCONFIG} existiert schon..."
else
echo "${KERNELCONFIG} wird angelegt..."
case $SCHALTER in
[Yy][Ee][Ss])
echo "Es wird ein auf 'Server' optimierter Kernel vobereitet ..."
echo "
######## GENERIC ###############################################################
machine i386
cpu $CPUKERN
ident $KERNIDENT
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 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 MFS #Memory Filesystem
options MSDOSFS #MSDOS Filesystem
options CD9660 #ISO 9660 Filesystem
options CD9660_ROOT #CD-ROM usable as root, CD9660 required
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 UCONSOLE #Allow users to grab the console
options USERCONFIG #boot -c editor
options VISUAL_USERCONFIG #visual boot -c editor
options VISUAL_USERCONFIG #visual boot -c editor
options KTRACE #ktrace(1) support
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 KBD_INSTALL_CDEV # install a CDEV entry in /dev
options ATA_STATIC_ID #Static device numbering
options SYM_SETUP_LP_PROBE_MAP=0x40
device isa
device pci
device fdc0 at isa? port IO_FD1 irq 6 drq 2
device fd0 at fdc0 drive 0
device ata0 at isa? port IO_WD1 irq 14
device ata1 at isa? port IO_WD2 irq 15
device ata
device atadisk # ATA disk drives
device atapicd # ATAPI CDROM drives
device atkbdc0 at isa? port IO_KBD
device atkbd0 at atkbdc? irq 1 flags 0x1
device vga0 at isa?
device sc0 at isa? flags 0x100
device npx0 at nexus? port IO_NPX irq 13
device sio0 at isa? port IO_COM1 flags 0x10 irq 4
device miibus # MII bus support
device fxp # Intel EtherExpress PRO/100B (82557, 82558)
device xl # 3Com 3c90x (``Boomerang'', ``Cyclone'')
pseudo-device loop # Network loopback
pseudo-device ether # Ethernet support
pseudo-device pty # Pseudo-ttys (telnet etc)
pseudo-device bpf #Berkeley packet filter
######## LINT ##################################################################
options IPFIREWALL #firewall
options IPFIREWALL_VERBOSE #enable logging to syslogd(8)
options IPFIREWALL_DEFAULT_TO_ACCEPT #allow everything by default
options TCP_DROP_SYNFIN #drop TCP packets with SYN+FIN
options KERNFS #Kernel filesystem
options NULLFS #NULL filesystem
options PORTAL #Portal filesystem
options PROCFS #Process filesystem
options QUOTA #enable disk quotas
options PANIC_REBOOT_WAIT_TIME=16
$CPUEXTRAS
######## SCSI ##################################################################
device ahc # AHA2940 and onboard AIC7xxx devices
device scbus # SCSI bus (required)
device da # Direct Access (disks)
device cd # CD
device pass # Passthrough device (direct SCSI access)
device mly # Mylex AcceleRAID/eXtremeRAID
######## USB ###################################################################
device uhci # UHCI PCI->USB interface
device ohci # OHCI PCI->USB interface
device usb # USB Bus (required)
device ugen # Generic
device uhid # \"Human Interface Devices\"
device ukbd # Keyboard
device umass # Disks/Mass storage - Requires scbus and da
################################################################################
" > ${KERNELCONFIG}
;;
*)
echo "Es wird ein 'normal' optimierter Kernel vobereitet ..."
echo "
################################################################################
machine i386
cpu $CPUKERN
ident $KERNIDENT
maxusers 0
makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols
options INET #InterNETworking
options INET6 #IPv6 communications protocols
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 MFS #Memory Filesystem
options MD_ROOT #MD is a potential root device
options NFS #Network Filesystem
options MSDOSFS #MSDOS Filesystem
options CD9660 #ISO 9660 Filesystem
options CD9660_ROOT #CD-ROM usable as root, CD9660 required
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 UCONSOLE #Allow users to grab the console
options USERCONFIG #boot -c editor
options VISUAL_USERCONFIG #visual boot -c editor
options KTRACE #ktrace(1) support
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 KBD_INSTALL_CDEV # install a CDEV entry in /dev
device isa
device pci
device fdc0 at isa? port IO_FD1 irq 6 drq 2
device fd0 at fdc0 drive 0
device fd1 at fdc0 drive 1
device ata0 at isa? port IO_WD1 irq 14
device ata1 at isa? port IO_WD2 irq 15
device ata
device atadisk # ATA disk drives
device atapicd # ATAPI CDROM drives
device atapifd # ATAPI floppy drives
device atapist # ATAPI tape drives
options ATA_STATIC_ID #Static device numbering
device ahc # AHA2940 and onboard AIC7xxx devices
device amd # AMD 53C974 (Tekram DC-390(T))
device sym # NCR/Symbios Logic (newer chipsets)
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)
device atkbdc0 at isa? port IO_KBD
device atkbd0 at atkbdc? irq 1 flags 0x1
device psm0 at atkbdc? irq 12
device vga0 at isa?
pseudo-device splash
device sc0 at isa? flags 0x100
device npx0 at nexus? port IO_NPX irq 13
device apm0 at nexus? disable flags 0x20 # Advanced Power Management
device sio0 at isa? port IO_COM1 flags 0x10 irq 4
device sio1 at isa? port IO_COM2 irq 3
device ppc0 at isa? irq 7
device ppbus # Parallel port bus (required)
device lpt # Printer
device plip # TCP/IP over parallel
device ppi # Parallel port interface device
device miibus # MII bus support
device dc # DEC/Intel 21143 and various workalikes
device fxp # Intel EtherExpress PRO/100B (82557, 82558)
device rl # RealTek 8129/8139
device tx # SMC EtherPower II (83c170 ``EPIC'')
device wb # Winbond W89C840F
device xl # 3Com 3c90x (``Boomerang'', ``Cyclone'')
pseudo-device loop # Network loopback
pseudo-device ether # Ethernet support
pseudo-device ppp 1 # Kernel PPP
pseudo-device tun # Pakettunnel.
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)
pseudo-device bpf #Berkeley packet filter
device uhci # UHCI PCI->USB interface
device ohci # OHCI PCI->USB interface
device usb # USB Bus (required)
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 uscanner # Scanners
device urio # Diamond Rio MP3 Player
device aue # ADMtek USB ethernet
device cue # CATC USB ethernet
device kue # Kawasaki LSI USB ethernet
device pcm
options EXT2FS
options USER_LDT #allow user-level control of i386 ldt
# Certain applications can grow to be larger than the 128M limit
# that FreeBSD initially imposes. Below are some options to
# allow that limit to grow to 256MB, and can be increased further
# with changing the parameters. MAXDSIZ is the maximum that the
# limit can be set to, and the DFLDSIZ is the default value for
# the limit. MAXSSIZ is the maximum that the stack limit can be
# set to. You might want to set the default lower than the max,
# and explicitly set the maximum with a shell command for processes
# that regularly exceed the limit like INND.
#
options MAXDSIZ=\"(1024*1024*1024)\"
options MAXSSIZ=\"(1024*1024*1024)\"
options DFLDSIZ=\"(128*1024*1024)\"
$CPUEXTRAS
options IPFIREWALL #firewall
options IPFIREWALL_VERBOSE #enable logging to syslogd(8)
options IPFIREWALL_DEFAULT_TO_ACCEPT #allow everything by default
#
# TCP_DROP_SYNFIN adds support for ignoring TCP packets with SYN+FIN. This
# prevents nmap et al. from identifying the TCP/IP stack, but breaks support
# for RFC1644 extensions and is not recommended for web servers.
#
options TCP_DROP_SYNFIN #drop TCP packets with SYN+FIN
# The rest are optional:
options NFS_NOSERVER #Disable the NFS-server code.
options CD9660 #ISO 9660 filesystem
options FDESC #File descriptor filesystem
options KERNFS #Kernel filesystem
options MSDOSFS #MS DOS File System
options NULLFS #NULL filesystem
options PORTAL #Portal filesystem
options PROCFS #Process filesystem
# Add support for the EXT2FS filesystem of Linux fame. Be a bit
# careful with this - the ext2fs code has a tendency to lag behind
# changes and not be exercised very much, so mounting read/write could
# be dangerous (and even mounting read only could result in panics.)
#
options EXT2FS
#####################################################################
# CLOCK OPTIONS
# The granularity of operation is controlled by the kernel option HZ whose
# default value (100) means a granularity of 10ms (1s/HZ).
# Some subsystems, such as DUMMYNET or DEVICE_POLLING, might benefit from
# a smaller granularity such as 1ms or less.
# Consider, however, that reducing the granularity too much might
# cause excessive overhead in clock interrupt processing,
# potentially causing ticks to be missed and thus actually reducing
# the accuracy of operation.
options HZ=100
#
# PCI devices & PCI options:
#
# The main PCI bus device is `pci'. It provides auto-detection and
# configuration support for all devices on the PCI bus, using either
# configuration mode defined in the PCI specification.
device pci
# PCI options
#
#Enable pci resources left off by a 'lazy' BIOS:
options PCI_ENABLE_IO_MODES
#options PCI_QUIET #quiets PCI code on chipset settings
# The `ahc' device provides support for the Adaptec 29/3940(U)(W)
# and motherboard based AIC7870/AIC7880 adapters.
#
# The `amd' device provides support for the AMD 53C974 SCSI host
# adapter chip as found on devices such as the Tekram DC-390(T).
#
# The `bge' device provides support for gigabit ethernet adapters
# based on the Broadcom BCM570x familiy of controllers, including the
# 3Com 3c996-T, the Netgear GA302T, the SysKonnect SK-9D21 and SK-9D41,
# and the embedded gigE NICs on Dell PowerEdge 2550 servers.
#
# The `ncr' device provides support for the NCR 53C810 and 53C825
# self-contained SCSI host adapters.
#
# The `isp' device provides support for the Qlogic ISP 1020, 1040
# nd 1040B PCI SCSI host adapters, ISP 1240 Dual Ultra SCSI,
# ISP 1080 and 1280 (Dual) Ultra2, ISP 12160 Ultra3 SCSI, as well as
# the Qlogic ISP 2100 and ISP 2200 Fibre Channel Host Adapters.
#
# The `dc' device provides support for PCI fast ethernet adapters
# based on the DEC/Intel 21143 and various workalikes including:
# the ADMtek AL981 Comet and AN985 Centaur, the ASIX Electronics
# AX88140A and AX88141, the Davicom DM9100 and DM9102, the Lite-On
# 82c168 and 82c169 PNIC, the Lite-On/Macronix LC82C115 PNIC II
# and the Macronix 98713/98713A/98715/98715A/98725 PMAC. This driver
# replaces the old al, ax, dm, pn and mx drivers. List of brands:
# Digital DE500-BA, Kingston KNE100TX, D-Link DFE-570TX, SOHOware SFA110,
# SVEC PN102-TX, CNet Pro110B, 120A, and 120B, Compex RL100-TX,
# LinkSys LNE100TX, LNE100TX V2.0, Jaton XpressNet, Alfa Inc GFC2204,
# KNE110TX.
#
# The `de' device provides support for the Digital Equipment DC21040
# self-contained Ethernet adapter.
#
# The `em' device provides support for the Intel Pro/1000 Family of Gigabit
# adapters (82542, 82543, 82544, 82540).
#
# The `fxp' device provides support for the Intel EtherExpress Pro/100B
# PCI Fast Ethernet adapters.
#
# The `gx' device provides support for the Intel Pro/1000 Gigabit Ethernet
# PCI adapters (82542, 82543-F, 82543-T).
#
# The 'lge' device provides support for PCI gigabit ethernet adapters
# based on the Level 1 LXT1001 NetCellerator chipset. This includes the
# D-Link DGE-500SX, SMC TigerCard 1000 (SMC9462SX), and some Addtron cards.
#
# The 'nge' device provides support for PCI gigabit ethernet adapters
# based on the National Semiconductor DP83820 and DP83821 chipset. This
# includes the SMC EZ Card 1000 (SMC9462TX), D-Link DGE-500T, Asante
# FriendlyNet GigaNIX 1000TA and 1000TPC, the Addtron AEG320T, the
# LinkSys EG1032 and EG1064, the Surecom EP-320G-TX and the Netgear GA622T.
#
# The 'pcn' device provides support for PCI fast ethernet adapters based
# on the AMD Am79c97x chipsets, including the PCnet/FAST, PCnet/FAST+,
# PCnet/PRO and PCnet/Home. These were previously handled by the lnc
# driver (and still will be if you leave this driver out of the kernel).
#
# The 'rl' device provides support for PCI fast ethernet adapters based
# on the RealTek 8129/8139 chipset. Note that the RealTek driver defaults
# to using programmed I/O to do register accesses because memory mapped
# mode seems to cause severe lockups on SMP hardware. This driver also
# supports the Accton EN1207D `Cheetah' adapter, which uses a chip called
# the MPX 5030/5038, which is either a RealTek in disguise or a RealTek
# workalike. Note that the D-Link DFE-530TX+ uses the RealTek chipset
# and is supported by this driver, not the 'vr' driver.
#
# The 'sf' device provides support for Adaptec Duralink PCI fast
# ethernet adapters based on the Adaptec AIC-6915 \"starfire\" controller.
# This includes dual and quad port cards, as well as one 100baseFX card.
# Most of these are 64-bit PCI devices, except for one single port
# card which is 32-bit.
#
# The 'ste' device provides support for adapters based on the Sundance
# Technologies ST201 PCI fast ethernet controller. This includes the
# D-Link DFE-550TX.
#
# The 'sis' device provides support for adapters based on the Silicon
# Integrated Systems SiS 900 and SiS 7016 PCI fast ethernet controller
# chips.
#
# The 'sk' device provides support for the SysKonnect SK-984x series
# PCI gigabit ethernet NICs. This includes the SK-9841 and SK-9842
# single port cards (single mode and multimode fiber) and the
# SK-9843 and SK-9844 dual port cards (also single mode and multimode).
# The driver will autodetect the number of ports on the card and
# attach each one as a separate network interface.
#
# The 'ti' device provides support for PCI gigabit ethernet NICs based
# on the Alteon Networks Tigon 1 and Tigon 2 chipsets. This includes the
# Alteon AceNIC, the 3Com 3c985, the Netgear GA620 and various others.
# Note that you will probably want to bump up NMBCLUSTERS a lot to use
# this driver.
#
# The 'tl' device provides support for the Texas Instruments TNETE100
# series 'ThunderLAN' cards and integrated ethernet controllers. This
# includes several Compaq Netelligent 10/100 cards and the built-in
# ethernet controllers in several Compaq Prosignia, Proliant and
# Deskpro systems. It also supports several Olicom 10Mbps and 10/100
# boards.
#
# The `tx' device provides support for the SMC 9432 TX, BTX and FTX cards.
#
# The `txp' device provides support for the 3Com 3cR990 \"Typhoon\"
# 10/100 adapters.
#
# The `vr' device provides support for various fast ethernet adapters
# based on the VIA Technologies VT3043 `Rhine I' and VT86C100A `Rhine II'
# chips, including the D-Link DFE530TX (see 'rl' for DFE530TX+), the Hawking
# Technologies PN102TX, and the AOpen/Acer ALN-320.
#
# The `vx' device provides support for the 3Com 3C590 and 3C595
# early support
#
# The `wb' device provides support for various fast ethernet adapters
# based on the Winbond W89C840F chip. Note: this is not the same as
# the Winbond W89C940F, which is an NE2000 clone.
#
# The `wx' device provides support for the Intel Gigabit Ethernet
# PCI card (`Wiseman').
#
# The `xl' device provides support for the 3Com 3c900, 3c905 and
# 3c905B (Fast) Etherlink XL cards and integrated controllers. This
# includes the integrated 3c905B-TX chips in certain Dell Optiplex and
# Dell Precision desktop machines and the integrated 3c905-TX chips
# in Dell Latitude laptop docking stations.
#
# The `fpa' device provides support for the Digital DEFPA PCI FDDI
# adapter. pseudo-device fddi is also needed.
#
# The `meteor' device is a PCI video capture board. It can also have the
# following options:
# options METEOR_ALLOC_PAGES=xxx preallocate kernel pages for data entry
# figure (ROWS*COLUMN*BYTES_PER_PIXEL*FRAME+PAGE_SIZE-1)/PAGE_SIZE
# options METEOR_DEALLOC_PAGES remove all allocated pages on close(2)
# options METEOR_DEALLOC_ABOVE=xxx remove all allocated pages above the
# specified amount. If this value is below the allocated amount no action
# taken
# options METEOR_SYSTEM_DEFAULT={METEOR_PAL|METEOR_NTSC|METEOR_SECAM}, used
# for initialization of fps routine when a signal is not present.
#
# The 'bktr' device is a PCI video capture device using the Brooktree
# bt848/bt848a/bt849a/bt878/bt879 chipset. When used with a TV Tuner it forms a
# TV card, eg Miro PC/TV, Hauppauge WinCast/TV WinTV, VideoLogic Captivator,
# Intel Smart Video III, AverMedia, IMS Turbo, FlyVideo.
#
# options OVERRIDE_CARD=xxx
# options OVERRIDE_TUNER=xxx
# options OVERRIDE_MSP=1
# options OVERRIDE_DBX=1
# These options can be used to override the auto detection
# The current values for xxx are found in src/sys/dev/bktr/bktr_card.h
# Using sysctl(8) run-time overrides on a per-card basis can be made
#
# options BROOKTREE_SYSTEM_DEFAULT=BROOKTREE_PAL
# or
# options BROOKTREE_SYSTEM_DEFAULT=BROOKTREE_NTSC
# Specifes the default video capture mode.
# This is required for Dual Crystal (28&35Mhz) boards where PAL is used
# to prevent hangs during initialisation. eg VideoLogic Captivator PCI.
#
# options BKTR_USE_PLL
# PAL or SECAM users who have a 28Mhz crystal (and no 35Mhz crystal)
# must enable PLL mode with this option. eg some new Bt878 cards.
#
# options BKTR_GPIO_ACCESS
# This enable IOCTLs which give user level access to the GPIO port.
#
# options BKTR_NO_MSP_RESET
# Prevents the MSP34xx reset. Good if you initialise the MSP in another OS first
#
# options BKTR_430_FX_MODE
# Switch Bt878/879 cards into Intel 430FX chipset compatibility mode.
#
# options BKTR_SIS_VIA_MODE
# Switch Bt878/879 cards into SIS/VIA chipset compatibility mode which is
# needed for some old SiS and VIA chipset motherboards.
# This also allows Bt878/879 chips to work on old OPTi (<1997) chipset
# motherboards and motherboards with bad or incomplete PCI 2.1 support.
# As a rough guess, old = before 1998
#
#
# Options for ISP
#
# ISP_TARGET_MODE - enable target mode operation
#options ISP_TARGET_MODE=1
# Options used in dev/sym/ (Symbios SCSI driver).
#options SYM_SETUP_LP_PROBE_MAP #-Low Priority Probe Map (bits)
# Allows the ncr to take precedence
# 1 (1<<0) -> 810a, 860
# 2 (1<<1) -> 825a, 875, 885, 895
# 4 (1<<2) -> 895a, 896, 1510d
#options SYM_SETUP_SCSI_DIFF #-HVD support for 825a, 875, 885
# disabled:0 (default), enabled:1
options SYM_SETUP_PCI_PARITY #-PCI parity checking
# disabled:0, enabled:1 (default)
#options SYM_SETUP_MAX_LUN #-Number of LUNs supported
# default:8, range:[1..64]
# Set the number of sf_bufs to allocate. sf_bufs are virtual buffers
# for sendfile(2) that are used to map file VM pages, and normally
# default to a quantity that is roughly 16*MAXUSERS+512. You would
# typically want about 4 of these for each simultaneous file send.
#
options NSFBUFS=1024
# Set the size of the buffer cache KVM reservation, in buffers. This is
# scaled by approximately 16384 bytes. The system will auto-size the buffer
# cache if this option is not specified.
#
options NBUF=512
# Set the size of the mbuf KVM reservation, in clusters. This is scaled
# by approximately 2048 bytes. The system will auto-size the mbuf area
# to (512 + maxusers*16) if this option is not specified.
# maxusers is in turn computed at boot time depending on available memory
# or set to the value specified by \"options MAXUSERS=x\" (x=0 means
# autoscaling).
# So, to take advantage of autoscaling, you have to remove both
# NMBCLUSTERS and MAXUSERS (and NMBUFS) from your kernel config.
#
options NMBCLUSTERS=1024
# Set the number of mbufs available in the system. Each mbuf
# consumes 256 bytes. The system will autosize this (to 4 times
# the number of NMBCLUSTERS, depending on other constraints)
# if this option is not specified.
#
options NMBUFS=4096
# Tune the kernel malloc area parameters. VM_KMEM_SIZE represents the
# minimum, in bytes, and is typically (12*1024*1024) (12MB).
# VM_KMEM_SIZE_MAX represents the maximum, typically 200 megabytes.
# VM_KMEM_SIZE_SCALE can be set to adjust the auto-tuning factor, which
# typically defaults to 4 (kernel malloc area size is physical memory
# divided by the scale factor).
#
options VM_KMEM_SIZE=\"(10*1024*1024)\"
options VM_KMEM_SIZE_MAX=\"(100*1024*1024)\"
options VM_KMEM_SIZE_SCALE=\"4\"
# Set the amount of time (in seconds) the system will wait before
# rebooting automatically when a kernel panic occurs. If set to (-1),
# the system will wait indefinitely until a key is pressed on the
# console.
options PANIC_REBOOT_WAIT_TIME=16
################################################################################
" > ${KERNELCONFIG}
;;
esac
fi
################################################################################
if [ -f /etc/make.conf ] ; then
echo "/etc/make.conf existiert schon..."
else
echo "/etc/make.conf wird angelegt..."
echo "
CPUTYPE="$CPUSRC"
BDECFLAGS= -W -Wall -ansi -pedantic -Wbad-function-cast -Wcast-align -Wcast-qual -Wchar-subscripts -Winline -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wwrite-strings
USA_RESIDENT= YES
MASTER_SITE_BACKUP?=ftp://ftp.de.freebsd.org/pub/FreeBSD/ports/distfiles/\${DIST_SUBDIR}/
MASTER_SITE_OVERRIDE?= \${MASTER_SITE_BACKUP}
MASTER_SORT_REGEX?= ^file: ^ftp://ftp\.FreeBSD\.org/pub/FreeBSD/ports/local-distfiles/ ://[^/]*\.de/ ://[^/]*\.de\.
SUP_UPDATE= yes
SUP= /usr/local/bin/cvsup
SUPFLAGS= -g -L 2
SUPHOST= cvsup.FreeBSD.org
SUPFILE= /etc/stable-supfile
PORTSSUPFILE= /etc/ports-supfile
DOC_LANG= de_DE.ISO8859-15 de_DE.ISO8859-1 en_US.ISO8859-1
#
################################################################################
# Siehe /etc/defaults/make.conf fuer mehr Optionen!
################################################################################
#
" > /etc/make.conf
fi
################################################################################
cd /usr/obj
chflags -R noschg *
rm -fr *
cd /var/tmp
chflags -R noschg temproot
rm -fr temproot
cd /usr
################################################################################
case $DOCSUP in
[Yy][Ee][Ss])
/usr/local/bin/cvsup -g -L 2 /etc/doc-supfile
;;
esac
case $STABLESUP in
[Yy][Ee][Ss])
echo "Es wird fuer \"${CPUNO}\" optimiert ..."
/usr/local/bin/cvsup -g -L 2 /etc/stable-supfile && \
cd /usr/src/ && \
/usr/bin/make buildworld && \
/usr/bin/make buildkernel KERNCONF=GENERIC && \
/usr/bin/make buildkernel KERNCONF=MYKERNEL
;;
esac
case $PORTSSUP in
[Yy][Ee][Ss])
/usr/local/bin/cvsup -g -L 2 /etc/ports-supfile
;;
esac
################################################################################
case $1 in
[Ii][Nn][Ss][Tt][Aa][Ll][Ll])
cd /usr/src && \
/usr/bin/make installkernel KERNCONF=GENERIC && \
cp /kernel /kernel.GENERIC && \
/usr/bin/make installkernel KERNCONF=MYKERNEL && \
/usr/bin/make installworld && \
mergemaster
;;
esac
################################################################################
echo "
################################################################################
Wenn Sie das System updaten wollen muessen Sie folgende Befehle eingeben:
cd /usr/src
/usr/bin/make installkernel KERNCONF=GENERIC
oder
/usr/bin/make installkernel KERNCONF=MYKERNEL
/usr/bin/shutdown now
Nach dem Start im Single-User-Mode (boot kernel -s / kernel -s):
'ENTER'
/sbin/mount -a
/usr/bin/su -
cd /usr/src
/usr/bin/make installworld
mergemaster
/sbin/shutdown -r now
"
################################################################################