加入收藏 | 设为首页 | 会员中心 | 我要投稿 网站开发网_盐城站长网 (https://www.0515zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长百科 > 正文

Linux 竟然如此强大!能当主力,能入虚拟机,还能随时打包带走。。。

发布时间:2018-09-23 23:42:56 所属栏目:站长百科 来源:佚名
导读:副标题#e# 9月15日技术沙龙 | 如何将智能化和运维工作相结合,实现智能运维! 这里介绍一下自己管理自己的Linux桌面的一点经验吧,我觉得还是有不少可取之处的。先来说一下大多数人管理Linux桌面的方法有哪些不方便的地方吧: 买新电脑了,又得在新电脑上安

从文章的刚开头我们就说,有时候我们是有在Windows下运行本地安装的Linux的需求的。这个需求可以通过VirtualBox来满足,只需要在VirtualBox中使用本地磁盘来作虚拟磁盘即可。说起来简单,但是实现起来还是需要折腾一下子的。

首先我们需要新建一个虚拟机,具体过程不多说,一路“下一步”就行了,唯一需要注意的是,在创建虚拟磁盘的那一步,选择“不添加虚拟硬盘”:

Linux 竟然如此强大!能当主力,能入虚拟机,还能随时打包带走。。。

这里我的虚拟机取名为“Linux”。创建完虚拟机了以后,就需要把本地磁盘设置为虚拟磁盘了。首先要做的是寻找我们安装Linux的磁盘的编号,这个可以在系统自带的磁盘管理程序中找到,在我的机器上这个磁盘编号为2:

Linux 竟然如此强大!能当主力,能入虚拟机,还能随时打包带走。。。

知道了磁盘的编号,就可以创建虚拟盘了。这里我们使用的命令如下,注意使用管理员身份运行:

  1. VBoxManage internalcommands createrawvmdk -filename "C:UsersgaoxiangVirtualBox VMsLinuxlocaldisk.vmdk" -rawdisk .PhysicalDrive2 

有了虚拟磁盘了,就可以将虚拟磁盘添加到虚拟机中去了:

Linux 竟然如此强大!能当主力,能入虚拟机,还能随时打包带走。。。

虚拟磁盘设置好了,最后一步就是设置EFI了。由于我们之前在分区的时候给文件系统都赋予了Label,并且在refind设置的时候也是用的Label来指定分区,所以同一套refind的配置在虚拟机上也能用。因此我们不需要单独给虚拟机安装bootloader,而是直接用我们之前安装在物理磁盘上的EFI分区中的refind就行。VitualBox默认是不开启EFI的,我们需要在虚拟机的系统设置里面手动勾选EFI:

Linux 竟然如此强大!能当主力,能入虚拟机,还能随时打包带走。。。

为了要让VirtualBox自动启动refind,还要对EFI的分区做一些简单的设置,设置的时候一定要注意,这些设置一定要是通用的,即同一份文件既能在物理机上正常工作也能在虚拟机上正常工作,不要改完了设置以后虚拟机上能跑了物理机却挂了,这就不好玩了。VirtualBox的EFI在启动的时候会优先选择/EFI/BOOT/BOOTX64.EFI,如果找不到的话,才会启动EFI分区根目录下的startup.nsh中指定的bootloader。知道了这一点,为了实现自动启动refind,首先需要检查一下/EFI/BOOT/BOOTX64.EFI这个文件是否存在,若存在,备份并删除之:

  1. cd EFI/BOOT 
  2. mv bootx64.efi bootx64-backup.efi 

然后就是在EFI分区根目录下新建一个startup.nsh了,这个文件只需要一行,内容如下:

  1. EFIrefindrefind_x64.efi 

一切设置完毕,运行虚拟机,就能看到我们熟悉的refind界面了:

Linux 竟然如此强大!能当主力,能入虚拟机,还能随时打包带走。。。

打开其中的Ubuntu系统,测试一切正常就大功告成了:

Linux 竟然如此强大!能当主力,能入虚拟机,还能随时打包带走。。。

当然,要在虚拟机中使用,还有一些细节性的工作要处理,比如安装VirtualBox的guest需要的相应的内核模块等等,这些在此不谈,读者使用过程中如果发现少啥了,自己装上便是。

Linux下不同发行版的互相访问

我们已经成功地在Windows下运行Linux了,下一步就是想办法在一个Linux系统下访问其他Linux了。由于这些系统都是Linux,而且都在同一个文件系统里面,所以如果只是想要访问一下里面的文件的话,挂载了用就行了。但是很多时候我们还是有需要来运行其他系统里面安装的程序,或者对那个系统进行管理的。应对这种需求有两种解决方案:容器跟虚拟机。

可能很多读者并不了解这两者的区别,这里简单介绍一下。粗略来讲,虚拟机是通过软件的方式虚拟出一套硬件环境来,并在这套硬件环境中启动内核,然后内核会进行一个完整的开机过程,包括进行相应的初始化,加载init程序等。相比之下,容器则要轻量很多。容器并不会虚拟出自己的硬件环境,也不会额外加载一个内核。容器所做的,就是在现有内核上,运用namespace来创建出一套独立的进程PID、挂载点、网络接口、用户ID等等,由于不同namespace中的这些个ID之类的标识符都是独立的,所以不同namespace中的进程是互相之间看不到对方的,虚拟出来的环境乍看上去就跟在单独运行的一个系统一样,同样有PID为1的init进程,有自己一套独立的rootfs,等等。虚拟机的优点是更不容易被突破,安全性更好,可以使用自己的内核,但是效率也更低。容器的优点是轻便效率高,但是安全性就要稍差一些,也没法使用定制内核。

容器

(编辑:网站开发网_盐城站长网 )

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!