Linux 你没有';I don’我没有权限访问/使用此服务器ubuntu 14.04

Linux 你没有';I don’我没有权限访问/使用此服务器ubuntu 14.04,linux,apache,ubuntu,configuration,mount,Linux,Apache,Ubuntu,Configuration,Mount,议程:在Linux和Windows之间有一个公共项目文件夹 在我的ubuntu机器14.04中,我已将文档根目录从:/var/www/html更改为/media/mithun/Projects/test 我得到的错误是: 禁止 您没有访问/访问此服务器的权限 本地主机端口80上的Apache/2.4.7(Ubuntu)服务器 所以我添加了一些脚本到:sudogedit/etc/apache2/sites available/000 default.conf # DocumentRoot /var

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

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

我得到的错误是:

禁止

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

本地主机端口80上的Apache/2.4.7(Ubuntu)服务器

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

# DocumentRoot /var/www/html
  DocumentRoot /media/mithun/Projects/test
但是
文档根/var/www/test
可以工作,但不能与Windows NTFS分区驱动器一起工作

即使在提到:

  • 没有成功:(所以请帮助我

    注意:项目是一个新卷(内部驱动器:在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

    我接收的输出为:
    用法:/etc/init.d/apparmor
    {start | stop | restart | reload | force reload | status | recache}

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


    也许问题很简单:www数据用户可以访问您的新根目录吗? 尝试:


    正如您现在所发现的,您不能只操作NTFS分区上的权限(使用
    chmod

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

    现在,实现这一点的方法取决于您实际使用的NTFS实用程序(我不知道,所以我假设您使用的是
    NTFS-3g

    例如,使用以下参数装入分区(用实际分区替换
    dev/sdX
    ,用目标路径替换
    /path/to/where
    drive/is/mounted`):

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

    如果文件系统明确地设置了组所有权,这可能仍然不起作用。 在这种情况下,您可能需要设置一个
    usermap
    ,将您的windows用户/组(如分区上所示)映射到您的linux用户/组

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

     ntfs-3g.usermap /dev/sdX
    
    然后将usermap传递给装载选项:

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

    我怀疑您有apparmor强制执行阻止Apache读取非白名单目录路径的规则

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

    $sudo aa投诉/etc/apparmor.d/*

  • 使用mod_apparmor?参见

  • 或完全禁用apparmor。请参阅

  • 我的优先顺序是1,3,2。这应该可以为您解决这个问题:)

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

    sudo mount -o remount,rw /disk/location /disk/new_location
    
    如果它仍然不工作,那么在windows操作系统中,转到电源选项并禁用快速启动

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


    原创文章:

    我试过你的代码。它的抛出错误为:“chown:更改“/media/mithun/Projects”的所有权:不允许操作”在根目录中尝试。另外,如果你想知道这是否是真正的问题,试试ls-la/media/mithun/Projects,看看第三列和第四列是否设置为www-data(对Projects-one中的文件夹也一样),我没有看到它,它是一个windows分区。。。这将更加复杂。。。您的项目是否可以在线访问?如果没有,请尝试chmod777所有文件对不起,没有将其作为windows分区放在前面。在投了反对票后,我分析说,经过所有可能的努力,它是干净和清晰的。我尝试使用777设置权限,但仍然没有骰子:(我是否需要为/media/mithun/Projects complete目录或/media/mithun/Projects/test(存在项目文件夹的地方)分配777权限)现在很明显,由于NTFS分区的原因,这应该是一个正确的问题。也许您应该在这里尝试以下解决方案之一:步骤1是读取错误日志。在单处理器/调试模式下启动apache服务器。将strace附加到该服务器上,并找出引发错误的确切系统调用。您可以将其粘贴到问题中吗请注意,您可以尝试sudo-u www-data“ls/media/mithun/Projects/test”之类的东西。我的直觉是,您有apparmor或selinux或类似的东西挡住了您:)Hi@Lmwangi-我尝试了
    sudo-u www-data“ls/media/mithun/Projects/test”
    。它抛出了“未找到命令”错误。哦,请删除引号。应该是sudo-u www-data-ls/media/mithun/Projects/test或者更好的sudo-u www-data-strace-ls/media/mithun/Projects/testi尝试了你的第一步
    mount-o gid=www-data/dev/sdX/path/where/the/drive/is/mounted
    ,但在第二步失败-它抛出错误,因为
    无法打开“/dev/sda1”确保“/dev/sda1”未安装
    。我也用gparted卸载了,我接受了答案,因为我付出了努力,但它还没有解决
      mount -o usermapping=/path/to/usermap.file /dev/sdX /path/where/the/drive/is/mounted 
    
    sudo mount -o remount,rw /disk/location /disk/new_location