É possível fazer o host virtual em uma partição NTFS?

2

Estou usando o Ubuntu e o Windows. Quando uso o Windows, não consigo acessar meu arquivo em var/www da minha partição Linux. Então eu tento fazer o host virtual e DirectoryRoot na minha partição NTFS.

Eu vou combinar o diretório WAMP no Windows e o diretório raiz do host virtual no Ubuntu, mas isso não funciona. Aparece sempre error 403 forbidden access . E quando eu mudar as permissões com chmod nada muda.

O que devo fazer?

    
por rslhdyt 27.04.2013 / 15:10

4 respostas

1

Configurações da partição NTFS

Primeiro você precisa acessar sua partição NTFS via Ubuntu. Faça os seguintes passos, se você não o fez.

sudo apt-get install ntfs-3g

Encontre o nome da (s) partição (ões) NTFS. Exemplo:

sudo fdisk -l | grep NTFS

Obtenha o UUID da sua partição NTFS.

$ sudo blkid
/dev/sda1: LABEL="windows" UUID="4ED2A451B2A23F59" TYPE="ntfs"

Configure a partição em / etc / fstab (faça um backup apenas no caso).

sudo cp /etc/fstab /etc/fstab.bak
sudo vim /etc/fstab

Eu criei o meu da seguinte forma (com base no UUID. As seguintes opções definir ler, escrever, executar permissões e uid = 1000 você define como o usuário da partição NTFS durante a inicialização do sistema operacional. Isso também irá garantir que o usuário Apache pode acessar sua direção do host virtual (isso é o que resolveu meu problema).

/dev/disk/by-uuid/4ED2A451B2A23F59 /media/windows ntfs-3g defaults,permissions,users,uid=1000,utf8  0 0

Se você deseja montar a partição como www-data user, encontre o ID de usuário www-data e substitua uid=1000 por:

id -u www-data

Note que você pode precisar criar o diretório / media / windows, se ele não existir.

cd /media
sudo mkdir windows
sudo chown sagun:users windows

Reinicialize o seu computador e confirme se a sua unidade NTFS monta automaticamente com permissões de leitura, gravação e execução ativadas.

Configurações para configurar o host virtual no Apache

Crie diretórios para colocar seus arquivos de log (se você quiser):

sudo mkdir /var/log/apache2/projects.dev

Crie um novo arquivo de configuração dentro do diretório / etc / apache2 / sites-available. Exemplo:

sudo vim /etc/apache2/sites-available/projects.dev.conf

Defina sua configuração semelhante a esta e salve o arquivo:

<VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName projects.dev
    ServerAlias projects
    DocumentRoot /media/windows/Users/sagun/Dropbox/projects
    <Directory />
        Options FollowSymLinks
        AuthType None
        AllowOverride None
        Order deny,allow
        Deny from all
    </Directory>
    <Directory /media/windows/Users/sagun/Dropbox/projects/>
        Require all granted
        Options Indexes FollowSymLinks MultiViews
        AuthType None
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>
    ErrorLog ${APACHE_LOG_DIR}/projects.dev/error.log
    LogLevel warn
    CustomLog ${APACHE_LOG_DIR}/projects.dev/access.log combined
</VirtualHost>

Em seguida, edite o arquivo / etc / hosts.

sudo vim /etc/hosts

Adicione a seguinte linha e salve:

127.0.0.1   projects.dev

Ative o host com o seguinte comando:

sudo a2ensite projects.dev

Reinicie o Apache

sudo service apache2 restart

Por fim, consegui ir para http://projects.dev do meu navegador com todo o meu código residente na partição NTFS do Windows e do Ubuntu. Espero que alguém ache isso útil. Felicidades!

    
por Sagun Man Singh Shrestha 08.02.2014 / 07:31
1

Isso é o que você precisa para corrigir o problema

link

Basicamente você precisa de uma entrada como essa no seu arquivo httpd.conf

<Directory "physical path to the directory">
    Order Allow,Deny
    Allow from All
    # Any other directory-specific stuff
</Directory>
    
por thefourtheye 27.04.2013 / 15:48
0

A melhor solução para mim foi mudar o usuário do Apache, isso pode ser um pouco arriscado, mas funcionou bem para mim.

sudo vim /etc/apache2/envvars
    
por Rafael Ortega Bueno 09.11.2015 / 03:40
0

Se você configurar seu disco rígido para ser montado automaticamente, provavelmente o processo de edição para envios não funcionará porque a partição estará em / mnt.

Esse procedimento pode não ser tão seguro, mas funcionou por minutos. Deixei o usuário do www-data mesmo em envvars e adicionei o usuário do apache ao grupo raiz.

sudo usermod -G root www-data

Como funciona apenas localmente, acredito que não há grandes riscos.

    
por Rafael Ortega Bueno 23.11.2015 / 12:52