Comment puis-je autoriser apache à utiliser un répertoire sur une partition NTFS?

Je suis sous Linux (Lubutu 12.10) sur une ancienne machine avec un disque dur de 20 Go. J’ai un disque dur externe de 1 To avec une partition NTFS. Sur cette partition, il existe un répertoire www contenant mon contenu Web. Il est monté automatiquement au démarrage sous / media / t515 / NTFS.

Je voudrais changer le répertoire de document apache de / var / www à / media / t515 / NTFS / www.

Je dois conserver la partition en tant que partition NTFS, car j’utilise le même disque dur sur une autre machine exécutant WAMP.

J’ai changé le fichier “default” dans / etc / apache2 / sites-available pour le nouvel emplacement et redémarré le serveur. Quand j’ai essayé d’aller sur l’hôte local, j’ai eu l’erreur:

403 Interdit Vous n’êtes pas autorisé à accéder à / sur ce serveur.

J’ai ensuite changé les options de assembly automatique dans fstab pour inclure l’option “umask = 0000”, puis “umask = 2200”, les deux en vain. J’ai toujours le même message d’erreur.

Je peux accéder à la partition NTFS sans problème avec d’autres applications et lorsque vous êtes connecté en tant qu’utilisateur. Mais Apache semble incapable (ou ne veut pas) accéder à la partition. Comment puis-je autoriser apache à utiliser un répertoire sur une partition NTFS?

Après de nombreuses tentatives, voici ce qui a réussi pour moi et rien d’autre : changer la configuration d’Apache pour qu’elle n’utilise plus que www-data (utilisateur Apache), mais mon propre utilisateur.

Très simple à faire Dans ma version d’Apache, les deux lignes à modifier se trouvent dans le fichier /etc/apache2/envvars (il peut s’agir d’un autre fichier dans une autre version):

 export APACHE_RUN_USER=www-data export APACHE_RUN_GROUP=www-data 

J’ai remplacé www-data par mon nom d’utilisateur (ici toto :)):

 export APACHE_RUN_USER=toto export APACHE_RUN_GROUP=toto 

Dans mon expérience, j’ai toujours dû remonter le disque avec les permissions RW. a trouvé ceci:

 sudo mount -t ntfs -o rw,auto,user,fmask=0022,dmask=0000 /dev/whatever /mnt/whatever 

ou:

Pour les partitions NTFS, utilisez l’option d’permissions dans fstab.

Démontez d’abord la partition ntfs.

Ensuite, éditez /etc/fstab

gksu gedit /etc/fstab graphique gksu gedit /etc/fstab

Ligne de commande sudo -e /etc/fstab

Identifiez votre partition UUID avec blkid

sudo blkid

Et append ou modifier une ligne pour la partition ntfs

 # change the "UUID" to your partition UUID UUID=12102C02102CEB83 /media/windows ntfs-3g auto,users,permissions 0 0 

Faire un sharepoint assembly (si nécessaire)

sudo mkdir / media / windows

Maintenant, montez la partition

monter / media / windows

Les options que je vous ai données, auto, monteront automatiquement la partition au démarrage et les utilisateurs autoriseront les utilisateurs à monter et démonter.

Vous pouvez ensuite utiliser chown et chmod sur la partition ntfs.

Les deux trouvés ici: https://askubuntu.com/questions/11840/how-to-chmod-on-an-ntfs-or-fat32-partition

Aucune des réponses ci-dessus ne résout le problème, en fait, le problème est lié à Apache lui-même, pas au système de fichiers ni aux permissions.

La seule chose à faire est:

  Require all granted  

cela va résoudre le problème

ici le post dans mon blog expliquant tout en détail. Cela pourrait fonctionner sur NTFS

http://www.tbogard.com/2014/09/12/making-apache-server-to-read-a-partitioned-disk-the-definitive-solution/

C’est en fait assez simple:

1) Créez un utilisateur local sur l’hôte Windows

2) Accordez les permissions NTFS appropriées à cet utilisateur

3) Vérifier l’access (Windows uniquement)

… PUIS …

4) Configurez votre assembly NTFS sur Linux pour utiliser le même utilisateur et le même groupe Windows (l’utilisateur / le groupe Linux n’est pas pertinent ici)

5) Configurer Apache pour utiliser ce groupe Linux (utilisateur / groupe Linux est essentiel ici)