############################################################################## # Alle Variablen muessen als Prefix C_ verwenden und in ksh93 syntax # beschrieben werden. # # installManager.sh sucht beim Hinzufuegen von clients (-a hostname) zuerst # diese Datei und sourced sie, dann die entsprechende $fqdn.cfg oder # $host.dom.cfg (ersten 2 Teile vom FQDN) oder $host.cfg oder $ip.cfg in dieser # Reihenfolge. First Match wins und wird gesourced. Damit ist ein ueberschreiben # der default Einstellungen in dieser Datei moeglich. Wird keine dem client # entsprechende config gefunden, bleibt's halt bei den defaults. # Anschließend wird im Verzeichnis ./generated/ nach $fqdn.cfg, $ip.cfg und # $host.cfg gesucht (first match wins), gesourced und dessen Werte benutzt, # falls eine in dieser Datei gelistete Variable nicht gesetzt ist. Soll dieser # Schritt nicht ausgeführt werden, muß die Option -o (overwrite) beim Aufruf # vom installManager.sh angegeben werden. Dateien unter ./generated/ werden # erzeugt, wenn installManager.sh mit einer client verbundenen Option erstmalig # aufgerufen wird (z.B. -a). Sie werden nicht mehr nicht mehr gelöscht (nur # noch bei Bedarf überschrieben). # Last but not least wird nach ./devision-${C_DEVISION}.cfg gesucht und falls # vorhanden gesourced. Falls C_DEVISION nicht explizit gesetzt ist, wird # bzgl. client IP das Class C Subnetz bestimmt und versucht, C_DEVISION # entsprechend zu setzen. Gelingt das nicht, wird C_DEVISION=fin gesetzt. # # Generell ist zu beachten, daß Terme mit wildcards aka '*' oder whitespaces # in single quotes (Hochkomma) eingeschlossen werden muessen! Dort wo # 'typeset -a' steht, sollte es auch bleiebn, anderenfalls kommt Mist raus. # 'typeset -r' Zeilen sollten in nicht template.cfg Dateien auskomentiert # werden, anderenfalls werden Warnung zwecks Read-Only produziert. ############################################################################## # Installations-Typ. Bei 'desktop' wird i.d.R. komplett alles installiert, # bei 'server' nur ein minimal Satz an Software. Falls nicht gesetzt, wird # versucht, anhand der IP-Adresse den Typ zu setzen (letztes Byte < 32 # resultiert in 'server', sonst 'desktop'). # Format: desktop|server C_TYPE= # MacAdresse des Client-Interfaces, was bei der Installation verwendet wird. # Wenn nicht gesetzt, wird versucht, die MacAdresse automatisch zu ermitteln # (durch ping+arp table, database ethers). REQUIRED. # Format: 00:00:00:00:00:00 C_MAC= # IP-Addrese des Clients zur Installationszeit. Das ist das einzige Kriterium, # daß unser Installserver zur Übermittlung des korrekten Manifests und Profiles # verwendet. Falls nicht gesetzt, wird versucht, selbige per DNS zu ermitteln. # REQUIRED. # Format: N.N.N.N C_IP= # Art der zu verwendenden console. Falls nicht gesetzt, wird beim Typ desktop # graphics sonst ttya verwendet. Bei der tty kann optional noch die # Baudrate angegeben werden. Sun-Kisten verwenden per default 9600, SuperMicro- # Kisten 115200 . # Format: graphics|text|tty{a-c}[:speed] C_CONS= # Institut/Einheit, der der client zugeordnet ist. Falls nicht gesetzt, wird # der anhand der IP-Adresse bestimmt. # Format: 'iks'|'iks-manage'|'ivs'|'isg'|'iti'|'fin' C_DEVISION= # Boot-Disk(s), die formatiert und fuer den ZFS root pool 'rpool' benutzt # werden soll(en). Falls nicht gesetzt (default), wird es dem Installer # ueberlassen, welche er nimmt (i.d.R. die erste die er findet und grosz genug # ist). Hat man irgendwelche Enclosures (JBOD/RAID) dran, kann das mal schnell # in die Hose gehen! Wird 'boot_disk' gesetzt, versucht der Installer eine # bootdisk zu bestimmen und nimmt die. Kann er keine bestimmen (i.d.R. bei # Nicht-Sun/Oracle HW), bricht die Installation ab. Das ist die beste Variante, # um erstmal herauszufinden, wie die Controller durchnummeriert werden (musz # nicht die gleiche sein, wie bisher) und wie die avisierte Platte spezifiziert # werden kann (z.B. ctd:c2t5000C5002C596D77d0 oder ctd:c0t2d0). Alternativ # kann man der Platte einen eindeutigen Volname per 'format' verpassen und dann # dieses als volid:... angeben - sicherste Methode! # Format: spec[;spec]* # spec := 'ctd'|'volid'|'devpath'|'devid'|'receptable':value|'boot_disk' # ctd .. controller, target, disk (z.B. c0t5000C5002C596D77d0) # volid .. volume ID (siehe format | volname) # devpath .. device path (z.B. /scsi_vhci/disk@g5000c5002c596d77) # devid .. device id (z.B. id1,sd@n5000c5002c596d77) # receptable .. Behaelter/Einschub (z.B. SLOT_01_ oder SYS/HD_ID_0) C_DISK= # Locale defaults: typeset -r -a C_LOCALE_SERVER=( de de_DE en en_US ) typeset -r -a C_LOCALE_DESKTOP=( ALL ) # Liste mit zu installierenden Locales. Falls leer, wird je nach Typ # C_LOCALE_SERVER bzw. C_LOCALE_DESKTOP verwendet. # Derzeit bekannte Locales sind ( de de_DE en en_US es es_ES fr fr_FR \ # it it_IT ja 'ja_*' ko 'ko_*' pt pt_BR zh zh_CN zh_TW ). 'ALL' ist ein # alias für '*' und wird als Liste aller verfügbaren Locales behandelt. # Format: '(' locale ... ')' typeset -a C_LOCALE=( ) # NODOC defaults: typeset -r -a C_NODOCS_SERVER=( doc doc.html doc.info doc.pdf doc.man devel ) typeset -r -a C_NODOCS_DESKTOP=( ) # Liste NICHT zu installierender Dokumentation. Falls leer, wird je nach Typ # C_NODOCS_SERVER bzw. C_NODOCS_DESKTOP verwendet. # 'ALL' und '*' sind ein Alias für C_NODOCS_SERVER. # Format: '(' facet ... ')' typeset -a C_NODOCS=( ) # ADDPKG: zusätzliche Pakete, die in den default Installsets (slim_install # bzw. solaris-small-server) nicht enthalten sind # default Zusatz-Installset fuer server bzgl. 'solaris-small-server' # media-volume-manager für einfacheren Zugriff auf removable media wie # USB-Stick oder DVD (siehe rmmount [-l], eject [-l]) -> ca. 5 MB ohne docs, # ca. 55 MB inkl. docs. # /system/library/libpcap \ typeset -r -a C_ADDPKG_SERVER=( \ /benchmark/iperf \ /developer/apptrace \ /diagnostic/fping \ /diagnostic/httping \ /diagnostic/iftop \ /editor/vim \ /file/tree \ /media/mtx \ /network/netcat \ /network/telnet \ /security/bart \ /service/network/ntp \ /service/storage/ndmp \ /shell/pipe-viewer \ /shell/tcsh \ /system/data/hardware-registry \ /system/device-allocation \ /system/fault-management/fm-snmp-mib \ /system/fault-management/snmp-notify \ /system/fru-id \ /system/fru-id/platform \ /system/io/test-drivers \ /system/kernel/dynamic-reconfiguration/i86pc \ /system/management/pcitool \ /system/management/snmp/net-snmp \ /system/network/ipqos \ /system/network/ipqos/ipqos-config \ /system/storage/media-volume-manager \ /system/storage/sg3_utils \ /text/gnu-patch \ /text/gnu-sed \ ) typeset -A PKG # Desktop-Pakete, die aber nicht auf sunray server sollen PKG[NOSUNRAY]=( \ /desktop/synergy \ /desktop/xscreensaver/hacks \ /desktop/xscreensaver/hacks/hacks-gl \ /desktop/xscreensaver/hacks/rss-glx \ ) # Desktop-Pakete, die nur auf sunray server sollen PKG[SUNRAY]=( \ /gnome/config/gconf/multi-user-desktop \ /web/browser/firefox/multi-user-desktop \ ) # Pakete fuer Entwickler PKG[DEVELOP]=( \ /developer/build/autoconf \ /developer/build/autoconf/xorg-macros \ /developer/build/autogen \ /developer/build/automake-110 \ /developer/build/imake \ /developer/build/libtool \ /developer/build/makedepend \ /developer/documentation-tool/doxygen \ /developer/documentation-tool/gtk-doc \ /developer/icu \ /developer/lexer/flex \ /developer/library/lint \ /developer/library/profiled-libc \ /developer/macro/gnu-m4 \ /developer/parser/antlr-2 \ /developer/parser/bison \ /developer/python/pylint \ /developer/quilt \ /developer/swig \ /developer/meld \ /developer/xopen/xcu4 \ /documentation/gnome/gnome-devel-docs \ /image/nvidia/cg-toolkit \ /library/c++/stdcxx \ /library/idnkit \ /library/idnkit/header-idnkit \ /text/gnu-gettext \ /text/locale \ ) # GCC pakete, die auch per default nirgends drin sind PKG[GCC]=( \ /developer/debug/gdb \ /developer/gcc-3 \ /developer/gcc-45 \ /developer/gnu-binutils \ /developer/openmpi-15 \ ) # default Zusatz-Installset fuer normale Desktop-Clients typeset -r -a C_ADDPKG_DESKTOP=( \ ${PKG[DEVELOP][@]} \ ${PKG[GCC][@]} \ ${PKG[NOSUNRAY][@]} \ /archiver/unrar \ /benchmark/filebench \ /benchmark/gtkperf \ /benchmark/iperf \ /benchmark/x11perf \ /communication/conferencing/ekiga \ /data/docbook/docbook-dtds \ /data/docbook/docbook-style-xsl \ /data/xml-common \ /database/sqlite-3/documentation \ /database/mysql-51 \ /database/mysql-51/library \ /desktop/file-manager/gnome-commander \ /desktop/gftp \ /desktop/irc/xchat \ /desktop/project-management/openproj \ /desktop/project-management/planner \ /desktop/remote-desktop/rdesktop \ /desktop/remote-desktop/tsclient \ /desktop/remote-desktop/vinagre \ /desktop/studio/jokosher \ /desktop/synergy \ /desktop/system-monitor/gkrellm \ /developer/apptrace \ /developer/gperf \ /developer/java/jdk-6 \ /developer/java/jdk-7 \ /developer/java/junit \ /developer/versioning/cvs \ /developer/versioning/git \ /developer/versioning/mercurial \ /developer/versioning/subversion \ /diagnostic/fping \ /diagnostic/httping \ /diagnostic/iftop \ /diagnostic/nmap \ /diagnostic/wireshark \ /diagnostic/wireshark/tshark \ /diagnostic/wireshark/wireshark-common \ /editor/blog/drivel \ /editor/diagram/dia \ /editor/gnu-emacs/gnu-emacs-gtk \ /editor/gnu-emacs \ /editor/gnu-emacs/gnu-emacs-no-x11 \ /editor/gnu-emacs/gnu-emacs-lisp \ /editor/gobby \ /editor/hexedit \ /editor/xedit \ /file/lndir \ /file/mc \ /file/tree \ /games/gnome-games \ /gnome/cmdassist \ /gnome/config/gconf/gconf-editor \ /gnome/media/sound-recorder \ /gnome/theme/blueprint \ /gnome/theme/cursor/dmz-cursor \ /gnome/theme/cursor/dmz-cursor-aa \ /gnome/theme/gnome-themes-extra \ /gnome/theme/gtk2-engines-extra \ /image/editor/bitmap \ /image/editor/gimp \ /image/editor/gimp/gimp-help \ /image/editor/gimp/plugin/gimp-gtkam \ /image/gnome-backgrounds \ /image/gnuplot \ /image/gocr \ /image/graphviz \ /image/graphviz/graphviz-java \ /image/graphviz/graphviz-lua \ /image/graphviz/graphviz-ocaml \ /image/graphviz/graphviz-perl-512 \ /image/graphviz/graphviz-php \ /image/graphviz/graphviz-python-26 \ /image/graphviz/graphviz-ruby \ /image/scanner/xsane \ /image/scanner/xsane/sane-backends \ /image/scanner/xsane/sane-frontend \ /image/viewer/eog/eog-plugins \ /image/viewer/gqview \ /image/viewer/gthumb \ /image/webcam/cheese \ /image/xcursorgen \ /library/audio/gstreamer/plugin/gnonlin \ /library/audio/libmikmod \ /library/desktop/gtk-vnc \ /library/fftw-3 \ /library/gd \ /library/graphics/libmng \ /library/id3lib \ /library/guile \ /library/java/javadb \ /library/java/subversion \ /library/perl-5/subversion \ /library/python-2/python-imaging-26 \ /library/python-2/subversion \ /mail/fetchmail \ /mail/mutt \ /mail/procmail \ /network/chat/ircii \ /network/chat/irssi \ /runtime/clisp \ /runtime/erlang \ /runtime/erlang/documentation \ /runtime/java/beanshell \ /runtime/lua \ /runtime/ocaml \ /runtime/python-27 \ /runtime/ruby-18 \ /service/network/finger \ /service/network/talk \ /service/network/telnet \ /source/demo/ksh \ /system/file-system/uvfs \ /system/font/daewoo-misc \ /system/font/gnome-fonts \ /system/font/sun-ja-bitmap \ /system/font/sun-ja-bitmap-unicode \ /system/font/truetype/bitstream-vera \ /system/font/truetype/fonts-core \ /system/font/truetype/gentium \ /system/font/truetype/google-droid \ /system/font/truetype/ipafont-mincho \ /system/font/truetype/unifont \ /system/font/xorg/iso8859-15 \ /system/header \ /system/input-method/ibus/pinyin \ /system/library/iconv/extra \ /system/library/iconv/unicode \ /system/library/iconv/xsh4/latin \ /system/management/freeipmi \ /system/management/pcitool \ /system/network/ipqos \ /terminal/dialog \ /terminal/conman \ /terminal/pconsole \ /terminal/terminator \ /text/auto_ef \ /text/convmv \ /text/diffstat \ /text/o3read \ /text/patchutils \ /text/tidy \ /web/browser/elinks \ /web/browser/links \ /web/browser/lynx \ /web/editor/bluefish \ /web/java-servlet/tomcat \ /web/server/apache-22/documentation \ /web/server/apache-22/module/apache-dtrace \ /web/server/apache-22/module/apache-fcgid \ /web/server/apache-22/module/apache-jk \ /web/server/apache-22/module/apache-proxy_html \ /web/server/apache-22/module/apache-sed \ /web/server/apache-22/module/apache-xml2enc \ /x11/header/rasterfile \ /x11/xt-resource-utilities \ /web/php-52 \ /web/php-52/documentation \ /web/php-52/extension/php-mysql \ /web/php-52/extension/php-suhosin \ /library/libproxy/libproxy-mozjs \ ) # Liste zusätzliche zu installierender solaris Pakete. Wenn leer, wird je nach # Typ C_ADDPKG_SERVER bzw. C_ADDPKG_DESKTOP verwendet. # Format: '(' pkgname ... ')' typeset -a C_ADDPKG=( ) # Infiniband-Kram # /driver/infiniband/tavor \ # nehmen wir raus, da das per default nur bei sparc drin ist und somit die # uninstall Phase crashen würde PKG[IB]=( \ /driver/infiniband/connectx \ /system/io/infiniband/udapl \ /system/io/infiniband/rpc-over-rdma \ /system/io/infiniband/reliable-datagram-sockets-v3 \ /system/io/infiniband/reliable-datagram-sockets \ /system/io/infiniband/open-fabrics \ /system/io/infiniband/ip-over-ib \ /system/io/infiniband/ib-sockets-direct \ /system/io/infiniband/ib-device-mgt-agent \ /system/io/infiniband/ethernet-over-ib \ ) # not system/io/infiniband <- system/storage/iscsi/iscsi-iser deps # WLAN-Kram PKG[WLAN]=( \ /driver/network/wlan/arn \ /driver/network/wlan/ath \ /driver/network/wlan/atu \ /driver/network/wlan/ipw \ /driver/network/wlan/iwh \ /driver/network/wlan/iwi \ /driver/network/wlan/iwk \ /driver/network/wlan/iwp \ /driver/network/wlan/mwl \ /driver/network/wlan/pcan \ /driver/network/wlan/pcwl \ /driver/network/wlan/ral \ /driver/network/wlan/rtw \ /driver/network/wlan/rum \ /driver/network/wlan/rwd \ /driver/network/wlan/rwn \ /driver/network/wlan/uath \ /driver/network/wlan/ural \ /driver/network/wlan/urtw \ /driver/network/wlan/wpi \ /driver/network/wlan/zyd \ /service/network/wpa \ ) # Remote Administration Daemon Zeux # /system/management/rad/module/rad-kstat \ # nehmen wir raus, da das per default nicht in solaris-small-server drin ist # und somit die uninstall Phase crashen würde PKG[RAD]=( \ /system/management/rad \ /system/management/rad/client/rad-java \ /system/management/rad/client/rad-python \ /system/management/rad/module/rad-smf \ /system/management/rad/module/rad-usermgr \ ) # Man pages inkl. Tools PKG[MAN]=( \ /text/groff/groff-core \ /text/doctools \ /system/manual \ ) # Treiber, die i.d.R. (zumindest nicht auf unseren) servern gebraucht werden. PKG[DRV]=( \ /driver/fc/qlc \ /driver/network/ethernet/afe \ /driver/network/ethernet/amd8111s \ /driver/network/ethernet/atge \ /driver/network/ethernet/bfe \ /driver/network/ethernet/bnx \ /driver/network/ethernet/bnxe \ /driver/network/ethernet/chxge \ /driver/network/ethernet/cxge \ /driver/network/ethernet/dmfe \ /driver/network/ethernet/dnet \ /driver/network/ethernet/elxl \ /driver/network/ethernet/hme \ /driver/network/ethernet/hxge \ /driver/network/ethernet/iprb \ /driver/network/ethernet/mxfe \ /driver/network/ethernet/myri10ge \ /driver/network/ethernet/ntxn \ /driver/network/ethernet/nxge \ /driver/network/ethernet/pcn \ /driver/network/ethernet/qlcnic \ /driver/network/ethernet/rge \ /driver/network/ethernet/rtls \ /driver/network/ethernet/sfe \ /driver/network/ethernet/sxge \ /driver/network/ethernet/usbecm \ /driver/network/ethernet/vr \ /driver/network/ethernet/vxge \ /driver/network/ethernet/xge \ /driver/network/ethernet/yge \ /driver/parallel/ecpp \ /driver/storage/arcmsr \ /driver/storage/bcm_sata \ /driver/storage/cpqary3 \ /driver/storage/nv_sata \ /driver/storage/pcata \ /driver/storage/scsa1394 \ /driver/storage/si3124 \ /driver/xvm/pv \ /system/io/ieee-1394 \ ) # FiberChannel stuff # /driver/fc/emlxs \ # Brauchen wir für die Emulex 10G NICs, und da der Scheiß FC-Treiber ebenfalls # enthält, müssen wir folgendes auch noch zulassen: # /system/io/fc/fc-port \ # /system/io/fc/fc-scsi \ PKG[FC]=( \ /system/library/storage/libfcoe \ /system/io/fc/fc-fabric \ /system/io/fc/fc-san-management \ /system/io/fc/ip-over-fc \ /system/storage/fc-utilities \ /system/storage/fcoe/fcoe-initiator \ ) # Anderes zeux, was wir auf Servern per default nicht haben wollen. # Die ersten zwei sind auch MAN stuff, aber fuer Spanish, Japanisch, Chinesisch # /media/xorriso ist seit S11.0 SRU 11.4 required PKG[MISC]=( \ /text/doctools/ja \ /system/manual/locale \ /system/management/ocm \ /system/fault-management/asr-notify \ /driver/pcmcia \ /runtime/tcl-8 \ /security/tcp-wrapper \ /text/spelling-utilities \ /network/rsync \ /system/dtrace/dtrace-toolkit \ /system/prerequisite/gnu \ /network/open-fabrics \ /web/wget \ /system/network/nis \ /diagnostic/tcpdump \ /naming/ldap \ /security/nss-utilities \ /runtime/java/jre-7 \ /file/gnu-coreutils \ /security/sudo \ ) # DELPKG defaults: Pakete, die aus dem default Installset entfernt werden sollen # per default vom Installset zu entfernende Pakete bei Servern typeset -r -a C_DELPKG_SERVER=( \ ${PKG[IB][@]} ${PKG[WLAN][@]} ${PKG[RAD][@]} ${PKG[MAN][@]} \ ${PKG[MISC][@]} ${PKG[DRV][@]} ${PKG[FC][@]} ) # gehen noch nicht wegen zyklischer Abhaengigkeiten: # /service/security/kerberos-5 /system/library/security/gss/spnego \ # /system/library/gcc-3-runtime /system/boot/wanboot /system/install/locale \ # /library/database/gdbm /system/library/storage/scsi-plugins \ # per default vom Installset zu entfernende Pakete bei Desktops typeset -r -a C_DELPKG_DESKTOP=( /security/sudo ) # Liste NICHT zu installierender solaris Pakete. Wenn leer, wird je nach # Typ C_DELPKG_SERVER bzw. C_DELPKG_DESKTOP verwendet. # Format: '(' pkgname ... ')' typeset -a C_DELPKG=( ) ############################################################################# # PROFILE Kram ############################################################################# # default root password (solaris11cs) # das wird spaeter auch vom bootarchive benutzt, d.h. wenn die Kiste mal nicht # hochkommt und sich wie folgt meldet: # 'Enter user name for system maintainance (control-d to bypass): ' S_ROOTPW_DEFAULT='$5$O.MfxxLZ$ahj2sKINJ5nCA54lsVzB0jX3mzPHyMoJ9Kj4pkRMRV8' # default admin password (jack11cs) S_ADMINPW_DEFAULT='$5$3BzeiMuC$U8S9hoQX.vmNTN.gND6l5FQ1wIidZDNE0kJwzKuWQG0' # Initiales passwort fuer den Account 'root'. Falls nicht gesetzt, wird # S_ROOTPW_DEFAULT statt dessen verwendet. # Format: BSDmd5 | BSDbf | SUNmd5 | SHA256 | SHA512 - siehe crypt.conf(4) S_ROOTPW= # Initiales passwort fuer den Account 'admin'. Falls nicht gesetzt, wird # S_ADMINPW_DEFAULT statt dessen verwendet. # Format: BSDmd5 | BSDbf | SUNmd5 | SHA256 | SHA512 - siehe crypt.conf(4) S_ADMINPW= # default Terminal typ S_TERM_DEFAULT='sun-color' # Terminal typ fuer die System-Console. Falls nicht gesetzt, wird # S_TERM_DEFAULT benutzt # Format: terminal name aus /usr/share/lib/terminfo/*/ S_TERM= # default fuer Tatstatur-Layout S_KBD_DEFAULT=German # Voreingestelltes Tastatur-Layout. Falls nicht gesetzt, wird S_KBD_DEFAULT # verwendet. # Format: siehe /usr/share/lib/keytables/type_6/kbd_layouts S_KBD= # default fuer Sprache S_LANG_DEFAULT='en_US.UTF-8' # Voreingestellte Sprache. Falls nicht gesetzt, wird S_LANG_DEFAULT verwendet. # Sollte eine der in C_LOCALE eingetragenen und am besten UTF-8 sein. # Format: siehe locale -a S_LANG= # Netzwerkinterface das mit der Client-IP konfiguriert werden soll. Solaris 11 # benennt alle mit 'netN' mit N = {0..n} wobei die Numerierung nicht wirklich # einem bestimmten Schema folgt. Bei der Systemkonfiguration konfiguriert AI das # hier angegebene Interface mit der jeweiligen statischen IP. Da es zu diesem # Zeitpunkt nur netN kennt, kann hier auch nur netN angegeben werden. Notfalls # erstmal die 'TextInstall' starten, dort shell auswählen und dann ein # 'dladm show-phys -m' bzw. 'dladm show-phys -L' ausführen, um das richtige # interface zu finden. Ist wichtig, damit ggf. Sachen nachgeladen werden können. # Falls nicht gesetzt, wird 'net0' verwendet. # Format: 'net'N S_NIC= # Info für das first-boot-script, wie es physlinks umbenennen soll (denn # net0 .. netN ist ziemlich nichts sagend). Unsere policy ist die auf dem # Motherboard befindlichen NICs mb0..N zu benennen, wobei N der Beschriftung # des Ports entspricht. Falls diese nicht vorhanden oder von außen erkennbar # ist, von links nach rechts und von oben nach unten durchnumeriert wird # (Bezugspunkt: Motherboard unten). Zum Beispiel: # +---------------------------------------------------+------------+ # | | a | b | c | d | e | f | g |h 0 1 | # | +-----+-----+ | | | 0 | | | | |------------+ # | | mb0 | mb2 | | 0 | | 1 | | | | |i 0 | # | +-----+-----+ | | | 2 | | | | |------------+ # | | mb1 | mb3 | | 1 | | 3 | | 0 | | |j 0 1 2 3 | # +---+-----+-----+-------+---+---+---+---+---+---+---+------------+ # NICs von PCI-Karten werden analog Durchnumeriert: von links nach rechts # == prefix mit 'a' und von oben nach unten == suffix mit 0 beginnend. # Falls leer, wird nix umbenannt, bleibt alles wie es ist. # Format: from':'to ... # wobei from netN oder der physName (z.B. igb0 oder e1000g0 etc.) sein kann typeset -a S_NICMAP=( ) # Zu nutzendes MacAddress-Prefix falls kein prefix explizit gesetzt wurde. S_MACPREFIX_DEFAULT='00:01:01' # MacAddress-Prefix, das für die Erstellung virtueller NICs genutzt werden soll. # Format: HEX':'HEX':'HEX mit HEX = {0 .. FF} zero padded auf 2 Stellen! S_MACPREFIX= # Netzwerkmaske bzgl. client ID. Falls nicht gesetzt, wird '/24' benutzt. # Format: /suffix analog CIDR Notation (suffix == Anzahl der 1-Bits von vorn) S_NETMASK= # Default Router-IP. Falls nicht gesetzt, wird das letzte byte der Client-IP # durch 200 ersetzt. S_DEFROUTER= # Default domain typeset -r -a S_DOMAIN_DEFAULT='cs.ovgu.de' # Domains, die als search Option in die /etc/resolv.conf rein sollen. Falls # nicht gesetzt, wird die aus dem Hostname abgeleitete benutzt. Falls das nicht # moeglch ist, wird S_DOMAIN_DEFAULT benutzt. # Format: '(' domain ... ')' typeset -a S_SEARCHDOMAINS=( ) # Default DNS-Server: ns.cs.ovgu.de ns2.cs.ovgu.de typeset -r -a S_DNS_SERVERS_DEFAULT=( ${ getIP ns.cs.ovgu.de; } ${ getIP ns2.cs.ovgu.de; } ) # IP-Adresse(n) der zu benutzenden DNS-Server. Falls nicht gesetzt, wird # S_DNS_SERVERS_DEFAULT benutzt. # Format: '(' IP ... ')' typeset -a S_DNS_SERVERS=( ) # Default fuer S_IPFNOW typeset -r S_IPFNOW_DEFAULT=true # Gibt an, ob der ipfilter mit der default Konfiguration sofort gestartet # werden soll. Falls nicht gesetzt, wird S_IPFNOW_DEFAULT benutzt. # Format: 'true'|'false' S_IPFNOW= # Default fuer S_IPV6 typeset -r S_IPV6_DEFAULT=false # Falls != true, wird bei der Installation IPv6 deaktiviert. Falls nicht # gesetzt, wird S_IPV6_DEFAULT benutzt. # Format: 'true'|'false' S_IPV6= # Default NTP-Server: ntp.cs.ovgu.de typeset -r -a S_NTP_SERVERS_DEFAULT=( ${ getIP ntp.cs.ovgu.de ; } ) # IP-Adresse(n) der NTP-Server, die waehrend des initialen Setups genutzt # werden sollen. Falls nicht gesetzt, wird S_NTP_SERVER_DEFAULT benutzt. # Format: '(' IP ... ')' typeset -a S_NTP_SERVERS=( ) # Default Netbackup-Server typeset -r -a S_BACKUP_SERVERS_DEFAULT=( '141.44.2.0/24' '141.44.7.0/24' '141.44.8.0/24' ) # IP-Adressen der Netbackup-Server die adhoc in die ipfilter Konfig eingetragen # werden sollen. Falls nicht gesetzt, wird S_BACKUP_SERVER_DEFAULT benutzt. # Format: '(' IP ... ')' typeset -a S_BACKUP_SERVERS=( ) # Default SNMP Management hosts, die Abfragen duerfen typeset -r -a S_SNMPHOSTS_DEFAULT=( '141.44.24.12/30' ) # IP-Adressen der Hosts, die per SNMP den client abfragen duerfen. Falls nicht # gesetzt, wird S_SNMPHOSTS_DEFAULT benutzt. # Format: '(' IP ... ')' typeset -a S_SNMPHOSTS=( ) # IP-Adressen der Hosts auf die per NFS zugegriffen und somit in der ipfilter # Konfig eingetragen werden sollen. Falls der genutzte Installserver via NFS # genutzt wird, wird der automatisch hinzugefuegt. # Format: '(' IP ... ')' typeset -a S_NFSSERVERS=( ) # IP-Adressen der Hosts deren Zugriff via NFS auf diese Maschine und somit in # der ipfilter Konfig eingetragen werden sollen. # Format: '(' IP ... ')' typeset -a S_NFSCLIENTS=( ) # IP-Adressen der Hosts auf die per HTTP[S] zugegriffen und somit in der # ipfilter Konfig eingetragen werden sollen. Falls der genutzte Installserver # via HTTP[S] genutzt wird, wird der automatisch hinzugefuegt. # Format: '(' IP ... ')' typeset -a S_HTTPSERVERS=( ) # IP-Adressen der Hosts deren Zugriff via SSH auf diese Maschine und somit in # der ipfilter Konfig eingetragen werden sollen. # Format: '(' IPF_ADDR ... ')' typeset -a S_ADMINHOSTS=( ) # Dienste die bei der Post-Installation deaktiviert werden sollen (server). # Auf servern wollen wir kein "automount" von removable medias und brauchen # auch nicht legacy links wie /vol/floppy oder CDE-Notify-Kompatibilität - # rmmount|eject [-l] sind völlig ausreichend S_SVCD_SERVER="rmvolmgr fedfs-client shares smserver dbus hal" # Dienste die bei der Post-Installation deaktiviert werden sollen (desktops). S_SVCD_DESKTOP="pkg/update" # Dienste, die bei der Post-Installation deaktiviert werden sollen. Falls nicht # gesetzt, wird je nach Installtyp S_SVCD_SERVER oder S_SVCD_DESKTOP genutzt. # Format: '"'svc[' 'svc]*'"' (durch Leerzeichen getrennte Liste) S_SVCD= # Dienste die bei der Post-Installation aktiviert werden sollen (server). S_SVCE_SERVER="hotplug acpihpd" # Dienste die bei der Post-Installation aktiviert werden sollen (desktops). S_SVCE_DESKTOP="man-index idmap smb/client hotplug acpihpd rmvolmgr" # Dienste, die bei der Post-Installation aktiviert werden sollen. Falls nicht # gesetzt, wird je nach Installtyp S_SVCE_SERVER oder S_SVCE_DESKTOP genutzt. # Format: '"'svc[' 'svc]*'"' (durch Leerzeichen getrennte Liste) S_SVCE= # Script, was nach der Standard-Initialisierung des Systems automatisch # ausgefuehrt werden soll. Das Script wird nach /tmp kopiert und dann # ausgefuehrt (kann also ein script oder binary sein). Falls S_IPFNOW=true, # wird der ipfilter erst nach Ausfuehrung des scripts gestartet. Falls nicht # gesetzt, wird halt nix zusaetzlich ausgefuehrt. # Format: URI wobei nur http[s]|file|ftp schemas unterstuetzt werden S_SCRIPT= # vim:ts=4 filetype=sh