diff --git a/xCAT/xCAT.spec b/xCAT/xCAT.spec index 5af52f646..bec6c09f2 100644 --- a/xCAT/xCAT.spec +++ b/xCAT/xCAT.spec @@ -93,156 +93,14 @@ cp LICENSE.html $RPM_BUILD_ROOT/%{prefix}/share/doc/packages/xCAT %post %ifnos linux . /etc/profile -$RPM_INSTALL_PREFIX0/sbin/xcatconfig %else . /etc/profile.d/xcat.sh - -# ugly hack so we can have 1 RPM support both sles and rhel -if [ -e /etc/SuSE-release ]; then - apachename=apache2 -else - apachename=httpd -fi - - -if [ ! -d /etc/xcat/hostkeys ]; then - mkdir -p /etc/xcat/hostkeys -fi - -# Do not have private keys in install or /etc/xcat/hostkeys -# Generate new keys and update /install with the public keys -if [ ! -f /install/postscripts/hostkeys/ssh_host_rsa_key ] && [ ! -f /etc/xcat/hostkeys/ssh_host_rsa_key ] ; then - echo Generating SSH1 RSA Key... - /usr/bin/ssh-keygen -t rsa1 -f /etc/xcat/hostkeys/ssh_host_key -C '' -N '' - echo Generating SSH2 RSA Key... - /usr/bin/ssh-keygen -t rsa -f /etc/xcat/hostkeys/ssh_host_rsa_key -C '' -N '' - echo Generating SSH2 DSA Key... - /usr/bin/ssh-keygen -t dsa -f /etc/xcat/hostkeys/ssh_host_dsa_key -C '' -N '' - /bin/rm /install/postscripts/hostkeys/* - /bin/cp /etc/xcat/hostkeys/ssh_host*.pub /install/postscripts/hostkeys/ -else -# generated the keys before and still have private keys in install -# copy all from /install to /etc/xcat/hostkeys and then remove private keys -# from /install - if [ -f /install/postscripts/hostkeys/ssh_host_rsa_key ]; then - /bin/cp -p /install/postscripts/hostkeys/* /etc/xcat/hostkeys/. - /bin/rm /install/postscripts/hostkeys/ssh_host_dsa_key - /bin/rm /install/postscripts/hostkeys/ssh_host_rsa_key - /bin/rm /install/postscripts/hostkeys/ssh_host_key - fi - if [ ! -f /install/postscripts/hostkeys/ssh_host_rsa_key.pub ]; then - /bin/rm /install/postscripts/hostkeys/* - /bin/cp /etc/xcat/hostkeys/ssh_host*.pub /install/postscripts/hostkeys/ - fi -fi -if [ -d /install/postscripts/.ssh ]; then - /bin/mv /install/postscripts/.ssh/* /install/postscripts/_ssh/. - rmdir /install/postscripts/.ssh -fi -if [ -d /install/postscripts/.xcat ]; then - /bin/mv /install/postscripts/.xcat/* /install/postscripts/_xcat/. - rmdir /install/postscripts/.xcat -fi -chkconfig vsftpd on -/etc/init.d/vsftpd start -# remove any service node file -if [ -f /etc/xCATSN ]; then - rm /etc/xCATSN -fi +%endif if [ "$1" = "1" ]; then #Only if installing for the first time.. - mkdir -p /root/.ssh - chmod 700 /root/.ssh - echo StrictHostKeyChecking no >> /root/.ssh/config - chmod 600 /root/.ssh/config - if [ ! -r /root/.ssh/id_rsa.pub ]; then - ssh-keygen -t rsa -q -b 2048 -N "" -f /root/.ssh/id_rsa - fi - mkdir -p /install/postscripts/_ssh - cp /root/.ssh/id_rsa.pub /install/postscripts/_ssh/authorized_keys - chmod 644 /install/postscripts/_ssh/authorized_keys - - mkdir -p /var/log/consoles - if ! grep /tftpboot /etc/exports; then - echo '/tftpboot *(rw,no_root_squash,sync)' >> /etc/exports #SECURITY: this has potential for sharing private host/user keys - fi - if ! grep /install /etc/exports; then - echo '/install *(rw,no_root_squash,sync)' >> /etc/exports #SECURITY: this has potential for sharing private host/user keys - fi - chkconfig nfs on - /etc/init.d/nfs stop - /etc/init.d/nfs start - exportfs -a - if [ ! -r /etc/xcat/site.sqlite ]; then - XCATROOT=$RPM_INSTALL_PREFIX0 $RPM_INSTALL_PREFIX0/sbin/chtab key=xcatdport site.value=3001 - XCATROOT=$RPM_INSTALL_PREFIX0 $RPM_INSTALL_PREFIX0/sbin/chtab key=xcatiport site.value=3002 - XCATROOT=$RPM_INSTALL_PREFIX0 $RPM_INSTALL_PREFIX0/sbin/chtab key=tftpdir site.value=/tftpboot - XCATROOT=$RPM_INSTALL_PREFIX0 $RPM_INSTALL_PREFIX0/sbin/chtab key=master site.value=$(getent hosts `hostname`|awk '{print $1}') - XCATROOT=$RPM_INSTALL_PREFIX0 $RPM_INSTALL_PREFIX0/sbin/chtab key=domain site.value=$(hostname -d) - XCATROOT=$RPM_INSTALL_PREFIX0 $RPM_INSTALL_PREFIX0/sbin/chtab key=installdir site.value=/install - XCATROOT=$RPM_INSTALL_PREFIX0 $RPM_INSTALL_PREFIX0/sbin/chtab key=timezone site.value=`grep -E "^TIMEZONE|^ZONE" /etc/sysconfig/clock|cut -d= -f 2|sed -e 's/"//g'` - fi - if [ ! -r /etc/xcat/postscripts.sqlite ]; then - XCATROOT=$RPM_INSTALL_PREFIX0 $RPM_INSTALL_PREFIX0/sbin/chtab node=xcatdefaults postscripts.postscripts='syslog,remoteshell' - XCATROOT=$RPM_INSTALL_PREFIX0 $RPM_INSTALL_PREFIX0/sbin/chtab node=service postscripts.postscripts='servicenode' - fi - if [ ! -r /etc/xcat/policy.sqlite ]; then - XCATROOT=$RPM_INSTALL_PREFIX0 $RPM_INSTALL_PREFIX0/sbin/chtab priority=1 policy.name=root policy.rule=allow - XCATROOT=$RPM_INSTALL_PREFIX0 $RPM_INSTALL_PREFIX0/sbin/chtab priority=2 policy.commands=getbmcconfig policy.rule=allow - XCATROOT=$RPM_INSTALL_PREFIX0 $RPM_INSTALL_PREFIX0/sbin/chtab priority=3 policy.commands=nextdestiny policy.rule=allow - XCATROOT=$RPM_INSTALL_PREFIX0 $RPM_INSTALL_PREFIX0/sbin/chtab priority=4 policy.commands=getdestiny policy.rule=allow - XCATROOT=$RPM_INSTALL_PREFIX0 $RPM_INSTALL_PREFIX0/sbin/chtab priority=4.4 policy.commands=getpostscript policy.rule=allow - XCATROOT=$RPM_INSTALL_PREFIX0 $RPM_INSTALL_PREFIX0/sbin/chtab priority=4.5 policy.commands=getcredentials policy.rule=allow - XCATROOT=$RPM_INSTALL_PREFIX0 $RPM_INSTALL_PREFIX0/sbin/chtab priority=4.6 policy.commands=syncfiles policy.rule=allow - fi - - if [ ! -d /etc/xcat/ca ]; then - yes | $RPM_INSTALL_PREFIX0/share/xcat/scripts/setup-xcat-ca.sh "xCAT CA" - fi - mkdir -p /install/postscripts/ca - cp -r /etc/xcat/ca/* /install/postscripts/ca - if [ ! -d /etc/xcat/cert ]; then - yes | $RPM_INSTALL_PREFIX0/share/xcat/scripts/setup-server-cert.sh `hostname` - fi - mkdir -p /install/postscripts/cert - cp -r /etc/xcat/cert/* /install/postscripts/cert - if [ ! -r /root/.xcat/client-key.pem ]; then - yes | $RPM_INSTALL_PREFIX0/share/xcat/scripts/setup-local-client.sh root - fi - mkdir -p /install/postscripts/_xcat - cp -r /root/.xcat/* /install/postscripts/_xcat - #Zap the almost certainly wrong pxelinux.cfg file - if [ -r /tftpboot/pxelinux.cfg/default ] - then - rm /tftpboot/pxelinux.cfg/default - fi - # make Management Node - touch /etc/xCATMN - - # setup syslog - /install/postscripts/syslog - #fi - - XCATROOT=$RPM_INSTALL_PREFIX0 /etc/init.d/xcatd start - if [ -x $RPM_INSTALL_PREFIX0/sbin/mknb ]; then -%ifarch i386 i586 i686 x86 x86_64 - $RPM_INSTALL_PREFIX0/sbin/mknb x86 - $RPM_INSTALL_PREFIX0/sbin/mknb x86_64 - $RPM_INSTALL_PREFIX0/sbin/mknb ppc64 -%else - true -%endif - fi - $RPM_INSTALL_PREFIX0/sbin/makenetworks - XCATROOT=$RPM_INSTALL_PREFIX0 $RPM_INSTALL_PREFIX0/sbin/chtab key=nameservers site.value=`sed -e 's/#.*//' /etc/resolv.conf|grep nameserver|awk '{printf $2 ","}'|sed -e s/,$//` - chkconfig $apachename on - /etc/init.d/$apachename stop - /etc/init.d/$apachename start - echo "xCAT is now installed, it is recommended to tabedit networks and set a dynamic ip address range on any networks where nodes are to be discovered" - echo "Then, run makedhcp -n to create a new dhcpd.configuration file, and /etc/init.d/dhcpd restart" - echo "Either examine sample configuration templates, or write your own, or specify a value per node with nodeadd or tabedit." +$RPM_INSTALL_PREFIX0/sbin/xcatconfig -i +else +$RPM_INSTALL_PREFIX0/sbin/xcatconfig -u fi -%endif - %clean %files