在本地虚拟机新安装了一个Ubuntu22.04系统,发现在windows和Ubuntu之间复制粘贴文件或者直接拖动文件,经常失败。
特记录比较方便的传输方式
一、共享文件夹方式互传以及创建软连接
(一)、此方式需要在虚拟机中开启共享文件夹的功能。
注意:虚拟机中的ubuntu系统必须是已经开机状态,否则设置是灰色的,无法进行下一步
1、设置:虚拟机 -> 设置 -> 选项 -> 共享文件夹,
2、选择总是启用,
3、添加一个Ubuntu和windows共享文件的路径。
如下图:
添加好共享文件夹后,点击“确定”即可。
1)Windows中的路径即是添加共享文件夹的时候的路径,如图:虚拟机共享文件夹
2)Ubuntu中共享文件夹的路径是:/mnt/hgfs/虚拟机共享文件夹
其中,虚拟机共享文件夹这个目录就是在windows创建的共享目录,目录名具体是啥由你而定。
共享文件夹的缺点:由于系统差别,ubuntu中的一些特殊文件,如符号链接的文件,在windows下的共享文件夹下会报错。但如果使用 samba (不习惯使用,故不做介绍)共享文件夹就不会。
注:共享文件夹设置完成后,可能会出现以下问题:
Ubuntu中的/mnt/hgfs目录下为空,即不显示共享文件夹
解决方法如下:
方法一:
1、输出共享文件夹的名字
vmware-hgfsclient
2、安装命令
sudo apt-get install open-vm-tools
3、挂载
sudo vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other
重启之后会失效,每次需挂载一次
解决重启后共享文件夹失效
进入/etc/fstab
vim /etc/fstab
并编辑,在最后添加一行:
.host:/ /mnt/hgfs fuse.vmhgfs-fuse allow_other 0 0
方法二:
使用如下命令安装,往下一路按enter键。
sudo apt-get install open-vm-dkms
使用如下命令,即可在/mnt/hgfs目录下看到与windows共享的目录。若需开机自动挂载共享目录,则需在/etc/init.d/open-vm-tools末尾增加一下命令。
sudo mount -t vmhgfs .host:/ /mnt/hgfs //host:/处2个空格
(二)、Ubuntu创建软连接
当在不同的目录,用到相同的文件时,可以不需要在每一个需要的目录下都放一个必须相同的文件,只要在某个固定的目录,放上该文件,然后在其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。
ln
的功能:为某一个文件在另外一个位置建立一个同步的链接
//创建链接 src(源文件目录) dst(目标文件目录)
ln -s src dst //软链接 -s 是代号(symbolic)的意思
ln src dst //硬链接
//删除链接
rm dst
示例如下:
// 创建软链接
sudo ln -s /home/fbbqt/desktop/VMware /home/fbbqt/download // 把“VMware”文件夹放到“download”目录下
// 删除软链接
sudo rm /home/fbbqt/download
这里有两点要注意:
1、ln命令会保持每一处链接文件的同步性,也就是说,不论你改动了哪一处,其它的文件都会发生相同的变化;
2、ln的链接又软链接和硬链接(没有参数-s)两种:
1)、软链接只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间
2)、 硬链接会在你选定的位置上生成一个和源文件大小相同的文件
无论是软链接还是硬链接,文件都保持同步变化。这个命令最常用的参数是-s,
二、远程连接方式(本文使用MobaXterm)
mobaxterm可通过ssh和sftp两种方式连接Ubuntu。
1、ssh连接方式
2、sftp连接方式
如何使用mobaxterm进行连接以及如何使用mobaxterm请自行网上搜索,这里不做讲解。
如果发现使用mobaxterm连接不上虚拟机,原因是虚拟机未安装ssh服务
安装ssh服务并启动,sshd服务程序缺省状态为自动启动
sudo apt-get install openssh-server
若没有自动启动,则使用以下命令启动
/etc/init.d/sshd
sshd服务的命令
service sshd start //启动
service sshd stop //停止
service sshd status //查看状态
下图是开启运行状态