#!/bin/bash HOME=/home/virtual GROUP=uml USER=$1 DISTRO=$2 [ -f /home/uml/${DISTRO}.img ] || (echo "/home/uml/${DISTRO}.img neexistuje; exit 1") PORADI=`ls ${HOME} | wc -l` groupadd ${GROUP} 2> /dev/null [ -d ${HOME} ] \ || { mkdir ${HOME}; chmod 750 ${HOME}; chgrp ${GROUP} ${HOME}; } useradd -g ${GROUP} -d ${HOME}/${USER} -s /bin/bash ${USER} || exit 1 [ -d ${HOME}/${USER} ] \ && { echo "Adresar $HOME/$USER uz existuje"; exit 1; } \ || { mkdir ${HOME}/${USER}; chmod 700 ${HOME}/${USER}; chown ${USER}:${GROUP} ${HOME}/${USER}; } cat > ${HOME}/${USER}/uml_start << KONEC #!/bin/bash export PATH='$PATH:/usr/lib/uml/' /home/uml/linux \ mem=64M \ ubd0=${HOME}/${USER}/${USER}.img,/home/uml/${DISTRO}.img \ ubd1=${HOME}/${USER}/${USER}_swap.img \ con0=fd:0,fd:1 \ con1=pty \ con2=port:`expr 9001 + $PORADI` \ con=pts \ eth0=tuntap,,,10.0.0.`expr 1 + $PORADI` \ umid=linux KONEC dd if=/dev/zero of=${HOME}/${USER}/${USER}_swap.img seek=512 bs=1M count=1 mkswap ${HOME}/${USER}/${USER}_swap.img chmod +x ${HOME}/${USER}/uml_start chown -R ${USER}:${GROUP} ${HOME}/${USER}