虚拟机版本:6.0.4 r128413 (Qt5.6.2)
linux:centos7/6
点击菜单栏中的设备->安装增强功能,再reboot
获取内核版本号
uname -r
查看yum的内核头文件是否存在,不存在wget下载安装
yum list | grep kernel-headers
不存在,获取新的内核rpm文件,并rpm安装到yum中:
yum install wget wget http://vault.centos.org/7.6.1810/os/Source/SPackages/kernel-3.10.0-957.el7.src.rpm//获取内核版本rpm文件,文件路径需根据内核版本号获取 rpm -ivh kernel-3.10.0-957.1.3.el7.src.rpm//安装yum源 报错:warning: user mockbuild does not exist - using root和warning: group mockbuild does not exist - using root groupadd mockbuild//新建用户组,,useradd mockbuild -g mockbuild//在组下,新建用户
再次查看yum的内核头文件与uname -r信息是否一致,不一致则更新。否则之后执行./VBoxLinuxAdditions.run报错:kernel headers not found for target kernel
yum list | grep kernel-headers
更新步骤:
1.更新内核 yum update kernel -y 2.安装内核依赖 yum install kernel-headers kernel-devel gcc make -y 3.重启,确保为从新内核启动 init 6
开始安装挂载:
mount /dev/cdrom /mnt
报错://写保护
解决:mount -o remount,rm /mnt/
cd mnt/ ./VBoxLinuxAdditions.run reboot
在设置中配置共享文件夹,注意自动挂载要勾选
启动虚拟机,共享目录会挂载到/media名称目录下
共享文件访问:
共享后,为了方便一般使用宿主机浏览器访问虚拟机的网站项目文件。这个时候会出现一系列问题:
Error:is forbidden (13: Permission denied)
如上图。共享文件夹是在vboxsf组下的,所以我们需要将启动它的worker放在该组别下
查看nginx的worker
ps aux | grep "nginx: worker process" | awk '{print $1}'
修改用户组别(一个用户可以分属多个组):
usermod -a -G vboxsf username
执行命令:cat /etc/group查看
因为忘记将开机启动文件分配权限了,所以nginx一直没有运行,浏览器访问时总是报错:被拒绝访问。原因是端口未开启,但是通信端口是随着服务开启而开启监听的(即使 nc -lp 端口号 开启,在reboot后也会失效),故启动nginx服务就可以了。