dnf --releasever=29 --installroot=/var/lib/machines/f29.01 install systemd passwd dnf fedora-release NetworkManager
# CentOS
export NAME="centos7-base"
export IPADDR="::3"
export ROOT="/var/lib/machines/${NAME}"
rm -rf ${ROOT}
mkdir -p "${ROOT}"
mkdir -p "${ROOT}/var/lib/rpm"
rpm --rebuilddb --root="${ROOT}"
cd ${ROOT}
C_RELEASE=centos-release-7-6.1810.2.el7.centos.x86_64.rpm
wget -O ${C_RELEASE} http://mirror.centos.org/centos-7/7/os/x86_64/Packages/${C_RELEASE}
rpm -i --root=${ROOT} --nodeps ${C_RELEASE}
rm -vf ${C_RELEASE}
yum --installroot=${ROOT} --releasever=7 -y install \
@core \
openssh-server.x86_64 git vi vim curl wget gcc \
python-devel.x86_64 openssl-devel.x86_64 \
epel-release tmux
setenforce 0
chroot ${ROOT} adduser radek
chroot ${ROOT} usermod -a -G wheel radek
chroot ${ROOT} passwd root
chroot ${ROOT} systemctl enable sshd
chroot ${ROOT} systemctl disable tuned.service
chroot ${ROOT} echo '%wheel ALL=(ALL) NOPASSWD: ALL' > /etc/sudoers.d/wheel
setenforce 1
rm -vf etc/hosts
cp -vf /etc/hosts ${ROOT}/etc
echo "NETWORKING=yes" > etc/sysconfig/network
echo "HOSTNAME=${NAME}.rrr.local" >> etc/sysconfig/network
echo "${IPADDR} ${NAME}.rrr.local ${NAME}" >> etc/hosts
echo "ListenAddress ${IPADDR}" >> etc/ssh/sshd_config
rm -vf etc/localtime
ln -s usr/share/zoneinfo/Europe/Warsaw etc/localtime
touch .autorelabel
mkdir -p home/radek/.ssh
cat /home/radek/.ssh/id_ecdsa.pub > home/radek/.ssh/authorized_keys
chown -vR radek:radek home/radek/.ssh
chmod -v 700 home/radek/.ssh
chmod -v 600 home/radek/.ssh/authorized_keys
curl https://bootstrap.pypa.io/get-pip.py -o home/radek/get-pip.py
systemd-nspawn -D ${ROOT} -b --machine=${NAME}
# as root, inside VM:
yum install -y python34.x86_64 python34-devel.x86_64
ln -s /bin/python3.4 /bin/python3
python /home/radek/get-pip.py
pip install virtualenv tox
Comments