Как загрузить виртуальную машину из обычной папки?

Относительно просто с Perl:

perl -n -E '/([0-9:]+)elapsed/ and say $1' «FILE»

Обратите внимание, что просто ищет что-то похожее на время перед словом «прошедшее» (без пробелов). Это может привести к ложному срабатыванию при применении к другим файлам. Кроме того, он проверяет каждую строку в файле (и выводит все найденное время), а не только первую.

1
02.05.2017, 05:01
1 ответ

В качестве частичного ответа я создал следующий инструмент для создания контейнера LXC из подтома: https://github.com/aktos-io/lxc-to-the- future

if [[ "$(grep br0 /etc/network/interfaces)" == "" ]]; then 
    cat <<ONETIME
ERROR: No br0 bridge device found in  /etc/network/interfaces file. 
Edit your /etc/network/interfaces file and add/replace the following section 
in place of "eth0" section 

    auto br0
    iface br0 inet dhcp
        bridge-ifaces eth0
        bridge-ports eth0
        up ifconfig eth0 up

    iface eth0 inet manual


Then run the following: 
    sudo ifup br0
ONETIME
    exit
fi

echo "creating the container directory: $NAME"
mkdir $DIR/$NAME

echo "creating a writable snapshot of given subvolume"
btrfs sub snap $SUBVOL $DIR/$NAME/rootfs

echo "emptying the /etc/fstab file"
echo > $DIR/$NAME/rootfs/etc/fstab

echo "creating the config file"
cat <<CONFIG > $DIR/$NAME/config
# Distribution configuration
lxc.include = /usr/share/lxc/config/debian.common.conf
lxc.arch = x86_64
# Container specific configuration
lxc.rootfs = /var/lib/lxc/$NAME/rootfs
lxc.rootfs.backend = dir
lxc.utsname = $NAME
# Network configuration
lxc.network.type = veth
lxc.network.link = br0
lxc.network.hwaddr = 00:16:3e:7e:11:ac
lxc.network.flags = up 
CONFIG
1
28.01.2020, 00:57

Теги

Похожие вопросы