diff --git a/scripts/integrate-distro.sh b/scripts/integrate-distro.sh index 5a7ccf22..16a05c57 100644 --- a/scripts/integrate-distro.sh +++ b/scripts/integrate-distro.sh @@ -6,10 +6,14 @@ arch=`uname -m` o_name=suse-11.4 cmd=install initrd_modules="aufs via e1000 e1000e myri10ge forcedeth" +kernel_version=2.6.37.4 umask 0022 unused_pkgs=" sysvinit-systemd + kernel + kernel-default-2.6.37.6~jng135-4 + aufs-kmp " # -- pciutils @@ -20,10 +24,8 @@ unused_pkgs=" payload_pkgs=" - kernel - kernel-default-2.6.37.6~jng135-4 + kernel-$kernel_version aufs - aufs-kmp mkinitrd sysvinit grub @@ -31,6 +33,8 @@ payload_pkgs=" kbd + db-utils + insserv pam_ldap pam_apparmor @@ -54,9 +58,11 @@ payload_pkgs=" fuse mdadm device-mapper + insserv dhcpcd nfs-client + openldap2-client samba-client sudo sysconfig @@ -321,10 +327,10 @@ EOT zypper_repos_update() { zypper_repos_base - _cat << EOT | grep -v " #" + _cat << EOT | grep -v "^ *#" |distro-non-oss ftp://ftp/pub/mirror/suse/distribution/11.4/repo/non-oss |update ftp://ftp/pub/mirror/suse/update/11.4 - |jengelh ftp://ftp/pub/mirror/gwdg/pub/linux/misc/suser-jengelh/openSUSE_11.4 + |#jengelh ftp://ftp/pub/mirror/gwdg/pub/linux/misc/suser-jengelh/openSUSE_11.4 EOT } @@ -500,8 +506,6 @@ EOT make_sysconfig_bootloader > $root/etc/sysconfig/bootloader make_boot_menu > $root/boot/grub/menu.lst - (cd $root/boot; ln -sf vmlinuz-$kernel_version vmlinuz) - run_chroot /sbin/mkinitrd \ -B \ -k /boot/vmlinuz-$kernel_version \ @@ -593,11 +597,12 @@ insserv_all() local services=" sshd jux + boot.bprof " local service for service in $services; do - run_chroot insserv -e $service + run_chroot /sbin/insserv -e $service done } @@ -606,13 +611,11 @@ cmd_install() if true; then local c - #set -e + set -e - #remove_bind_mounts setup_root_directory setup_bind_mounts - mv $root/var/lib/ldap $root/var/lib/ldap-$myname mkdir -p -m 755 $root/etc mkdir -p -m 755 $root/etc/openldap for c in \ @@ -624,12 +627,14 @@ cmd_install() /etc/sysconfig/keyboard \ /etc/sysconfig/clock \ /etc/openldap/schema/authldap.schema \ - /var/lib/ldap \ ; do install -d -m 755 `dirname $root$c` cp -rp $c $root$c done + # seed the ldap database + slapcat | chroot $root /usr/sbin/slapadd -qw + make_netboot_etc_ldap_conf > $root/etc/ldap.conf.netboot make_netboot_etc_openldap_ldap_conf > $root/etc/openldap/ldap.conf.netboot make_netboot_etc_hosts > $root/etc/hosts.netboot @@ -647,13 +652,18 @@ cmd_install() chroot $root zypper $zypper_global_opts install --auto-agree-with-licenses $payload_pkgs # chroot $root zypper $zypper_global_opts -t srcpackage --download-only $payload_pkgs fi # test - kernel_version=`readlink -f $root/boot/vmlinuz 2>/dev/null | xargs basename | sed 's/vmlinuz-//'` + #kernel_version=`readlink -f $root/boot/vmlinuz 2>/dev/null | xargs basename | sed 's/vmlinuz-//'` [ "$install_dev" ] && setup_boot_loader_local setup_boot_loader_net + (cd $root/boot; ln -sf vmlinuz-$kernel_version vmlinuz) insserv_all + local boot_conf=$root/etc/sysconfig/boot + sed 's/RUN_PARALLEL *=.*/RUN_PARALLEL=no/' $boot_conf > $boot_conf.tmp + mv $boot_conf.tmp $boot_conf + cat $root_password_file | chroot $root /usr/bin/passwd --stdin chroot $root /sbin/ldconfig chroot $root /sbin/SuSEconfig @@ -664,7 +674,14 @@ cmd_install() ; do cp -rp $c $root$c done - [ -w $install_dev ] && unmount_devices + + unmount_devices + [ -w "$install_dev" ] || { + install -d -m 755 $root/../rw + /etc/init.d/nfsserver status >/dev/null 2>&1 && { + /etc/init.d/nfsserver restart + } + } } # -- here we go @@ -678,7 +695,7 @@ get_opts "$@" init_root_password_file if [ `whoami` != root ]; then - sudo $0 $@ -p $root_password_file + sudo -i $0 $@ -p $root_password_file exit $? fi