我是国庆前两天的周四晚上,开始弄虚拟机的,因为第二天周五,上完就放国庆假,我也就磕磕碰碰到了四点才睡,可以说是印象深刻了。想来动机有几个方面:
综上,我决定探索一番,经过了4天,所有问题都解决了。在这个过程中,我一直在遇到问题,解决问题…很幸运网上有这么多的程序员分享自己的经验,因此想记录一下这个过程中,我参考的博客,以下都是能成功帮助我解决问题的。
回到正题,首先,什么是虚拟机呢?以下摘自百度百科:
虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。在实体计算机中能够完成的工作在虚拟机中都能够实现。在计算机中创建虚拟机时,需要将实体机的部分硬盘和内存容量作为虚拟机的硬盘和内存容量。每个虚拟机都有独立的CMOS、硬盘和操作系统,可以像使用实体机一样对虚拟机进行操作。
我的理解就是,虚拟机其实没有这么高大上,操作系统是软件,用来调度硬件资源,使他们工作起来。就如一台机器上可以有多个软件一样,一台计算机上同样可以拥有多个操作系统,只要给这些操作系统分配可供他们调度的,独立的硬件环境,比如硬盘空间、内存、网卡等,那么这些硬件环境加上管控它的操作系统就构成一个虚拟机。
只是虚拟机是由宿主机上的驱动程序启动的,像是一种内嵌关系,虚拟机是宿主机上一个特殊的交互软件。
我在搭建虚拟机前,安装了傲梅分区助手,对电脑上的磁盘空间进行调整,划出了一个E盘存放VM;
如果有诸如c盘空间不够,想新建盘符等需要调整磁盘的需求的小伙伴也很推荐使用,很容易使用。
傲梅分区助手的下载地址
Linux发行版中,除了Ubuntu,CentOS也是不错的选择,还有其他的。
但出于不需要这么强的专业性加上流行度第一,我选择Ubuntu。
安装ubuntu的步骤主要是以下:
详细参考博客:Windows 10利用虚拟机安装Linux图文教程
问题描述:
在启动后连接虚拟机的时候,会卡在只有一个光标在左上角闪烁,其他都黑屏的画面。
原因:
版本问题,建议不要选择ubuntu20以上的版本!!!
因为后续在使用增强会话的时候,发现最高支持到18.04的版本。
解决 :
使用ubuntu18.04的映像
我推断是引导的问题,首先尝试用命令行解决,但是需要登录用户密码,由于我的系统都没安装成功,显然这个方式不可行;
于是我尝试进入grub界面,但是进去后到处看了发现啥也做不了。
最后我才判断可能是版本不兼容,于是从ubuntu22.10降到ubuntu20.04,到最后的18.04,最后的18.04成功启动、连接后进入系统设置界面。
总结:
个人感觉版本的问题对我来说是最费时间的,虽然解决起来只要换个版本就好,但是我有一种最新版本情节,除非磕到最后没点子了,不然都不会去换版本。只希望以后能更敏锐些,毕竟也不是第一次碰到版本问题了。
至此,ubutun系统成功安装好啦!
打开终端:Ctril+Alt+t
修改默认中文目录名“桌面”"文档"等为英文
由于系统设置时选择的语言是汉语,但是发现这样作为路径名使用终端进入非常的不和谐。
参考博客: Ubuntu /home下中文目录如何修改成英文
更新apt-get
apt-get 命令是Ubuntu 系统中的包管理工具,可以用来安装、卸载包,也可以用来升级包,还可以用来把系统升级到新的版本。
sudo apt-get update
安装好虚拟机并且能正常时候后,发现在虚拟机内复制的内容到主机上粘贴不起作用,反过来也是一样。
这是因为虚拟机和宿主机是独立的两个部分,不共用剪切板。
显然这样很不方便,因为安装虚拟机的一大优点就是可以在外部使用windows学习,然后在虚拟机中直接实践,比如一些命令、文本肯定是能直接复制的好。
因此需要实现虚拟机中的ubuntu与宿主机之间可以实现复制粘贴;
除此之外,增强会话还可以带来更好的交互体验,例如鼠标滑动更加流畅等,类似的工具有VMware Tools、linux-vm-tools,前者可以在VMware中安装得到,后者则常与与hyper-v搭配使用。所以我们安装linux-vm-tools
首先,我们需要安装git,再拉取linux-vm-toos的仓库。
为了之后能在虚拟机中使用git提交代码到github仓库等,我按照以下教程配置好git:
参考博客:
参考博客: win10系统下Hyper-V基本(网上资源整合)3
如果进展顺利的话,可以实现虚拟机与宿主机共享剪切板了,但是要按照以下的规则才可以复制、粘贴成功:
ubuntu系统的复制粘贴 鼠标选中即复制 按鼠标中间即粘贴
window系统的复制粘贴 Ctrl+C Ctrl+V
ubuntu->window 右键复制 Ctrl+V粘贴
window->ubantu CtrlV复制 右键粘贴
window<->ubutun 鼠标右键复制、粘贴
如果我们需要把宿主机上的文件传输到虚拟机中,可以使用WinSCP。
百度百科中对于WinSCP的介绍如下:
WinSCP是一个Windows环境下使用SSH的开源图形化SFTP客户端。 同时支持SCP协议。 它的主要功能就是在本地与远程计算机间安全的复制文件。 .winscp也可以链接其他系统,比如linux系统。
WinSCP的下载地址
参考博客: windows上虚拟机与Winscp如何连接起来
在这个过程我遇到的几个问题以及解决方法如下:
$ sudo apt install net-tools
2.显示网络设备
$ ifconfig -a
可以看到有很多个网络地址,找到eh0的ip即可。eh0代表网卡一,lo代表localhost
原因是没有安装sshd
解决> winscp 服务器拒绝了SFTP连接,但它监听FTP连接。 想要用FTP协议来代替SFTP吗?最好是用加密的。
至此,这个虚拟机配好了git,还可以通过WinSCP连接实现文件传输。
后续还会介绍安装docker、mysql以及pulsar的入门。
参考资料:
https://cloud.tencent.com/developer/article/1722121
https://www.windows11.pro/1616.html
https://blog.csdn.net/fei2636/article/details/79202102
https://blog.csdn.net/tina_ttl/article/details/51326684
https://cloud.tencent.com/developer/article/1721653
https://www.cnblogs.com/kendoziyu/p/14741360.html
https://blog.csdn.net/BBJG_001/article/details/103788702
https://zhuanlan.zhihu.com/p/83474658
https://blog.csdn.net/zhangyDD/article/details/78533297
https://blog.csdn.net/shenwb110/article/details/70228984
https://blog.csdn.net/xiasli123/article/details/106093402