## Chapter 7. Implementing Autoinstall¶

Obviously, the best time to make configuration changes to a system is when that system is first being built. For customers who already use AutoYaST or Kickstart effectively, the bootstrapping script is an ideal addition to that process.

Once all of the configuration issues have been resolved, a system may also register with the local SUSE Manager Servers using the /usr/sbin/rhnreg_ks utility that comes with the `spacewalk-client-setup` RPM. This chapter discusses the proper use of rhnreg_ks to register systems.

The /usr/sbin/rhnreg_ks utility uses activation keys to register, entitle, and subscribe systems to specified channels in one swift motion. To find out more about activation keys, refer to the Red Hat Update Agent chapter of the SUSE Manager Reference Guide.

The following commented Kickstart file is an ideal example of how a system can be configured from start to finish using Kickstart.

    # Generic 7.2 kickstart for laptops in the Widget Corporation (widgetco)

    # Standard kickstart options for a network-based install. For an
    # explanation of these options, consult the Red Hat Linux Customization
    # Guide.

    lang en_US
    langsupport --default en_US en_US
    keyboard defkeymap
    network --bootproto dhcp
    install
    url --url ftp://ftp.widgetco.com/pub/redhat/linux/7.2/en/os/i386
    zerombr yes
    clearpart --all
    part /boot       --size 128 --fstype ext3 --ondisk hda
    part /                   --size 2048 --grow --fstype ext3 --ondisk hda
    part /backup --size 1024 --fstype ext3 --ondisk hda
    part swap               --size 512 --ondisk hda
    bootloader --location mbr
    timezone America/New_York
    rootpw --iscrypted $1$78Jnap82Hnd0PsjnC8j3sd2Lna/Hx4.
    auth --useshadow --enablemd5 --krb5realm .COM --krb5kdc auth.widgetco.com \
            --krb5adminserver auth.widgetco.com
    mouse --emulthree genericps/2
    xconfig --card "S3 Savage/MX" --videoram 8192   --resolution 1024x768 \
            --depth 16 --defaultdesktop=GNOME --startxonboot --noprobe \
             --hsync 31.5-48.5 --vsync 40-70

    reboot

    # Define a standard set of packages.    Note: Red Hat Network client
    # packages are found in Base.   This is quite a minimal set of packages;
    # your mileage may vary.

    %packages
    @ Base
    @ Utilities
    @ GNOME
    @ Laptop Support
    @ Dialup Support
    @ Software Development
    @ Graphics and Image Manipulation
    @ Games and Entertainment
    @ Sound and Multimedia Support

    # Now for the interesting part.

    %post
    ( # Note that we run the entire %post section as a subshell for logging.

    # Remember that nifty one-line command for the bootstrap script that we
    # went through? This is an ideal place for it. And assuming that the
    # script has been properly configured, it should prepare the system
    # fully for usage of local Red Hat Network Servers.

    wget -O- http://proxy-or-sat.example.com/pub/bootstrap_script | /bin/bash

    # The following is an example of the usage of rhnreg_ks, the kickstart
    # utility for rhn_register. This demonstrates the usage of the
    # --activationkey flag, which describes an activation key. For example,
    # this activation key could be set up in the Web interface to join this
    # system to the "Laptops" group and the local Widgetco "Laptop Software"
    # channel. Note that this section applies only to Proxy users, as this
    # step is handled by the Satellite bootstrap script.
    #
    # For more information about activation keys, consult the Red Hat Network
    # Management Reference Guide.

    /usr/sbin/rhnreg_ks --activationkey=6c933ea74b9b002f3ac7eb99619d3374

    # End the subshell and capture any output to a post-install log file.
    ) 1>/root/post_install.log 2>&1