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
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
分享到: