您无权访问此服务器上的/ ubuntu 14.04

时间:2015-05-12 13:48:16

标签: linux apache ubuntu configuration mount

议程:在Linux和Windows之间拥有一个公共项目文件夹

我已在我的ubuntu机器14.04中将我的文档根目录从/var/www/html更改为/media/mithun/Projects/test

我收到错误:

  

禁止

     

您无权访问此服务器上的内容。

     

localhost端口80上的Apache / 2.4.7(Ubuntu)服务器

所以我添加了一些脚本:sudo gedit /etc/apache2/sites-available/000-default.conf

# DocumentRoot /var/www/html
  DocumentRoot /media/mithun/Projects/test

但是Document Root /var/www/test有效,但不适用于 Windows NTFS分区驱动器

即使提到:

  1. Error message "Forbidden You don't have permission to access / on this server"
  2. Issue with my Ubuntu Apache Conf file. (Forbidden You don't have permission to access / on this server.)
  3. 没有成功:(所以请帮助我...

    注意: 项目是一个新卷(内部驱动器:在Windows中它的E:/ Drive)

      

    @Lmwangi - 请查看我的更新,以供您参考:

         

    输出: ls /etc/apparmor.d/

    abstractions    lightdm-guest-session  usr.bin.evince         usr.sbin.cupsd
    cache           local                  usr.bin.firefox        usr.sbin.mysqld
    disable         sbin.dhclient          usr.lib.telepathy      usr.sbin.rsyslogd
    force-complain  tunables               usr.sbin.cups-browsed  usr.sbin.tcpdump
    
         

    我试图杀死apparmor:

         

    sudo /etc/init.d/apparmor kill

         

    我收到的输出为: Usage: /etc/init.d/apparmor {start|stop|restart|reload|force-reload|status|recache}

         

    在此之后,我还能够成功重启apache

4 个答案:

答案 0 :(得分:1)

问题可能很简单:www-data用户可以访问新的根目录吗? 试试:

$ chown -R www-data:www-data /media/mithun/Projects

答案 1 :(得分:1)

正如您现在已经发现的那样,您不能仅仅操纵NTFS分区上的权限(使用chmod等工具)

但是,您可以在挂载时尝试强制整个分区的给定所有者/权限。

现在这样做的方法取决于你实际使用的NTFS实用程序(我不知道,所以我假设你正在使用ntfs-3g

E.g。使用以下参数挂载分区(将dev/sdX替换为您的实际分区,并使用目标路径替换/path/to/where drive / is / mounted`:

  mount -o gid=www-data /dev/sdX /path/where/the/drive/is/mounted 

应该使分区上的所有文件都属于www-data组。

如果文件系统明确设置了组所有权,那么这仍然可能无法正常工作。 在这种情况下,您可能需要设置usermap,将您的Windows用户/组(在分区上找到)映射到您的Linux用户/组。

ntfs-3g.usermap实用程序将帮助您生成初始用户地图文件,然后您可以根据需要进行编辑:

 ntfs-3g.usermap /dev/sdX

然后将usermap传递给挂载选项:

  mount -o usermapping=/path/to/usermap.file /dev/sdX /path/where/the/drive/is/mounted 

答案 2 :(得分:0)

我怀疑你有apparmor强制规则阻止Apache读取非列入白名单的目录路径。我建议你

  1. 编辑Apache的apparmor配置以访问您的自定义路径。你需要在/etc/apparmor.d/周围打猎。您可能还会发现在非强制模式下使用apparmor很有帮助。

    $ sudo aa-complain /etc/apparmor.d / *

  2. 使用mod_apparmor?请参阅this

  3. 或完全禁用apparmor。请参阅this
  4. 我的偏好顺序是1,3,2。这应该为你解决这个问题:)

答案 3 :(得分:0)

在Windows下使用ubuntu时,我遇到了同样的问题,可以通过重新安装具有读写访问权限的驱动器来解决该问题。下面的命令将帮助您做到这一点:

sudo mount -o remount,rw /disk/location /disk/new_location

如果仍然无法正常运行,请在Windows操作系统中转到电源选项并禁用快速启动。

当关闭启用了“快速启动”的计算机时,Windows会锁定Windows硬盘。如果您将计算机配置为双启动,则将无法从其他操作系统访问它。更糟糕的是,如果启动到另一个操作系统,然后访问或更改休眠的Windows安装所使用的硬盘(或分区)上的任何内容,则可能导致损坏。如果您是双重启动,则最好不要使用“快速启动”或“休眠”。

原创文章:https://www.howtogeek.com/243901/the-pros-and-cons-of-windows-10s-fast-startup-mode/