利用VirtualBox安装CentOS系统

news2024/11/24 13:06:20

博主这次用VirtualBox虚拟机安装CentOS系统。无论是大小型项目都是要发布到云主机上面,必然要用到Linux系统,有的人的本地电脑硬件配置不高,没有办法运行数据库集群,所以只能借助云主机。毕竟云主机也是Linux系统,大家看完这篇文章之后,一定可以无缝对接到云主机。

一、必备的硬件条件

博主需要搭建6个节点的MySQL数据库,然后还要运行MyCat管理数据库集群。除了这些之外,博主还要运行Redis、MongoDB、Minio和RabbitMQ,博主创建的虚拟机需要8GB的内存空间。如果大家本地电脑内存低于16GB,建议你使用腾讯云主机。把数据库集群和各种中间件放在云主机上面跑,大家本地只运行IDEA等开发工具就够了。

大家如果要像博主做这些中间件以及mycat管理MySQL集群等等,博主建议大家都像我一样,本地电脑的最低配置为:

再次强调一下,以上是硬件要求,达不到这个要求就没办法运行项目。如果你也有类似用老旧电脑学习的想法,建议还是算了吧,白白浪费时间。

另外至强系列的CPU用的指令集和酷睿的指令集不同,因此我不能保证大家使用至强CPU的,也能把各种中间件都运行起来。至强E5这样的洋垃圾CPU,是不支持机器学习指令集的,最能体现的就是人脸识别程序,它根本没有办法运行。

二、为什么选用VirtualBox虚拟机?

VirtualBox虚拟机是Oracle提供的免费虚拟机软件,虽然知名度赶不上VMware虚拟机,但是凭借出色的稳定性还是得到了很多程序员的肯定,包括我自己在内。这两年VMware虚拟机版本更新很快,但是BUG越来越多,数不胜数。比方说SSH连接上传文件的时候,会突然掉速到10KB以下。像这样的BUG太多太多了,所以我建议大家还是用VirtualBox虚拟机吧,BUG少,还稳定。

