As part of the move from SVR4/jumpstart to IPS/AI, I'm going to need to convert my finish script into something that works for AI.
The script sets up the system so that root can login from anywhere, including via ssh. It then sets the keyboard type so that there is no need for sys-config to ask about it, dumps a bunch of configuration data into jumpstart_environment and finally copies over some files. The files installed are a combination of configuration files that are common to all the hosts that this finish script is used for and some that are specific to the host. The common ones are stored in a .tar file (because they do not change often) whereas others, such as /etc/hostname.*, are placed in a directory tree that mirrors that of the system after install. Finally it adds a user and updates the pam configuration. Darren #!/bin/sh BASE=/a > ${BASE}/jumpstart_environment 2>&1 set -x # # The sequence "mv, cp -p, sed" is intended to ensure that the original file # times, etc, are preserved while the new file gets all of the same owner/group # and permissions before being overwritten with the new contents. # LOGIN=${BASE}/etc/default/login if [ -f ${LOGIN} ] ; then mv ${LOGIN} ${LOGIN}.dist cp -p ${LOGIN}.dist ${LOGIN} sed -e 's/^CONSOLE/#CONSOLE/' ${LOGIN}.dist > ${LOGIN} fi SSHD=${BASE}/etc/ssh/sshd_config if [ -f ${SSHD} ] ; then mv ${SSHD} ${SSHD}.dist cp -p ${SSHD}.dist ${SSHD} sed -e 's/PermitRootLogin no/PermitRootLogin yes/' ${SSHD}.dist > ${SSHD } fi KBD=${BASE}/etc/default/kbd cp ${KBD} ${BASE} if [ -f ${KBD} ] ; then mv ${KBD} ${KBD}.dist cp -p ${KBD}.dist ${KBD} sed -e 's/^#LAYOUT.*/LAYOUT=US-English/' ${KBD}.dist > ${KBD} fi set >> ${BASE}/jumpstart_environment 2>&1 df -k >> ${BASE}/jumpstart_environment 2>&1 pwd >> ${BASE}/jumpstart_environment 2>&1 ps -ef >> ${BASE}/jumpstart_environment 2>&1 ifconfig -a >> ${BASE}/jumpstart_environment 2>&1 cd /a ls -aCFR ${SI_CONFIG_DIR} pwd # # Extract all of the common configuration bits # tar xvpf ${SI_CONFIG_DIR}/config.tar pwd cd ${SI_CONFIG_DIR}/root # # Copy over the host specific bits # pax -r -w -v -pp . /a # # Add a test user # echo 'testusr:*:101:101:::/bin/false' >> ${BASE}/etc/passwd echo 'testusr:*LK*:101:::::' >> ${BASE}/etc/shadow # # When enabling TX label extensions, this is required to allow # logins from normal hosts # echo 'other account required pam_tsol_account.so.1 allow_unlabeled' >> ${BASE}/etc/pam.conf exit 0