Minha configuração

Minha configuração

Minha configuração

insira a descrição da imagem aqui

Quero configurar uma VM Ubuntu para atuar como um servidor web para desenvolvimento.

Razão

Quero ter um ambiente de desenvolvimento o mais próximo possível do ambiente de produção real.

Problema

A configuração acima falhou. Continuo recebendo um arquivo não encontrado quando navego parahttp://projeto1.localhost:8888

O que eu tentei

Eu adicionei www-dataao grupo vboxsfusando

sudo adduser www-data vboxsf

antes de tentar qualquer uma das opções abaixo.

  1. Como mencionado, tentei a configuração acima. Erro de arquivo não encontrado na página da web.
  2. Eu tentei a configuração acima, mas link simbólico de /var/virtual/project1para /media/sf_WebApps/project1. Erro de arquivo não encontrado na página da web.
  3. Eu tentei chown /media/sf_WebAppsde root:vboxsfpara www-data:vboxsf. Não é possivel.
  4. Tentei chmod /media/sf_WebAppspara 755. Não é possível.
  5. Fiz uma cópia /media/sf_WebApps/project1e coloquei a cópia dentro do arquivo /var/virtual. Isso funciona,mas não é isso que eu quero. Por que não?Porque quero usar facilmente meus programas host, como o aplicativo github mac e o editor de texto sublime, para fazer alterações na base de código e vê-la refletida quando eu visitar o navegador.

Responder1

A resposta é encontradaaqui de serverfault.

Basicamente, você precisa montar a pasta compartilhada (já montada) como outro usuário.

Tipo

mount -t vboxsf SHARE_NAME -o rw,dmode=777,gid=GROUP_ID,uid=USER_ID /path/on/guest

Neste caso, será

mount -t vboxsf WebApps -o rw,dmode=777,gid=GROUP_ID,uid=USER_ID /var/virtual/some_folder_name

Se você quiser fazer essa montagem toda vez que ligar o sistema operacional convidado, crie um arquivo em /etc/init/SOMETHING.conf, com algo assim:

description     "SOME DESCRIPTION"

start on starting

task
exec mount -t vboxsf WebApps -o rw,dmode=777,gid=GROUP_ID,uid=USER_ID /var/virtual/some_folder_name

Para descobrir qual é o seu uid ou gid

 id -u username
 id -g username

Solução de problemas:

Lembre-se sempre de criar primeiro o ponto de montagem.

Lembre-se sempre de instalar o GuestAdditions primeiro. Você pode consultarhttp://docs-v1.vagrantup.com/v1/docs/base_boxes.htmlem Instalar adições para convidados.

sudo apt-get install linux-headers-$(uname -r) build-essential
sudo apt-get install dkms -y

sudo mount /dev/cdrom /media/cdrom
sudo sh /media/cdrom/VBoxLinuxAdditions.run

Responder2

  1. Para editar /etc/group
  2. Para encontrar a linha que contém "vboxsf"
  3. Para adicionar conta após dois pontos (como www-data). Se precisar adicionar várias contas, você pode separá-las por vírgula
  4. Faça login novamente ou reinicie

Responder3

Fiz algo semelhante à solução @KimStacks, mas não consegui /etc/init/SOMETHING.conftrabalhar no Ubuntu 18.04 LTS, mesmo mudandostart on startinggostar start on startupdoExemplo de estouro de pilha.

Achei essas etapas muito mais fáceis:

  • Faça um ponto de montagem permanente (use este local em vez de /mediamontado):

    sudo mkdir /some/location
    
  • Obtenha o uid e o gidde www-data:

    id www-data
    
  • Edite o arquivo crontab:

    sudo crontab -e
    
  • Adicione uma @rebootlinhapara fazê-lo funcionar na inicialização(substitua USER_IDe GROUP_IDpelo uid e gid das etapas anteriores):

    @reboot mount -t vboxsf VirtualBoxFolderShareName /some/location -o uid=USER_ID,gid=GROUP_ID
    

informação relacionada