大家可以到VirtualBox官网(https://www.virtualbox.org/wiki/Downloads)下载这个虚拟机的安装文件。最新版的VirtualBox虚拟机需要额外的VC++运行库:

链接:https://pan.baidu.com/s/1ftVF-oV7__VT7zy4ntWsew
提取码:72f6

你先安装这个运行库,然后在安装虚拟机就不会报错了。有个别电脑安装虚拟机的时候会弹出安装网卡驱动,你选择允许即可。使用苹果M1芯片电脑的同学,就不用安装虚拟机了。即便你安装上了虚拟机,Linux系统和各种中间件程序也不支持M1芯片,所以你只能使用云主机这个方案。

三、安装虚拟机的必要条件

如果是在Windows系统上安装虚拟机,首先要在主板BIOS画面开启CPU虚拟化功能,不开启这个功能,将来就没办法安装Docker程序。台式机的BIOS设置起来比较简单,例如Intel的CPU,在CPU虚拟化设置这里,选择成Enabled,然后保存BIOS设置就可以了。

如果是AMD的CPU,在BIOS画面中找到SVM Mode,设置成允许,然后保存BIOS设置即可。

如果是笔记本电脑,那就复杂了。例如小米笔记本默认就开启了CPU虚拟化,而且BIOS中没有可以开关CPU虚拟化的设置,这还挺好。像是戴尔、惠普、三星、联想等笔记本电脑的BISO界面都千差万别,所以你就只能借助百度,看看怎么给你的笔记本电脑开启CPU虚拟化了。MacOS系统不需要开启CPU虚拟化,因为默认已经开启了,所以英特尔CPU的MacOS电脑可以直接安装虚拟机软件。

四、利用虚拟机安装Linux系统

Linux系统我选择的是CentOS7,是众多开源免费Linux发行版当中最适合用在服务器上面的,既安全又稳定。安装文件就在下面的百度网盘链接里面:

链接:https://pan.baidu.com/s/1xKTg79LCdCpbb9SXcWoB3Q
提取码:3bnz

1. 创建虚拟化主机

在安装Linux系统之前,我们要先创建出虚拟化主机,设置好硬件参数,我们才能安装CentOS系统。

在弹出的窗口中给虚拟机主机定义名称,例如CentOS7,存放的路径为C盘之外的目录即可。操作系统类型为Linux,具体版本为Red Hat(64-bit),别选错了。

因为CentOS上要运行很多数据库和中间件程序,所以内存尽量分配的多一些,比如说我分配6GB(6144MB)内存给虚拟主机。切记,不能低于4GB内存,建议分配6GB~8GB内存。

创建虚拟硬盘的时候,要选择动态分配。

虚拟硬盘容量的上限我设置成30GB,硬盘空间富余一些,虚拟机可以保存更多的数据,毕竟我们要跑数据库集群和HBase的。

2. 使用NAT网络

创建虚拟机之后,我们要设置一下虚拟机网卡的工作模式。最推荐的是桥接模式,这种模式下,虚拟主机的网卡有独立的IP地址,跟本地局域网里面的真实主机差不多。但是缺点也很明显,就是不能用在校园网当中。因为校园网基本都采用了局域网设备隔离技术,你这个虚拟出来的主机跟本地Windows电脑相互ping不通,所以你在虚拟机上安装各种程序,在Windows上一个都调用不了。还有就是有些人经常更换网络环境,白天用公司的网络,晚上用家庭网络,这就导致电脑的局域网IP经常切换,Linux的IP地址也经常变化。环境一变化,你就得修改程序代码,才能通过新的IP地址访问到Linux系统的程序,确实很麻烦。

这里我建议大家选择NAT网络模式,虽然不如桥接网络功能强大,但是却能胜任校园网和上班族的需要。点击虚拟机上的设置按钮。

在弹窗面板中找到网络,然后选择NAT模式,并且点击端口转发按钮。

添加一个新的端口映射,例如主机端口为5022(随便设置),子系统端口为22(必须是这个)。

因为NAT模式下,虚拟主机没有独立IP,而是借用Windows系统的网卡上网。所以Linux的一些端口,我们要映射到Windows系统上。通过访问Windows的端口,响应的调用到Linux对应的端口。例如Linux系统SSH远程连接服务的端口是22,我们需要把这个端口映射到Windows系统上,一会儿我用SSH客户端软件访问Windows的5022端口,就能连接到Linux系统了。

3. 插入CentOS镜像文件

选择存储,然后点击没有盘片选项,接下来在右侧点击光盘图标,弹出的选项,我们选择第二个。然后找到CentOS镜像文件,接下来我们就可以安装CentOS系统了。

4. 安装CentOS系统

点击启动按钮,运行虚拟主机,然后进入到Linux安装界面,什么都不需要做,等候几分钟。

这个界面不用理会,等着就行了,检测通过之后,就会出现安装界面。

安装界面的语言选择成中文,然后点击继续。

点击安装位置选项,做好硬盘分区,接下来选择自动分区就可以。

默认CentOS并没有开启网络,所以我们要设置一下。

点击滑块,开启联网功能,否则Linux将无法访问网络。

开始安装CentOS之后,我们要给root帐户设置密码。密码随便设置,但是你必须记住牢记。先检查好英文大写锁是不是关闭了,数字小键盘是不是打开了。否则你输入的密码和你期待的密码是不一致的。

安装完CentOS系统,点击完成配置按钮,虚拟机就会自动重启了。

五、注意事项

使用虚拟机的过程中,如果没有关闭虚拟机就直接关闭电脑,或者强制关机,那么下次再启动虚拟机肯定会报错。所以你要先点击“清除”按钮之后,再启动虚拟机。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2069172.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

程序员的日常挑战:如何在编码工作与持续学习之间找到平衡?

文章目录 每日一句正能量前言高效编码习惯与时间管理技巧高效编码习惯时间管理技巧 提升式学习的策略职业发展与个人成长的和谐共生职业发展的不同阶段及其技能要求如何在工作中寻找自我提升的学习机会分享个人成长的故事与经验 后记 每日一句正能量 黎明时怀着飞扬的心醒来&am…

Unity(2022.3.38LTS) - 2D刚体

目录 一.简介 二.组件详细介绍 2D刚体 类型介绍 三. 刚体的简单使用 一.简介 2D 物理系统为开发者提供了强大的工具来模拟和控制二维游戏中的物理行为。 A、基本概念 刚体(Rigidbody 2D) 刚体组件用于赋予游戏对象物理属性,使其能够受…

消息过期时间设置:队列属性与消息TTL

消息过期时间设置:队列属性与消息TTL 1. 设置队列属性2. 对消息本身进行TTL设置3. 同时使用时的TTL确定 💖The Begin💖点点关注,收藏不迷路💖 在消息队列(MQ)中,设置消息的过期时间是…

RISC-V全志D1多媒体套件

RISC-V全志D1多媒体套件 此开发板的任何问题都可以在我们的论坛交流讨论 https://forums.100ask.net/c/aw/d1/57 硬件简述 D1主板 以下是主板图: D1板载功能 板载功能有: XR829 WIFI蓝牙模组芯片,Bluetooth支持标准蓝牙与 低功耗蓝牙&a…

WPF中的可视化树(VisualTree)和逻辑树(LogicalTree)

可视化树和逻辑树 我们先来理解一下什么是可视化树和逻辑树。 可视化树:包含最初指定的大多数元素(在XAML或.cs中)以及控件模板中的元素。 通俗点来讲,就是整个元素的构成树,从最上面的结点到最后一个结点&#xff…

华为:IT系统的演进与数字时代IT系统的重新定位

往期回顾: 企业4A架构:数字化转型的底层方法论(附TOGAF资料下载) PPT分享:数据治理的方法论、设计思路与方案(干货) 浅谈数字化转型方法论 110页PPT:xx业务流程优化(BPR&#xff…

树状数组算法

文章目录 树状数组是什么树状数组与线段树的区别与联系树状数组讲解点修,区查,讲解及模板点查,区修讲解及模板 树状数组是什么 树状数组是一种数据结构,提供O(logn)时间内的单点修改和区间求和操作,比线段树有更优的常…

语音控制开关的语音识别ic芯片方案

语音控制开关是一种基于语音识别技术的设备,它通过内置的语音识别芯片,将用户的语音指令转化为电信号,从而实现对设备的控制。例如在智能家居设备上的应用,通常需要连接到家庭的Wi-Fi网络上,以便与智能手机或智能音箱等…

openjdk11 jvm视角查看java线程异常退出synchronized锁自动释放

##synchronized锁异常 java代码demo public class ThreadTest {public int mul 1;public static void main(String[] args) {ThreadTest threadTest new ThreadTest();Thread yym_user_thread1 new Thread() {public void run() {System.out.println("yym_user_thread…

【C++题解】1147. 求1/1+1/2+2/3+3/5+5/8+8/13+13/21……的前n项的和

欢迎关注本专栏《C从零基础到信奥赛入门级(CSP-J)》 问题:1147. 求1/11/22/33/55/88/1313/21……的前n项的和 类型:函数 题目描述: 求1/11/22/33/55/88/1313/2121/34…的前 n 项的和。 输入: 输入一个…

WPF—路由事件详解

WPF—路由事件 路由事件是一种可以针对元素树中的多个侦听器而不是仅仅针对引发该事件的对象调用处理程序的事件。路由事件是一个CLR事件。 路由事件与一般事件的区别在于:路由事件是一种用于元素树的事件,当路由事件触发后,它可以向上或向…

C++ | Leetcode C++题解之第371题两整数之和

题目&#xff1a; 题解&#xff1a; class Solution { public:int getSum(int a, int b) {while (b ! 0) {unsigned int carry (unsigned int)(a & b) << 1;a a ^ b;b carry;}return a;} };

微程序控制器的设计

目录 一、微程序控制器的原理 1.模仿高级语言思想到微程序&#xff1a; 2.采用存储程序思想到CU内构造&#xff1a; 3.微程序执行过程&#xff1a; 二、微指令的设计 1.前置概念&#xff1a; 相容性微命令&#xff1a; 互斥性微命令&#xff1a; 2.微指令格式 水平…

作者推荐 |【Redis技术进阶之路】「技术提升系列」夯实基础分析探究ziplist压缩列表的点点滴滴

揭秘高效存储模型与数据结构底层实现 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 压缩列表&#xff08;ziplist&#xff09;压缩列表使用目的压缩列表结构组成压缩列表的各个组成部分三个…

flv格式分析与解复用

介绍 FLV(Flash Video)是Adobe公司推出的⼀种流媒体格式&#xff0c;由于其封装后的⾳视频⽂件体积⼩、 封装简单等特点&#xff0c;⾮常适合于互联⽹上使⽤。⽬前主流的视频⽹站基本都⽀持FLV。采⽤FLV 格式封装的⽂件后缀为.flv。 FLV封装格式是由⼀个⽂件头(file header)和 …

0基础深度学习项目13:基于TensorFolw实现天气识别

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 目录 一、创建环境二、前期准备2.1 设置GPU2.2 导入数据2.3 数据预处理2.3.1 加载数据2.3.2 查看图像的标签 2.4 数据可视化 三、构建简单的CNN网络&#xff0…

NVDLA专题12:具体模块介绍——RUBIK

概述 RUBIK类似于BDMA&#xff0c;它无需任何数据计算对数据映射格式进行转换。RUBIK有3种工作模式&#xff0c;分别是: 合并(Contract)数据立方体将特征数据立方体分割为多平面&#xff08;multi-planar&#xff09;格式将多平面(multi-planar)格式合并到数据立方体 由于该…

第三十八篇-TeslaP40-SenseVoice部署,速速杠杠的

环境 系统&#xff1a;CentOS-7 CPU: 14C28T 内存&#xff1a;32G 显卡&#xff1a;Tesla P40 24G 驱动: 535 CUDA: 12.2创建环境 conda create -n sv python3.11 -y conda activate sv克隆 git clone https://github.com/FunAudioLLM/SenseVoice.git cd SenseVoice配置镜像…

React antd Table表格动态合并单元格

注意&#xff1a; ① 采用的是React antDsign 4.x版本 ② 需重新处理data数据 实现效果 代码实现 import React from react; import { Table } from antd;const data [{key: 0,name: 张三,age: 22,sex: 男,},{key: 1,name: 李四,age: 42,sex: 男,},{key: 2,name: 小丽,age: …

CAN的协议层介绍

一&#xff0c;CAN帧种类介绍 1. 数据帧&#xff08;Data Frame&#xff09;&#xff1a;数据帧是CAN总线上用于传输用户数据的帧&#xff0c;包括必要的帧头、标识符、控制位、数据长度代码、数据域、CRC校验码和应答域等部分&#xff0c;是CAN通信中最基本和最重要的帧类型。…