首页 » LINUX » linux安装在虚拟机里共享window文件,挂载/mnt/hgfs/www,nginx出现403错误

linux安装在虚拟机里共享window文件,挂载/mnt/hgfs/www,nginx出现403错误

 

wmware安装的linux虚拟机共享window文件。在linux里面的配置nginx的根目录/mnt/hgfs/www nginx报403

原因:

nginx作为开机启动,使用servie nginx start启动nginx,没有权限访问到挂载的/mnt/hgfs/www

设置了nginx.conf 的user=root,也没有效果

发现,如果不用service nginx start 启动nginx,使用/usr/sbin/nginx 启动可以解决403问题。

但是这样没有解决。开机启动nginx的问题。因为。开机启动调用的是service nginx start 导致nginx读取/mnt/hgfs/www没有权限。

最后解决找的办法:

寻寻觅觅。发现selinux启用了。

关闭selinux,重启系统,完美结局

selinux关闭方法:

1、/usr/sbin/sestatus -v      ##如果SELinux status参数为enabled即为开启状态
SELinux status:                 enabled

2、getenforce                 ##也可以用这个命令检查

二、关闭SELinux方法:

1、临时关闭(不用重启机器):

代码如下:
setenforce 0 #设置SELinux 成为permissive模式
#setenforce 1 设置SELinux 成为enforcing模式

2、修改配置文件需要重启机器:

修改/etc/selinux/config 文件

将SELINUX=enforcing改为SELINUX=disabled

重启机器即可

===============================================================================

1.bug:此时在linux中进入 /mnt/hgfs 文件夹,但发现共享的文件没有显示

使用以下办法解决(root权限):

1. vmware-hgfsclient 命令查看当前有哪些共享的目录,这里我只使用了shared文件夹

2. 使用 mount -t vmhgfs .host:/shared /mnt/hgfs 命令挂载该共享文件夹(注意:带.号的哦),其中.host:/Documents是共享名,只需把Documents换成
使用vmware-hgfsclient 命令得到的目录,/mnt/hgfs是挂载点

3. 到此为止是可以使用该共享文件夹了,但每次都得重复mount一次,所以需要设置为随机启动后自动挂载
编辑 /etc/fstab,添加下面一行
.host:/shared /mnt/hgfs vmhgfs defaults 0 0 (按需写)

 

2.脚本解决

set -x
cd $home
cd vmware-tools-distrib/lib/modules/source
sudo tar xf vmhgfs.tar
sudo wget https://raw.github.com/rasa/vmware-tools-patches/master/patches/vmhgfs/vmhgfs-d_count-kernel-3.11-tools-9.6.0.patch
sudo patch -p0 <vmhgfs-d_count-kernel-3.11-tools-9.6.0.patch
sudo mv vmhgfs.tar vmhgfs.orig.tar
sudo tar cf vmhgfs.tar vmhgfs-only
cd $home
cd vmware-tools-distrib
sudo ./vmware-install.pl --clobber-kernel-modules=vmhgfs
set +x

原文链接:linux安装在虚拟机里共享window文件,挂载/mnt/hgfs/www,nginx出现403错误,转载请注明来源!

4