Eu recomendaria usar o sistema de embalagem da sua distribuição. Crie seu pacote de kernel personalizado e, em seguida, você poderá distribuí-lo para suas VMs da maneira mais fácil. Muitas distribuições fornecem instruções sobre como fazer isso com seu gerenciador de pacotes preferido (veja abaixo para o Ubuntu).
Se você está reconstruindo o kernel (e / ou outro software) com freqüência, você pode crie um repositório de pacotes local (por exemplo, no host) para adicionar à lista de repositórios dos convidados. Em seguida, os convidados poderão retirar novos pacotes assim que estiverem disponíveis.
Se você tiver apenas alguns pacotes para distribuir, colocá-los no host em um cache de pacote local ad-hoc funciona da mesma forma. Compartilhe este local com os convidados com o Samba, ou simplesmente rsync
os pacotes manualmente quando necessário.
No Ubuntu, o construção de um pacote de kernel personalizado se resume a:
-
Obtenha a fonte
-
apt-get source linux-image-$(uname -r)
OR -
git clone git://kernel.ubuntu.com/ubuntu/ubuntu-<releasename>.git
-
-
Prepare seu ambiente de criação
-
sudo apt-get build-dep linux-image-$(uname -r)
-
-
Modifique sua configuração de kernel
-
chmod a+x debian/rules debian/scripts/* debian/scripts/misc/*
-
fakeroot debian/rules clean
-
fakeroot debian/rules editconfigs
(passar por cada) - Adicione um identificador de versão local (por exemplo,
+myVer1
) ao final do primeiro número de versão emdebian.master/changelog
, entãoapt
o reconhece como um kernel mais novo que a versão do repositório oficial.
-
-
Construa o kernel
-
fakeroot debian/rules clean
-
fakeroot debian/rules binary-headers binary-generic binary-perarch
(compilação rápida) OU -
fakeroot debian/rules binary
(mais lento, se forem necessárias ferramentas do Linux ou de baixa latência)
-
Se a compilação tiver sucesso, seus pacotes .deb
personalizados estarão no diretório acima da raiz da compilação.