连载嵌入式Linux开发教程:初始Ubuntu
liuian 2025-07-02 22:19 29 浏览
2.5 创建和配置虚拟机
2.5.1创建虚拟机
双击桌面的VMware Player启动快捷方式打开VMware Player软件,运行界面如图2.15所示。点击“创建新虚拟机(N)”,可以创建一台虚拟机。
图2.15 创建新虚拟机
在弹出的向导欢迎界面中选择“稍后安装操作系统(S)”,然后点击“下一步”按钮,如图2.16所示。
图2.16 选择“稍后安装操作系统”
在图2.17所示 的“选择客户机操作系统”界面,选择“Linux(L)”,并在版本下拉框中选择“Ubuntu 32位”或者“Ubunutu 64位”。请根据实际计算机硬件情况进行选择,图2.17的示例是安装Ubuntu 64位系统。
图2.17 选择客户机操作系统
对于64处理器的计算机,安装了32位操作系统,开启了虚拟化支持的话,在安装虚拟机的时候也可以选择64位Linux系统。
点击“下一步”,进入“命名虚拟机”设置界面,可设置虚拟机名称以及存储位置,如图2.18 所示。名称可用默认名称,也可以更改为自己满意的名称;但存放位置则不推荐用默认值,必须放置到有足够空闲空间的硬盘分区上。
图2.18 设置虚拟机名称及储存位置
设置好确认无误后,继续点击“下一步”,进入“指定磁盘容量”界面,如图2.19所示。
图2.19 指定虚拟磁盘容量
磁盘容量设置,建议40GB以上。除了安装Ubuntu操作系统本身外,还会安装嵌入式Linux开发的各种工具,以及对应的源码等,都需要较大空间。
图2.19示例分配了40GB虚拟磁盘,会产生虚拟磁盘文件,但并不会立即占用40GB实际硬盘空间。虚拟磁盘文件会在使用过程中逐步增大,直到最大容量40GB。尽管不会立即占用40GB硬盘空间,但是为了将来方便使用,必须保证放置虚拟机的磁盘有超过40GB的空闲空间。
由于虚拟磁盘文件大小会在使用中变化,分割成多个文件是比较好的选择。
确认设置无误后,点击“下一步”按钮,出现已经创建完毕的虚拟机的信息概览,如图2.20所示,点击完成即可。
图2.20 完成虚拟机创建
2.5.2虚拟机设置
创建得到的虚拟机,默认采用典型值,有的参数可能不是很合适,可以根据实际需要进行调整。点击图2.20界面的“自定义硬件”,可以对虚拟计算机硬件进行调整定制。
内存调整
系统默认的内存值通常都比较小,建议适当增加,如在有4GB内存或以上的计算机上,给虚拟电脑的内存可以设置为2GB。进入自定义硬件界面后,在“硬件”选项卡选中“内存”,得到如图2.21 所示的界面,在这个界面可以设置内存大小。
图2.21 内存调整界面
2. 虚拟网卡设置
不少VMware用户都碰到过VMware的虚拟网卡的问题,这里重点介绍一下。进入自定义硬件界面后,在“硬件”选项卡选择“网络适配器”,得到如图2.22 所示的网卡设置界面。
图2.22 虚拟网卡设置
虚拟网卡有3种模式,分别如下:
(1)桥接模式
在这种模式下,VMWare虚拟出来的操作系统就像是局域网中的一台独立的主机,它可以访问网内任何一台机器。
在桥接模式下,虚拟系统和宿主机器的关系,就像连接在同一个Hub上的两台电脑。用户需要手工为虚拟系统配置IP地址、子网掩码,而且还要和宿主机器处于同一网段,这样虚拟系统才能和宿主机器进行通信。同时,由于这个虚拟系统是局域网中的一个独立的主机系统,那么就可以手工配置它的TCP/IP配置信息,以实现通过局域网的网关或路由器访问互联网。
在进行嵌入式Linux开发,要目标板通过NFS挂载虚拟机的NFS共享目录的话,必须将虚拟网卡配置为桥接模式。
(2)NAT模式
使用NAT模式,就是让虚拟系统借助NAT(网络地址转换)功能,通过宿主机器所在的网络来访问公网,也就是说,使用NAT模式可以实现在虚拟系统里访问互联网。NAT模式下的虚拟系统的TCP/IP配置信息是由VMnet8(NAT)虚拟网络的DHCP服务器提供的,虚拟机无法正常对主机所连网络中的其它主机提供普通的网络服务,如TFTP、NFS和FTP等。
采用NAT模式最大的优势是虚拟系统接入互联网非常简单,用户不需要进行任何其它的配置,只需要宿主机器能访问互联网即可。
(3)仅主机模式
在某些特殊的网络调试环境中,要求将真实环境和虚拟环境隔离开,这时用户就可采用仅主机(Host-Only)模式。在Host-Only模式中,所有的虚拟系统是可以相互通信的,但虚拟系统和真实的网络是被隔离开的。
2.6 安装Ubuntu
Ubuntu的安装过程,无论在硬件实体安装还是虚拟机安装,大致过程是相同的。以下的安装过程都是在虚拟机中完成的,物理实体安装也是一样的。
2.6.1实体机安装前准备
如果进行物理实体安装,需要制作启动盘。可将ISO刻成启动光盘,也可用unetbootin软件制作一个USB启动安装盘。这里讲述如何制作USB启动盘。
将U盘插入电脑(U盘容量建议2GB以上),查看U盘对应的盘符;
打开unetbootin-windows软件界面,如图2.23所示。选中“光盘镜像”,并打开已经下载的Ubuntu ISO文件;
在驱动器一栏选择U盘对应的盘符,确定无误后点击“确定”,开始制作启动盘。
图2.23 打开unetbootin-windows软件
制作时间较长,大约几分钟到十来分钟不等,取决于计算机性能以及U盘的读写性能,制作过程如图2.24所示。
图2.24 制作USB启动盘
当USB启动盘制作完成后,将显示如图2.25所示界面。这时不要点击“现在重启”,直接点击“退出”即可。
图2.25 USB启动盘制作完成
当使用光盘安装时,需要在电脑的BIOS设置为从光驱启动,然后在光驱放入安装光盘,启动电脑进入Ubuntu安装程序。
当使用USB启动盘安装时,需要在电脑的BIOS设置为从USB启动,然后插入USB启动盘,启动电脑进入Ubuntu安装程序。
2.6.2 虚拟机安装前准备
在VMware Player中安装Ubuntu,可以直接使用ISO文件,无需刻盘,也无需制作启动盘,只需将从Ubuntu官网下载的ISO文件加载进虚拟机即可。
打开VMware Player的主页界面,如图2.26所示。
图2.26 VMWare Player的主页界面
在新建的虚拟机上点击“编辑虚拟机设置”进入虚拟机设置界面,选中“硬件”选项卡的“CD/DVD”,设置ISO光盘文件的路径,并请确认勾选“启动时连接”,如图2.27所示。
图2.27 设置ISO文件
配置完虚拟机后,软件回到了VMware Player的主页界面,如图 2.28所示,此时选中刚刚创建的虚拟机后,再点击位于右侧的“播放虚拟机”则可以启动该虚拟机并进入Linux系统的正式安装流程。
图2.28 启动虚拟机
虚拟机启动后,可能会弹出一些警告对话框,通常无需理会,虚拟机正常启动后出现如图 2.29所示的界面。
图2.29 Ubuntu安装镜像正常启动
2.6.3 正式安装Ubuntu
Ubuntu安装镜像正常启动后,会出现如图 2.30所示的欢迎界面。请在左侧的列表选择“中文(简体)”,然后点击“安装Ubuntu”按钮进入下一步安装。
图2.30选择系统语言
在图 2.31所示的“准备安装Ubuntu”界面,会给出当前安装环境的检测结果,包括系统空闲磁盘以及是否联网等信息,点击“继续”进行下一步安装。
图2.31点击“继续”按钮
紧接着出现图 2.32所示的“安装类型”选择界面,如果在全新硬盘或虚拟机安装Ubuntu,可以选择“清除整个磁盘并安装Ubuntu”,如。但如果用户是双系统安装,必须选择“其它选项”,具体操作请参考其它资料。
图2.32清除整个磁盘
请点击“继续”按钮,出现“清除整个磁盘并安装Ubuntu”的界面,点击“现在安装”按钮开始安装。
注意:物理实体安装会清空整个物理硬盘,但是虚拟机安装仅仅是清空创建虚拟机时创建的虚拟磁盘,并不会清空物理硬盘上的其它数据,无需担心。
图2.33点击“现在安装”按钮
紧接着会出现如图 2.34所示的地理位置选择界面,请选择“shanghai”或者“Chongqing”。
当然也可以选择其它地方,如Hongkong等,但是会影响到系统时间和语言。很遗憾,这里并没有“Beijing”可选。
进入键盘布局设置界面。
图2.34选择系统时间所在时区
然后点击“继续”按钮,进入如图 2.35所示的“键盘布局”设置界面。选择“汉语”并点击“继续”。
图2.35 选择键盘布局
将进入“您是谁”的用户信息设置界面。在这里填写用户的相关信息,包括计算机名、用户名、用户密码等信息。
为方便后面的描述,这里设置了计算机名为Linux-host、用户名为vmuser、用户密码为vmuser,如图 2.36所示。为方便系统启动后,开机能自动进入桌面,这里设置登陆方式为“自动登陆”。
图2.36 设置用户信息
设置完成后,点击“继续”按钮然后等待系统安装完成。整个过程时间大约30分钟到1个小时不等,取决于计算机情况。
系统安装完成后,将出现如图 2.37所示的“安装完成”对话框,点击“现在重启”按钮完成重启。
2.7 初识Ubuntu
2.7.1 Ubuntu桌面
Ubuntu启动后,进入桌面系统,桌面环境如图 2.38所示。
图2.38 Ubuntu桌面环境
在桌面的右上角显示的是输入法、时间、登录用户名的信息。
桌面的左侧是任务栏。在任务上,可以看到Ubuntu为用户准备了一些常用的软件:
火狐浏览器,上网用;
文件浏览器,用于浏览计算机上的文件;
文档处理处理软件,类似Windows Office的Word软件;
表格处理软件,类似Windows Office的Execl软件;
演示文稿软件,类似Windows Office的PowerPoint;
软件中心,为用户提供海量的软件下载、安装;
系统设置
2.7.2 输入法
在桌面的右上角点击 图标打开输入法菜单,如图 2.39所示。
图2.39输入法菜单
在该菜单可以看到系统默认设置了两种汉字输入法。中/英文输入法切换的默认快捷键是“Ctrl+空格”;中文之间输入法切换的默认快捷键是“Alt+Shift”。若用户需要设置输入法和输入法切换的快捷键,请点击“首选项”菜单项进行设置。
2.7.3系统设置
在任务栏点击 图标即可打开系统设置窗口,如图 2.40所示。用户可以在这里对系统进行设置,这和Windows的“控制板面”类似。
图2.40系统设置窗口
如果用户是使用虚拟机安装Ubuntu,系统启动后,桌面有可能不是默认全屏显示。这时可以在系统设置里点击“显示”图标,进入“显示”配置界面设置分辨率。
2.7.4 搜索软件和文件
在Ubuntu的桌面环境,用户可以用Dash 工具查找软件、文件和目录。在任务栏点击 图标,即可打开Dash的主页,如图 2.41所示。
图2.41 Dach主页
在Dash的主页显示了用户最近打开的程序和文件的图标。Dash的主页还有一个“搜索”输入框,用于搜索安装程序或者文件,支持模糊查找。Dach 主页下方有多个快捷方式方便用户搜索,功能如表 2.1所列。
表2.1快捷方式说明
这些快捷方式简单易用,这里不再多述。
2.7.5 打开终端
在Dash的搜索输入框输入“terminal”,即可搜索到终端程序。在实际应用中,并不需要写全,输入前面即可字母,系统就能自动列出相关软件,如输入“te”,即可出现包含终端在内的程序,如图 2.42所示。
图2.42搜索终端程序
小贴士:在中文版Ubuntu中,搜索支持中文拼音单字匹配,例如“终端”,输入“终”的拼音“zhong”或者“端”的拼音“duan”,都可以搜索到终端程序。如果记不起某个程序英文怎么写,而知道大概中文,就可以采用这种方法。
点击终端图标即可打开终端的窗口,如图 2.43所示。按“Ctrl+Alt+T”组合键也可以打开终端窗口。终端窗口的大小,可以由用户用鼠标拖伸,或最大化。
图2.43终端界面
按“Ctrl+Shift+T”键可以在终端窗口再打开一个终端的标签,如图 2.44所示。按“Alt+1”或“Alt+2”切换终端标签。
图2.44再打开一个终端
2.7.6 安装软件
在Ubuntu一般使用apt-get命令安装软件。但前提是电脑需要连接到互联网。apt-get命令在执行时会在网上下载指定的软件包,然后完成安装。
例如,安装vim的方法是:
$ sudo apt-get install vim
若要卸载安装好的vim方法是:
$ sudo apt-get remove vim
Ubuntu也提供很好的图形界面让用户比较方便查找、安装自己所需的软件。在Ubuntu桌面的左侧任务栏,点击 图标,即可打开如图 2.45所示的软件中心。
图2.45 Ubuntu软件中心
用户可以很方便地在这里查找软件、下载软件、完成安装,或者卸载安装好的软件。这和“app store”类似。
本文版权由致远电子(www.zlg.cn)周立功所有,请勿转载
本文为CSDN原创,点击“阅读原文”可查看全文并参与讨论。
如果您喜欢这篇文章,请点击右上角“…”将本文分享给你的朋友。
相关推荐
- 总结下SpringData JPA 的常用语法
-
SpringDataJPA常用有两种写法,一个是用Jpa自带方法进行CRUD,适合简单查询场景、例如查询全部数据、根据某个字段查询,根据某字段排序等等。另一种是使用注解方式,@Query、@Modi...
- 解决JPA在多线程中事务无法生效的问题
-
在使用SpringBoot2.x和JPA的过程中,如果在多线程环境下发现查询方法(如@Query或findAll)以及事务(如@Transactional)无法生效,通常是由于S...
- PostgreSQL系列(一):数据类型和基本类型转换
-
自从厂子里出来后,数据库的主力就从Oracle变成MySQL了。有一说一哈,贵确实是有贵的道理,不是开源能比的。后面的工作里面基本上就是主MySQL,辅MongoDB、ES等NoSQL。最近想写一点跟...
- 基于MCP实现text2sql
-
目的:基于MCP实现text2sql能力参考:https://blog.csdn.net/hacker_Lees/article/details/146426392服务端#选用开源的MySQLMCP...
- ORACLE 错误代码及解决办法
-
ORA-00001:违反唯一约束条件(.)错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。ORA-00017:请求会话以设置跟踪事件ORA-00018:超出最大会话数ORA-00...
- 从 SQLite 到 DuckDB:查询快 5 倍,存储减少 80%
-
作者丨Trace译者丨明知山策划丨李冬梅Trace从一开始就使用SQLite将所有数据存储在用户设备上。这是一个非常不错的选择——SQLite高度可靠,并且多种编程语言都提供了广泛支持...
- 010:通过 MCP PostgreSQL 安全访问数据
-
项目简介提供对PostgreSQL数据库的只读访问功能。该服务器允许大型语言模型(LLMs)检查数据库的模式结构,并执行只读查询操作。核心功能提供对PostgreSQL数据库的只读访问允许L...
- 发现了一个好用且免费的SQL数据库工具(DBeaver)
-
缘起最近Ai不是大火么,想着自己也弄一些开源的框架来捣腾一下。手上用着Mac,但Mac都没有显卡的,对于学习Ai训练模型不方便,所以最近新购入了一台4090的拯救者,打算用来好好学习一下Ai(呸,以上...
- 微软发布.NET 10首个预览版:JIT编译器再进化、跨平台开发更流畅
-
IT之家2月26日消息,微软.NET团队昨日(2月25日)发布博文,宣布推出.NET10首个预览版更新,重点改进.NETRuntime、SDK、libraries、C#、AS...
- 数据库管理工具Navicat Premium最新版发布啦
-
管理多个数据库要么需要使用多个客户端应用程序,要么找到一个可以容纳你使用的所有数据库的应用程序。其中一个工具是NavicatPremium。它不仅支持大多数主要的数据库管理系统(DBMS),而且它...
- 50+AI新品齐发,微软Build放大招:拥抱Agent胜算几何?
-
北京时间5月20日凌晨,如果你打开微软Build2025开发者大会的直播,最先吸引你的可能不是一场原本属于AI和开发者的技术盛会,而是开场不久后的尴尬一幕:一边是几位微软员工在台下大...
- 揭秘:一条SQL语句的执行过程是怎么样的?
-
数据库系统能够接受SQL语句,并返回数据查询的结果,或者对数据库中的数据进行修改,可以说几乎每个程序员都使用过它。而MySQL又是目前使用最广泛的数据库。所以,解析一下MySQL编译并执行...
- 各家sql工具,都闹过哪些乐子?
-
相信这些sql工具,大家都不陌生吧,它们在业内绝对算得上第一梯队的产品了,但是你知道,他们都闹过什么乐子吗?首先登场的是Navicat,这款强大的数据库管理工具,曾经让一位程序员朋友“火”了一把。Na...
- 详解PG数据库管理工具--pgadmin工具、安装部署及相关功能
-
概述今天主要介绍一下PG数据库管理工具--pgadmin,一起来看看吧~一、介绍pgAdmin4是一款为PostgreSQL设计的可靠和全面的数据库设计和管理软件,它允许连接到特定的数据库,创建表和...
- Enpass for Mac(跨平台密码管理软件)
-
还在寻找密码管理软件吗?密码管理软件有很多,但是综合素质相当优秀且完全免费的密码管理软件却并不常见,EnpassMac版是一款免费跨平台密码管理软件,可以通过这款软件高效安全的保护密码文件,而且可以...
- 一周热门
-
-
Python实现人事自动打卡,再也不会被批评
-
【验证码逆向专栏】vaptcha 手势验证码逆向分析
-
Psutil + Flask + Pyecharts + Bootstrap 开发动态可视化系统监控
-
再见Swagger UI 国人开源了一款超好用的 API 文档生成框架,真香
-
一个解决支持HTML/CSS/JS网页转PDF(高质量)的终极解决方案
-
网页转成pdf文件的经验分享 网页转成pdf文件的经验分享怎么弄
-
C++ std::vector 简介
-
飞牛OS入门安装遇到问题,如何解决?
-
系统C盘清理:微信PC端文件清理,扩大C盘可用空间步骤
-
10款高性能NAS丨双十一必看,轻松搞定虚拟机、Docker、软路由
-
- 最近发表
- 标签列表
-
- python判断字典是否为空 (50)
- crontab每周一执行 (48)
- aes和des区别 (43)
- bash脚本和shell脚本的区别 (35)
- canvas库 (33)
- dataframe筛选满足条件的行 (35)
- gitlab日志 (33)
- lua xpcall (36)
- blob转json (33)
- python判断是否在列表中 (34)
- python html转pdf (36)
- 安装指定版本npm (37)
- idea搜索jar包内容 (33)
- css鼠标悬停出现隐藏的文字 (34)
- linux nacos启动命令 (33)
- gitlab 日志 (36)
- adb pull (37)
- python判断元素在不在列表里 (34)
- python 字典删除元素 (34)
- vscode切换git分支 (35)
- python bytes转16进制 (35)
- grep前后几行 (34)
- hashmap转list (35)
- c++ 字符串查找 (35)
- mysql刷新权限 (34)