版本说明
CentOS-7-x86_64-Minimal-1708
VMware® Workstation 12 Pro 12.5.6 build-5528349
依赖安装
yum -y install perl gcc make kernel-headers kernel-devel
vm-tools 安装
1. 虚拟机>设置>CD/DVD
1. 使用ISO映像文件: C:\Program Files (x86)\VMware\VMware Workstation\linux.iso
2. 勾选已连接
linux.iso文件在VMware安装目录下找。
2. 挂载CD, 复制VMwareTools, 执行vmware-install.pl
mount /dev/cdrom /mnt
cp /mnt/VMwareTools-10.1.6-5214329.tar.gz ~/
cd ~
tar zxvf VMwareTools-10.1.6-5214329.tar.gz
cd vmware-tools-distrib/
./vmware-install.pl
3. 成功提示
//...一直回车直至出现一下信息代表安装完毕
To enable advanced X features (e.g., guest resolution fit, drag and drop, and
file and text copy/paste), you will need to do one (or more) of the following:
1. Manually start /usr/bin/vmware-user
2. Log out and log back into your desktop session
3. Restart your X session.
Enjoy,
--the VMware team
4. 取消mnt挂载
umount /mnt
配置共享目录
1. 虚拟机>设置>选项>共享文件夹
1. 选择:总是启用
2. 添加目录即可
2. 查看目录
cd /mnt/hgfs
ls
设置成功的话,可以看到共享的文件夹
共享目录无法创建软链问题
windows共享目录无法创建软链接, 有些项目像laravel,node_modules安装的时候会出现问题。我是通过rsync同步的方式,同步共享目录里的项目到另一个linux目录下。虽然不是很优雅,但是比较实用
1. 同步项目
rsync -vzrtopgu --progress /mnt/hgfs/www/blog /srv/projects/
2. 编写php脚本
vim /opt/scripts/rsync.php
<?php
function rsync_projects()
{
$command = 'rsync -vzrtopgu --exclude=index.php /mnt/hgfs/www/blog /srv/projects/';
$output = [];
exec($command , $output);
$str = '---------' . date('Y-m-d H:i:s') . '---------' . PHP_EOL;
if($output) {
foreach ($output as $val) {
$str .= $val . PHP_EOL;
}
}
@file_put_contents('/opt/scripts/rsync.log', $str, FILE_APPEND);
}
rsync_projects();
3. 加载同步脚本
同步后的项目入口文件index.php开头处加入
require '/opt/scripts/rsync.php';
rsync.php
的同步命令是rsync -vzrtopgu --exclude=index.php /mnt/hgfs/www/blog /srv/projects/
。排除了index.php
开发项目
/mnt/hgfs/www/blog
, 实际运行项目
/srv/projects/blog
。每次想要查看修改代码效果的时候会访问
/srv/projects/blog
入口文件
index.php
,同时执行
rsync.php
脚本同步文件。这样做实际上比加到crontab执行或者监测文件变化同步都简单实用