Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何授予apache使用NTFS分区上目录的权限?_Linux_Apache_Ubuntu_File Permissions_Ntfs - Fatal编程技术网

Linux 如何授予apache使用NTFS分区上目录的权限?

Linux 如何授予apache使用NTFS分区上目录的权限?,linux,apache,ubuntu,file-permissions,ntfs,Linux,Apache,Ubuntu,File Permissions,Ntfs,我在一台有20GB硬盘的旧机器上运行Linux(Lubutu 12.10)。我有一个1 TB的外部硬盘,上面有一个NTFS分区。在那个分区上,有一个存放我的web内容的www目录。它在启动时自动装载为/media/t515/NTFS 我想将apache文档目录从/var/www更改为/media/t515/NTFS/www 我需要将该分区保持为NTFS分区,因为我在运行WAMP的不同机器上使用相同的硬盘驱动器 我将/etc/apache2/sites中的文件“default”更改为新位置,并重新

我在一台有20GB硬盘的旧机器上运行Linux(Lubutu 12.10)。我有一个1 TB的外部硬盘,上面有一个NTFS分区。在那个分区上,有一个存放我的web内容的www目录。它在启动时自动装载为/media/t515/NTFS

我想将apache文档目录从/var/www更改为/media/t515/NTFS/www

我需要将该分区保持为NTFS分区,因为我在运行WAMP的不同机器上使用相同的硬盘驱动器

我将/etc/apache2/sites中的文件“default”更改为新位置,并重新启动了服务器。当我尝试转到本地主机时,出现错误:

403禁止 您没有访问/访问此服务器的权限

然后,我将fstab中的自动装载选项更改为包含选项“umask=0000”,然后更改为“umask=2200”,但均无效。我仍然收到相同的错误消息


我可以从其他应用程序访问NTFS分区,并且在以任何用户身份登录时都不会出现问题。但是Apache似乎无法(或不愿意)访问分区。如何授予apache使用NTFS分区上目录的权限?

其实很简单:

1) 在Windows主机上创建本地用户

2) 向该用户授予适当的NTFS权限

3) 验证访问权限(仅限Windows)

。。。然后

4) 将Linux上的NTFS装载配置为使用相同的Windows用户和组(此处与Linux用户/组无关)


5) 将Apache配置为使用该Linux组(Linux用户/组在这里是必不可少的)

根据我的经验,我总是必须使用RW权限重新安装驱动器。我们发现:

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

对于NTFS分区,请使用fstab中的权限选项

首先卸载ntfs分区

然后编辑
/etc/fstab

图形
gksu gedit/etc/fstab

命令行
sudo-e/etc/fstab

用blkid标识分区UUID

苏多布尔基德

并为ntfs分区添加或编辑一行

# change the "UUID" to your partition UUID
UUID=12102C02102CEB83 /media/windows ntfs-3g auto,users,permissions 0 0
制作安装点(如果需要)

sudo mkdir/media/windows

现在挂载分区

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

我给你的选项auto会自动挂载分区 启动时,用户允许用户装载和卸载

然后可以在ntfs分区上使用chown和chmod


两者都在这里找到:

经过多次尝试,这里是我成功的地方,其他什么都没有:更改Apache的配置,使其不再使用www-data(Apache用户),而是使用我自己的用户

做起来很简单。在我的Apache版本中,需要更改的两行代码位于
/etc/apache2/envvars
文件中(它可以是另一个版本中的另一个文件):

我用我的用户名替换了
www-data
(此处
toto
:):


上面的答案都不能解决这个问题,事实上,这个问题与Apache本身有关,而与文件系统或权限无关

您唯一需要做的是:

<Directory "/www/mywebdirectoryinapartitioneddisk">
    Require all granted
</Directory>

要求所有授权
这将解决问题

这里是我博客上的帖子,详细解释了一切。它可以在NTFS上工作


谢谢你的回答。我不完全清楚怎么做。我已在Windows中创建了一个本地用户,并已为该用户授予完全NTFS权限。如何编辑fstab以作为该windows用户自动装入分区?在那之后我如何配置apache?我必须创建一个与我创建的Windows用户同名的Linux用户吗?事实上,我让它顺利运行。我必须更改父文件夹的权限。尽管/media/t515/NTFS具有完全权限,/media/t515没有完全权限。我没有意识到apache需要访问路径中的所有目录才能工作,但我发现它隐藏在apache文档中。如果您找到了任何现有答案尚未涵盖的解决方案,请。谢谢方法#2正是我所期待的,forMan,你救了我。非常感谢。
<Directory "/www/mywebdirectoryinapartitioneddisk">
    Require all granted
</Directory>