mkai-0.3/000075500000000000000000000000001076125571300123025ustar00rootroot00000000000000mkai-0.3/etc/000075500000000000000000000000001076125571300130555ustar00rootroot00000000000000mkai-0.3/etc/profiles/000075500000000000000000000000001076125571300147005ustar00rootroot00000000000000mkai-0.3/etc/profiles/sample/000075500000000000000000000000001076125571300161615ustar00rootroot00000000000000mkai-0.3/etc/profiles/sample/autoinstall.scm000064400000000000000000000033441076125571300212300ustar00rootroot00000000000000;; basic installation (("syslang") action "write" lang "ru_RU") (("sysfont") language ("ru_RU") action "write") (("syskbd" "alt_sh_toggle") language ("ru_RU") action "write") (("timezone") action "write" zone "Europe/Moscow" utc #f installer #t) (("datetime") action "write" use_ntp #t has_ntp #t server "@HOSTNAME@") (("evms" "control") language ("ru_RU") action "write" control open installer #t) (("evms" "control") language ("ru_RU") action "write" control update) (("evms" "profiles" "variant2") language ("ru_RU") action apply commit #t clearall #t exclude ()) (("evms" "control") language ("ru_RU") action "write" control commit) (("evms" "control") language ("ru_RU") action "write" control close) (("basesystem") language ("ru_RU") action "write") (("preinstall") language ("ru_RU") action "write") (("deadline") language ("ru_RU") action "write") (("lilo") language ("ru_RU") action "write" target "boot" devname #t) (("lilo") language ("ru_RU") action "commit") ;; users (("root") language ("ru_RU") action "write" passwd1 "123" passwd2 "123") (("users") language ("ru_RU") action "new" name "test" passwd1 "123" passwd2 "123") (("auth") action "write" profile "ldap" ldap_uri "ldap://@HOSTNAME@" ldap_basedn "@BASEDN@") (("nsswitch") action "write" profile "ldap" ldap_uri "ldap://@HOSTNAME@" ldap_basedn "@BASEDN@") ;; network (("net-eth" "eth0") action "write" language ("ru_RU") dhcp #t restart #f) (("net-general") language ("ru_RU") action "write" hostname_auto #t dns_auto #t restart #f) ;; cluster node specific (("hpc-storage") action "write" type "nfs" location "@STORAGE@") (("hpc-syslog") action "write" mode "scatter" server "@HOSTNAME@") (("hpc-mpi") action "write" type "openmpi") (("torque" "mom") action "write" pbsserver "@HOSTNAME@") mkai-0.3/etc/profiles/sample/packages000064400000000000000000000016641076125571300176710ustar00rootroot00000000000000# interactivesystem altlinux-release-hpc apt glibc-gconv-modules glibc-locales glibc-nss glibc-utils glibc-timezones interactivesystem kbd anacron lilo setarch shadow-suite udev slocate lm_sensors etcnet vim-console syslog-common-hpc syslog-ng #kernel modules kernel-image-hpc ib-scripts hpc-settings #design features design-bootloader-system-hpc design-bootsplash-hpc # network tools hostinfo iptables iputils lftp mailx netcat netlist openssh-clients rsync traceroute vlan-utils # disk tools hdparm jfsutils lvm2 mdadm reiserfsprogs sfdisk xfsprogs # servers openssh-server postfix bind-utils # clients openntpd # security openssl # debug strace # alterator installer-hpc-stage3 #cluster tools:client openmpi mvapich mvapich2 ganglia-gmond torque-mom libibverbs libibverbs-utils libmthca libmlx4 opensm openib-diags ibutils srptools #other acpid mc #users alterator-auth alterator-nsswitch pam_ldap nss_ldap #nfs portmap nfs-clients mkai-0.3/etc/profiles/sample/pxelinux.cfg000064400000000000000000000003561076125571300205220ustar00rootroot00000000000000default ai prompt 1 timeout 5 label ai kernel alt0/vmlinuz append initrd=alt0/full.cz fastboot automatic=method:nfs,network:dhcp,server:@HOSTNAME@,directory:/var/lib/tftpboot stagename=altinst noapic ai label harddisk LOCALBOOT -1 mkai-0.3/etc/profiles/sample/vm-profile.scm000064400000000000000000000021301076125571300207410ustar00rootroot00000000000000((variant1 (title . "Setup for workstation") (action . trivial) (actiondata ("swap" (size 1048576 . 2097152) (fsim . "SWAPFS") (methods plain)) ("/" (size 4194304 . 8388608 ) (fsim . "Ext2/3") (methods plain)) ("/home" (size 4194304 . #t) (fsim . "Ext2/3") (methods plain)))) (variant2 (title . "Setup for server without separate /usr") (action . trivial) (actiondata ("swap" (size 1048576 . 2097152) (fsim . "SWAPFS") (methods plain)) ("/" (size 4194304 . 8388608 ) (fsim . "Ext2/3") (methods plain)) ("/var" (size 4194304 . #t) (fsim . "XFS") (methods lvm plain)))) (variant3 (title . "Setup for server") (action . trivial) (actiondata ("swap" (size 1048576 . 2097152) (fsim . "SWAPFS") (methods plain)) ("/" (size . 1048576) (fsim . "Ext2/3") (methods raid plain)) ("/usr" (size . 4194304) (fsim . "Ext2/3") (methods raid+lvm lvm plain)) ("/home" (size . 2097152) (fsim . "Ext2/3") (methods lvm plain)) ("/var" (size 4194304 . #t) (fsim . "XFS") (methods lvm plain))))) mkai-0.3/etc/template/000075500000000000000000000000001076125571300146705ustar00rootroot00000000000000mkai-0.3/etc/template/base/000075500000000000000000000000001076125571300156025ustar00rootroot00000000000000mkai-0.3/etc/template/base/config000064400000000000000000000001571076125571300167750ustar00rootroot00000000000000NAME="ALT Linux Basesystem" INSTALLDIR="ALTLinux/RPMS.base" COPYONLY=1 IDENT="base" HOOKPKGS="apt-utils rsync" mkai-0.3/etc/template/base/hooks.d/000075500000000000000000000000001076125571300171475ustar00rootroot00000000000000mkai-0.3/etc/template/base/hooks.d/00-genbasedir000075500000000000000000000006101076125571300214120ustar00rootroot00000000000000#!/bin/sh -x mkdir -p -- "$IMGDIR/ALTLinux/base" rsync -rtlpC "$IMGDIR/" "$ISODIR/" genbasedir \ --topdir="$ISODIR" \ --architecture="$ARCH" \ --no-oldhashfile \ --notautomatic=false \ ${NAME:+--archive="$NAME"} \ ${VERSION:+--version="$VERSION"} \ ${ORIGIN:+--origin="$ORIGIN"} \ ${LABEL:+--label="$LABEL"} \ $VENDOR $IDENT mkai-0.3/etc/template/base/hooks.d/01-basesystem.rename000075500000000000000000000003751076125571300227450ustar00rootroot00000000000000#!/bin/sh cd "$ISODIR/ALTLinux/RPMS.base" find -name '*.rpm' -printf '%f\n' | while read f; do newname="$(rpmquery -p --qf='%{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}.rpm' -- "$f")" [ "$f" = "$newname" ] || mv -f -- "$f" "$newname" done cd - >/dev/null mkai-0.3/etc/template/base/hooks.d/02-basesystem.manifest000075500000000000000000000002251076125571300232770ustar00rootroot00000000000000#!/bin/sh -x mkdir -p -- "$ISODIR/Metadata" find "$ISODIR/ALTLinux/RPMS.base" -name '*.rpm' -printf '%f\n' > "$ISODIR/Metadata/basesystem.manifest" mkai-0.3/etc/template/base/hooks.d/03-pxelinux000075500000000000000000000001351076125571300211700ustar00rootroot00000000000000#!/bin/sh mkdir -p "$ISODIR/isolinux" cp -a /usr/lib/syslinux/pxelinux.0 "$ISODIR/isolinux" mkai-0.3/etc/template/config000064400000000000000000000005161076125571300160620ustar00rootroot00000000000000PUBLISHER="ALT Linux" ORIGIN="ALT Linux" SUITE="HPC" LABEL="HPC" CODENAME="Milfoil" VERSION="4.0" DESIGN=hpc THEME=hpc KERNEL_ADD="kernel-image-hpc bootsplash design-bootsplash-hpc" ARCH="$(uname -m)" [ "$ARCH" != i686 ] || ARCH=i586 LANGS="en_US:ru_RU:be_BY:uk_UA:ru_UA:tt_RU" COMPONENTS="install2 base" CDFILENAME="autoinstall.iso" mkai-0.3/etc/template/initfs000064400000000000000000000032501076125571300161070ustar00rootroot00000000000000dir /dev 0755 0 0 nod /dev/mem 0600 0 0 c 1 1 nod /dev/null 0666 0 0 c 1 3 nod /dev/ptyp0 0600 0 0 c 2 0 nod /dev/ttyp0 0600 0 0 c 3 0 nod /dev/tty0 0600 0 0 c 4 0 nod /dev/tty1 0600 0 0 c 4 1 nod /dev/tty2 0600 0 0 c 4 2 nod /dev/tty3 0600 0 0 c 4 3 nod /dev/tty4 0600 0 0 c 4 4 nod /dev/tty5 0600 0 0 c 4 5 nod /dev/tty6 0600 0 0 c 4 6 nod /dev/tty7 0600 0 0 c 4 7 nod /dev/ttyS0 0600 0 0 c 4 64 nod /dev/tty 0600 0 0 c 5 0 nod /dev/console 0600 0 0 c 5 1 nod /dev/ram3 0640 0 0 b 1 3 nod /dev/fd0 0640 0 0 b 2 0 nod /dev/fd1 0640 0 0 b 2 1 nod /dev/loop0 0640 0 0 b 7 0 nod /dev/loop1 0640 0 0 b 7 1 nod /dev/loop2 0640 0 0 b 7 2 nod /dev/loop3 0640 0 0 b 7 3 nod /dev/cloop 0640 0 0 b 240 0 nod /dev/fb0 0640 0 0 c 29 0 dir /image 0755 0 0 dir /modules 0755 0 0 dir /sbin 0755 0 0 dir /bin 0755 0 0 dir /etc 0755 0 0 dir /etc/terminfo 0755 0 0 dir /etc/terminfo/l 0755 0 0 file /etc/terminfo/l/linux /lib/terminfo/l/linux 0644 0 0 dir /proc 0755 0 0 dir /sys 0755 0 0 dir /root 0755 0 0 dir /tmp 0755 0 0 dir /var 0755 0 0 file /bootsplash /bootsplash/bootsplash 0644 0 0 file /bin/fbmngplay /sbin/fbmngplay 0755 0 0 file /bin/sh /lib/mkinitrd/busybox 0755 0 0 file /etc/spinner.mng /etc/bootsplash/themes/hpc/animations/penguin.mng 0644 0 0 file /sbin/splash /sbin/splash-propagator.sh 0755 0 0 file /sys/.t /dev/null 0644 0 0 file /init @LIBDIR@/propagator/bin/init 0755 0 0 file /sbin/stage1 @LIBDIR@/propagator/bin/stage1 0755 0 0 file /modules/modules.mar @MODDIR@/modules.mar 0644 0 0 file /modules/modules.map @MODDIR@/modules.map 0644 0 0 file /modules/modules.dep @MODDIR@/modules.dep 0644 0 0 file /.VERSION @DOTVERSION@ 0644 0 0 slink /sbin/modprobe stage1 0755 0 0 mkai-0.3/etc/template/install2/000075500000000000000000000000001076125571300164205ustar00rootroot00000000000000mkai-0.3/etc/template/install2/config000064400000000000000000000000371076125571300176100ustar00rootroot00000000000000OUT="altinst" IDENT="install2" mkai-0.3/etc/template/install2/hooks.d/000075500000000000000000000000001076125571300177655ustar00rootroot00000000000000mkai-0.3/etc/template/install2/hooks.d/01-gfxboot000077700000000000000000000000001076125571300305422/usr/share/spt/hooks-common/03gfxbootustar00rootroot00000000000000mkai-0.3/etc/template/install2/hooks.d/02-bootsplash000077700000000000000000000000001076125571300317612/usr/share/spt/hooks-common/05bootsplashustar00rootroot00000000000000mkai-0.3/etc/template/install2/hooks.d/03-clock000075500000000000000000000001001076125571300212150ustar00rootroot00000000000000#!/bin/bash subst 's/^UTC=true/UTC=false/' /etc/sysconfig/clock mkai-0.3/etc/template/install2/hooks.d/04-memtest000077700000000000000000000000001076125571300305622/usr/share/spt/hooks-common/04memtestustar00rootroot00000000000000mkai-0.3/etc/template/install2/hooks.d/05-system000075500000000000000000000101361076125571300214620ustar00rootroot00000000000000#!/bin/sh # stage1 need this mkdir -p /image # setup stage2 as init mv -f /usr/sbin/install2-init /sbin/init # remove all docs rm -rf /usr/share/{doc,man,info,license,gfxboot} # remove icons rm -rf /usr/share/icons/{hicolor,large,mini} # remove PAM plugins rm -rf /lib*/security # remove cpp rpmquery -a cpp\* gcc\* | xargs -r rpmi -e --nodeps -- # remove X11 dri modules rm -rf /usr/lib*/X11/modules/dri rm -rf /usr/lib*/X11/modules/multimedia rm -rf /usr/lib*/X11/mesa_gl rm -f /usr/lib*/X11/modules/extensions/libglx.so rm -f /usr/lib*/X11/modules/extensions/libdri.so rm -f /usr/lib*/X11/modules/extensions/libGLcore.so # remove unneeded kernel modules rm -rf /lib/modules/*/kernel/arch rm -rf /lib/modules/*/kernel/crypto rm -rf /lib/modules/*/kernel/drivers/atm rm -rf /lib/modules/*/kernel/drivers/char/watchdog rm -rf /lib/modules/*/kernel/drivers/cpufreq rm -rf /lib/modules/*/kernel/drivers/edac rm -rf /lib/modules/*/kernel/drivers/firmware rm -rf /lib/modules/*/kernel/drivers/hwmon rm -rf /lib/modules/*/kernel/drivers/infiniband rm -rf /lib/modules/*/kernel/drivers/input/{gameport,joy*} rm -rf /lib/modules/*/kernel/drivers/isdn rm -rf /lib/modules/*/kernel/drivers/media rm -rf /lib/modules/*/kernel/drivers/mmc rm -rf /lib/modules/*/kernel/drivers/mtd* rm -rf /lib/modules/*/kernel/drivers/net/irda rm -rf /lib/modules/*/kernel/drivers/rtc rm -rf /lib/modules/*/kernel/drivers/spi rm -rf /lib/modules/*/kernel/drivers/telephony rm -rf /lib/modules/*/kernel/drivers/usb/{misc,mon} rm -rf /lib/modules/*/kernel/drivers/video rm -rf /lib/modules/*/kernel/drivers/w1 rm -rf /lib/modules/*/kernel/fs/quota* rm -rf /lib/modules/*/kernel/fs/9p rm -rf /lib/modules/*/kernel/fs/adfs rm -rf /lib/modules/*/kernel/fs/affs rm -rf /lib/modules/*/kernel/fs/afs rm -rf /lib/modules/*/kernel/fs/autofs rm -rf /lib/modules/*/kernel/fs/autofs4 rm -rf /lib/modules/*/kernel/fs/befs rm -rf /lib/modules/*/kernel/fs/bfs rm -rf /lib/modules/*/kernel/fs/cifs rm -rf /lib/modules/*/kernel/fs/coda rm -rf /lib/modules/*/kernel/fs/configfs rm -rf /lib/modules/*/kernel/fs/cramfs rm -rf /lib/modules/*/kernel/fs/efs rm -rf /lib/modules/*/kernel/fs/exportfs rm -rf /lib/modules/*/kernel/fs/freevxfs rm -rf /lib/modules/*/kernel/fs/fuse rm -rf /lib/modules/*/kernel/fs/hfs rm -rf /lib/modules/*/kernel/fs/hfsplus rm -rf /lib/modules/*/kernel/fs/hpfs rm -rf /lib/modules/*/kernel/fs/jffs rm -rf /lib/modules/*/kernel/fs/jffs2 rm -rf /lib/modules/*/kernel/fs/lockd rm -rf /lib/modules/*/kernel/fs/minix rm -rf /lib/modules/*/kernel/fs/ncpfs rm -rf /lib/modules/*/kernel/fs/ocfs2 rm -rf /lib/modules/*/kernel/fs/qnx4 rm -rf /lib/modules/*/kernel/fs/smbfs rm -rf /lib/modules/*/kernel/fs/sysv rm -rf /lib/modules/*/kernel/fs/udf rm -rf /lib/modules/*/kernel/fs/ufs rm -rf /lib/modules/*/kernel/net/*/netfilter rm -rf /lib/modules/*/kernel/net/appletalk rm -rf /lib/modules/*/kernel/net/ax25 rm -rf /lib/modules/*/kernel/net/bluetooth rm -rf /lib/modules/*/kernel/net/bridge rm -rf /lib/modules/*/kernel/net/dccp rm -rf /lib/modules/*/kernel/net/decnet rm -rf /lib/modules/*/kernel/net/econet rm -rf /lib/modules/*/kernel/net/ipv6 rm -rf /lib/modules/*/kernel/net/ipx rm -rf /lib/modules/*/kernel/net/irda rm -rf /lib/modules/*/kernel/net/netfilter rm -rf /lib/modules/*/kernel/net/netrom rm -rf /lib/modules/*/kernel/net/rose rm -rf /lib/modules/*/kernel/net/sctp rm -rf /lib/modules/*/kernel/net/tipc rm -rf /lib/modules/*/kernel/net/x25 rm -rf /lib/modules/*/kernel/sound # remove blacklisted kernel modules sed -n 's/^blacklist[[:space:]]\+\([^[:space:]]\+\).*/\1/p' /etc/modprobe.d/* | while read i; do /.host/find /lib/modules/ -type f -name "$i.ko" -delete done # remove rpm db rm -rf /var/lib/rpm/* # remove apt data files rm -rf /var/cache/apt /var/lib*/apt # remove unneeded translations /.host/find /usr/share/locale/ -type f \! -name 'alterator*' -delete # remove non-utf8 locales /.host/find /usr/lib*/locale -mindepth 1 -maxdepth 1 -type d \! -name '*.utf8' -print0 | xargs -r0 rm -rf -- # run depmod for i in /lib*/modules/*; do /sbin/depmod -a -F /boot/System.map-${i##*/} ${i##*/} done # remove ogfs rm -f /lib*/evms/*/ogfs* # remove kernel images rm -rf /boot/* mkai-0.3/etc/template/install2/packages000064400000000000000000000003411076125571300201170ustar00rootroot00000000000000kernel-image-hpc udev design-bootloader-installer-hpc design-bootsplash-hpc e2fsprogs reiserfsprogs xfsprogs jfsprogs dosfstools ntfsprogs glibc-nss glibc-locales openntpd vitmp netcat iproute2 curl installer-hpc-stage2 mkai-0.3/etc/template/isolinux.cfg.in000064400000000000000000000006641076125571300176360ustar00rootroot00000000000000default harddisk prompt 1 timeout 200 gfxboot bootlogo display boot.msg implicit 1 label harddisk localboot 0x80 label linux kernel alt0/vmlinuz append initrd=alt0/full.cz changedisk ramdisk_size=65536 lang=ru_RU vga=0x314 splash=silent splashcount=17 showopts noapic ai label failsafe kernel alt0/vmlinuz append initrd=alt0/full.cz changedisk ramdisk_size=65536 lang=ru_RU showopts noapic pci=nomsi acpi=off noload=ahci ai mkai-0.3/etc/template/modules000064400000000000000000000054151076125571300162700ustar00rootroot000000000000003c501.ko 3c503.ko 3c505.ko 3c507.ko 3c509.ko 3c515.ko 3c574_cs.ko 3c589_cs.ko 3c59x.ko 3w-9xxx.ko 3w-xxxx.ko 8139too.ko 82596.ko 8390.ko a100u2w.ko aacraid.ko ac3200.ko acenic.ko advansys.ko aec62xx.ko af_packet.ko aha152x_cs.ko aha152x.ko aha1542.ko aic7xxx.ko aic7xxx_old.ko alim15x3.ko amd74xx.ko amd8111e.ko at1700.ko ata_piix.ko atiixp.ko atl1.ko atp870u.ko atp.ko axnet_cs.ko b44.ko bnx2.ko bsd_comp.ko BusLogic.ko cassini.ko catc.ko cciss.ko cdrom.ko ch.ko cmd64x.ko cpqarray.ko cs5520.ko cs5530.ko cs5535.ko cs89x0.ko cy82c693.ko DAC960.ko dc395x.ko de4x5.ko de600.ko de620.ko defxx.ko depca.ko dgrs.ko dl2k.ko dmfe.ko dmx3191d.ko dpt_i2o.ko dtc.ko dummy.ko e1000.ko e100.ko e2100.ko eata.ko eepro100.ko eepro.ko eexpress.ko ehci-hcd.ko epic100.ko eql.ko eth16i.ko ewrk3.ko ext2 ext3.ko fat.ko fdomain_cs.ko fdomain.ko fealnx.ko fmvj18x_cs.ko forcedeth.ko gdth.ko generic.ko g_NCR5380.ko g_NCR5380_mmio.ko hamachi.ko hp100.ko hp.ko hp-plus.ko hpt34x.ko hpt366.ko hptiop.ko i82092.ko i82365.ko ibmtr_cs.ko ide-cd.ko ide-core.ko ide-cs.ko ide-disk.ko ide-generic.ko ide-scsi.ko ifb.ko imm.ko in2000.ko initio.ko ipr.ko ips.ko iscsi_tcp.ko isofs.ko it821x.ko jmicron.ko kaweth.ko lance.ko libata.ko libiscsi.ko lockd.ko loop.ko lp486e.ko megaraid.ko megaraid_mbox.ko mii.ko natsemi.ko NCR53c406a.ko ne2k-pci.ko ne.ko netconsole.ko netwave_cs.ko nfs.ko ni52.ko ni65.ko nls_cp866.ko nls_koi8-r.ko nmclan_cs.ko ns83820.ko ns87415.ko nsp32.ko ohci-hcd.ko opti621.ko osst.ko pas16.ko pata_marvell.ko pcmcia_core.ko pcmcia.ko pcnet32.ko pcnet_cs.ko pd6729.ko pdc202xx_new.ko pdc202xx_old.ko pdc_adma.ko pegasus.ko piix.ko plip.ko ppa.ko ppp_async.ko ppp_deflate.ko ppp_generic.ko ppp_mppe.ko pppoe.ko pppox.ko ppp_synctty.ko psi240i.ko qla1280.ko qlogic_cs.ko qlogicfas408.ko qlogicfas.ko qlogicfc.ko qlogicisp.ko r8169.ko raid_class.ko reiserfs.ko rrunner.ko rsrc_nonstatic.ko rz1000.ko s2io.ko sata_mv.ko sata_nv.ko sata_promise.ko sata_qstor.ko sata_sil24.ko sata_sil.ko sata_sis.ko sata_svw.ko sata_sx4.ko sata_uli.ko sata_via.ko sata_vsc.ko sb1000.ko sc1200.ko scsi_mod.ko scsi_transport_fc.ko scsi_transport_iscsi.ko scsi_transport_sas.ko scsi_transport_spi.ko sd_mod.ko seeq8005.ko serial_cs.ko serverworks.ko sg.ko shaper.ko siimage.ko sis190.ko sis5513.ko sis900.ko sk98lin.ko skge.ko sky2.ko slc90e66.ko slhc.ko slip.ko smc9194.ko smc91c92_cs.ko smc-ultra.ko squashfs.ko sr_mod.ko starfire.ko stex.ko st.ko sundance.ko sungem.ko sungem_phy.ko sunhme.ko sunrpc.ko sym53c416.ko sym53c8xx.ko t128.ko tcic.ko tg3.ko tlan.ko tmscsim.ko triflex.ko trm290.ko tulip.ko tun.ko typhoon.ko u14-34f.ko uhci-hcd.ko ultrastor.ko usbcore.ko usbhid.ko usbnet.ko usb-storage.ko vfat.ko via82cxxx.ko via-rhine.ko via-velocity.ko wavelan_cs.ko wd7000.ko wd.ko winbond-840.ko xirc2ps_cs.ko xircom_cb.ko yellowfin.ko yenta_socket.ko znet.ko mkai-0.3/scripts/000075500000000000000000000000001076125571300137715ustar00rootroot00000000000000mkai-0.3/scripts/mkai000075500000000000000000000021571076125571300146450ustar00rootroot00000000000000#!/bin/sh PROG="${0##*/}" . shell-error exit_handler() { local rc=$? trap - EXIT [ -n "$TEMPDIR" ] && rm -rf "$TEMPDIR" [ -n "$LOCKDIR" ] && rm -rf "$LOCKDIR" exit $rc } usage() { printf 'Usage: %s \n' "$PROG" exit 0 } [ "$#" -eq 1 ] || usage [ -d "$1" ] || usage [ "$UID" -ne 0 ] || exec su -s /bin/sh -l _mkai -c "/usr/sbin/mkai $1" LOCKDIR="$HOME/mkai.lock" mkdir "$LOCKDIR" || fatal "already run" trap exit_handler HUP INT QUIT TERM EXIT TEMPDIR="$(mktemp -d -t mkai.XXXXXX)" TEMPLATEDIR=/etc/mkai/template cp -a "$TEMPLATEDIR"/* "$TEMPDIR" mkdir -p -- "$TEMPDIR/isofiles/isolinux/pxelinux.cfg" mkdir -p -- "$TEMPDIR/isofiles/Metadata" mkdir -p -- "$TEMPDIR/base" [ -s "$1/pxelinux.cfg" ] && cp -f "$1/pxelinux.cfg" "$TEMPDIR/isofiles/isolinux/pxelinux.cfg/default" [ -s "$1/autoinstall.scm" ] && cp -f "$1/autoinstall.scm" "$TEMPDIR/isofiles/Metadata/autoinstall.scm" [ -s "$1/vm-profile.scm" ] && cp -f "$1/vm-profile.scm" "$TEMPDIR/isofiles/Metadata/vm-profile.scm" [ -s "$1/packages" ] && cp -f "$1/packages" "$TEMPDIR/base/packages" spt -v "/var/lib/mkai" -p "$TEMPDIR" mkai-0.3/scripts/removeai000075500000000000000000000005071076125571300155300ustar00rootroot00000000000000#!/bin/sh PROG="${0##*/}" . shell-error usage() { printf 'Usage: %s \n' "$PROG" exit 0 } [ "$#" -eq 1 ] || usage tftpdir="$1";shift destdir="$tftpdir/iso/" service nfs restart umount "$destdir" sed -r "\,^$destdir[[:space:]], d" -i /etc/exports service nfs restart rm -rf "$tftpdir"/* killall in.tftpd mkai-0.3/scripts/setupai000075500000000000000000000014621076125571300153740ustar00rootroot00000000000000#!/bin/sh PROG="${0##*/}" . shell-error usage() { printf 'Usage: %s \n' "$PROG" exit 0 } [ "$#" -eq 2 ] || usage iso="$1";shift tftpdir="$1";shift destdir="$tftpdir/iso/" [ -f "$iso" ] || fatal "iso image is not a file" grep -qs "^$destdir[[:space:]]" /etc/exports && fatal "destination directory already exported" [ "${tftpdir#/var/lib/tftpboot}" != "$tftpdir" ] || fatal "tftp directory not under /var/lib/tftpboot" #prepare data directory mkdir -p "$destdir" cp "$iso" "$destdir" mount -o loop "$iso" "$destdir" printf "%s *(ro,all_squash,sync)" "$destdir" >>/etc/exports service nfs restart #prepare tftp directory mkdir -p "$tftpdir" cp -a $destdir/isolinux/* "$tftpdir" sed -r "s,directory:([^[:space:]]+),directory:$destdir," -i "$tftpdir/pxelinux.cfg/default" killall in.tftpd