O que é uma boa distribuição para usar que é semelhante ao Amazon Linux [closed]

1

Estou executando o OS / distro "Amazon Linux" em produção no EC2, mas gostaria de fazer um desenvolvimento / teste local com VMs do VirtualBox. O que seria uma boa distribuição para usar é mais semelhante ao Amazon Linux. Estou mais interessado em ter certeza de que tenho os mesmos pacotes disponíveis para mim.

Eu estou mais familiarizado com distros baseadas no yum / rpm, então é onde eu gostaria de ficar, mas se houver outra distro que terá uma melhor similaridade de pacote com o apt, eu acho que posso fazer isso funcionar.

Uma lista resumida dos pacotes que preciso executar é o mysql5.5, apache2.2, php5.3 e tomcat7.

    
por Steakfest 26.04.2014 / 03:17

1 resposta

2

Esta questão está fadada a ser fechada, pois é muito ampla. Mas quero compartilhar algumas informações úteis que podem ser úteis para futuras referências. Você pode usar a imagem da Amazon AMI que você criou originalmente (de preferência uma imagem do Fedora) no virtualbox .

Etapas

NOTA: você terá que fazer tudo isso com privilégios de root.

Crie um novo arquivo de unidade bruta

Este é de ~ 10 shows:

dd if=/dev/zero of=newimage.raw bs=1M count=10240

Particione-o

Primeiro, adicione-o a um dispositivo de loopback:

losetup -fv newimage.raw
Loop device is /dev/loop0 

Em seguida, particione-o (isso faz uma partição para todo o disco). Certifique-se de que é inicializável. Os padrões estão bem.

cfdisk /dev/loop0

Nota: você precisa realmente selecionar Escrever e apertar enter para que isso funcione ou você vai sair sem realmente particioná-lo, o que eu faço todas as vezes.

Crie um sistema de arquivos

Você não pode usar o mkfs porque ele estraga sua determinação automática de tamanhos do sistema de arquivos em dispositivos de loopback. Em vez disso, localize o início, o final e o número de blocos da partição, o número de cilindros e o tamanho do bloco:

fdisk -l -u /dev/loop0
Disk /dev/loop0: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders, total 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

      Device Boot      Start         End      Blocks   Id  System
/dev/loop0p1   *          63    20964824    10482381   83  Linux

Calcule o começo da partição x blocksize. Neste caso (na maioria, na verdade), é 512 * 63 (tamanho setorial * setor inicial): 32256. Configure um novo dispositivo de loopback para esta partição, especificando um deslocamento:

losetup -fv -o 32256 newimage.raw
Loop device is /dev/loop1

Você vai criar um sistema de arquivos agora com algum tamanho de bloco (provavelmente 4096, que é padrão e o que eu uso) e um número de blocos com o qual você computa: ((fim-de-início) * unidades) / blocksize ou ((20964824 - 63) * 512) / 4096, no nosso caso.

Para criar o sistema de arquivos em nossa nova partição:

mkfs.ext3 -b 4096 /dev/loop1 2620595

Copie e prepare o novo sistema de arquivos

Primeiro, configure a imagem .raw também como um dispositivo de loopback:

losetup -fv genprog-raw-image.raw
Loop device is /dev/loop2

Monte:

mkdir /mnt/tmp_1
mount -t ext3 /dev/loop2 /mnt/tmp_1

Faça o mesmo com sua nova imagem:

mkdir -p /mnt/loop/1
mount -t ext3 /dev/loop1 /mnt/loop/1
cp -a /mnt/tmp_1/* /mnt/loop/1/

As instruções do site que eu peguei tudo isso sugere que você precisa copiar os módulos de inicialização para obter as informações do initrd e do kernel, mas, por algum motivo, não acho que precisei fazer isso.

Várias modificações antes de adicionar um gerenciador de inicialização

Edite menu.lst e certifique-se de que o root = esteja definido como / dev / sda1: (a raiz = substring é muito aleatoriamente localizada)

vi /mnt/loop/1/boot/grub/menu.lst

Edite fstab para o mesmo propósito (substitua / dev / xfvg por / dev / sda1):

vi /mnt/loop1/etc/fstab

A Amazon define uma senha de raiz aleatória, o que não funciona. Em vez disso:

chroot /mnt/loop/1
mv /etc/rc.local /etc/rc.local-old
passwd root
exit

Configure o Grub na nova unidade

Desmonte e exclua o dispositivo de loopback com a partição (aquela com o deslocamento) para que o Grub funcione sem reclamar:

umount /mnt/loop/1
losetup -d /mnt/loop1

Volte para as informações do fdisk, acima (> fdisk -l -u / dev / loop0) e obtenha o número de cilindros, cabeças e setores / trilhas. Então faça:

grub --device-map=/dev/null

Você vai entrar em uma coisa interativa do Grub.

grub> device (hd0) newimage.raw
grub> geometry (hd0) 1305 255 63
grub> root (hd0,0)
grub> setup (hd0)
You'll get a lot of output, then:
Done.
grub> quit

Desmonte as unidades montadas e exclua todos os seus dispositivos de loopback. Notas: desmontar uma desmontagem. Por que não há n além de mim. Além disso, o losetup -a lista todos os dispositivos de loopback ativos.

losetup -d /dev/loop0
losetup -d /dev/loop1
losetup -d /dev/loop2

Faça o VirtualBox funcionar bem

Ainda é um .raw, sim? Converter:

VBoxManage convertdd newimage.raw newimage.vdi

(acho que convertfromraw funciona também b / c convertdd é para compatibilidade com versões anteriores.)

Use o newimage.vdi para criar uma nova máquina VirtualBox. Faça o material padrão, mas abra as configurações, selecione Sistema - > Processador e defina a caixa de seleção ao lado de Ativar PAE / NX.

Edite o / etc / ssh / sshd_config e mude a parte que diz "PasswordAuthentication" ou o que for de não para sim.

Desligue a vm. De volta à linha de comando, para ativar o sshing em:

VBoxManage modifyvm "VM name" --natpf1 "guestssh,tcp,,2222,,22"

Isso encaminhará solicitações para a porta 2222 da máquina host para a porta 22 da máquina convidada (em que a escuta ssh ocorre por padrão). Para ssh in, faça:

ssh -p 2222 root@localhost

Feito!

REFERÊNCIAS

link link link

    
por 26.04.2014 / 04:17