嵌入式linux开发环境搭建(VMware16.0.0+Ubuntu16.04.3_X64)

2023-05-16

目录

  • 一、安装VMware
    • 1、VMware介绍
    • 2、安装VMware16.0.0
  • 二、安装ubuntu16.04.3 LTS
    • 1、Ubuntu介绍
    • 2、下载安装包iso
    • 3、安装
  • 四、新安装Ubuntu的基本设置
    • 1、开机和关机等
    • 2、虚拟机基本设置
    • 3、控制台Terminal
  • 五、ubuntu的root用户
    • 1、ubuntu的多用户体系
    • 2、平时使用ubuntu时用户的影响
    • 3、常规使用时的工作目录问题
    • 六、安装vim
  • 七、共享文件夹和VMtools安装
  • 八、搭建samba服务器
  • 九、NAT和桥接
    • 1、原理介绍
    • 2、VMware菜单设置
  • 十、Ubuntu中网络配置
    • 1、修改/etc/network/interfaces文件
    • 2、重启网卡
  • 十一、Ubuntu连接开发板的网络设置
    • 1、必须桥接
    • 2、几个细节
  • 十二、桥接下samba服务器的使用
    • 1、桥接到 有线网卡/WIFI网卡 下使用samba
    • 2、有线网卡的一个bug
  • 十三、主机Windows和虚拟机ubuntu之间文件共享经验
    • 1、使用共享文件夹技术
    • 2、使用samba服务器
    • 3、添加Loopback网卡(虚拟网卡)实现Windows和ubuntu始终可以桥接ping通
  • 十四、搭建tftp服务器、搭建nfs服务器

一、安装VMware

1、VMware介绍

(1)虚拟机软件原理介绍
  工作在主机上的一个软件,其借助电脑本身的硬件,运行后可以虚拟出来一台电脑,可以虚拟出Linux,windows,macos等多种操作系统的电脑。

(2)常用虚拟机软件:VMware(收费的,而且还比较贵)和VirtualBox(开源免费)

(3)VMware的版本介绍
Workstation Player:是简化版
Workstation Pro:在Player的基础上功能更加完善

偶数版本为长期支持维护版本(LTS),如16.04、18.04、20.04等等。

(4)高版本的VMware创建的虚拟机文件用低版本的VMware是打不开的,反之则可以。所以创建虚拟机时VMware的版本不要求最新,而你想使用别人创建的虚拟机就必须自己的VMware版本比他的高(至少一样)。我的ubuntu16.04.3_x64是用VMware12.5.7创建的,所以你要使用我提供的ubuntu虚拟机,就必须至少使用VMware12.5.7或者更高版本,我们这里安装的是VMware16.0.0版本。

2、安装VMware16.0.0

参考教程:https://www.jb51.net/softjc/745263.html
官网下载链接:https://download3.vmware.com/software/wkst/file/VMware-workstation-full-16.0.0-16894299.exe
我提供的ubuntu 16.04链接:链接:https://pan.baidu.com/s/10DGcQAZyPVZVG51_ITDP_g 
提取码:d082 
--来自百度网盘超级会员V5的分享
大家也可以去ubuntu官网下载,体验自己建立虚拟机的过程,现在用的比较新的应该是Ubuntu 20.04

(1)安装
不管原来有无安装过VMware,都可以直接双击安装程序exe进行安装,如果原来有装过则会自动检测到并且升级。

(2)激活
激活码可以到网上搜索对应版本,我上面的那个链接中的文档也提供了激活码。仅限于私人开发使用,如果是公司一定要去购买正版,负责会很麻烦,涉及到版权问题。

二、安装ubuntu16.04.3 LTS

1、Ubuntu介绍

(1)Ubuntu是linux众多发行版中的一个,目前在国内比较流行

(2)Ubuntu的版本(16.04 16.10 LTS)
04代表是4月份发布的,10代表10月份

(3)如何选择适合自己的版本
根据自己的需求,电脑的配置(低版本比高版本流畅一点,因为我的电脑配置不是特别高,18.04经常会卡住,16.04会好点),学习的资料那个版本更多一点;最新的版本并不一定是最好的,因为存在的bug比较多。

2、下载安装包iso

  官网页面地址:https://www.ubuntu.com/download/alternative-downloads
选择16.04.3LTS的Desktop 64位的iso版本即可。

  当然如果你想安装其他更新的版本也不是不可以,只不过我这篇文章之后的教程是按照16.04进行讲解的,高版本不一定适用,不同版本之间还是有一定的差异,会导致各种问题,16.04网上参考的教程应该是最多的,18.04也不少,但20.04相对前两个就少点了。

3、安装

(1)硬盘可以稍微给大点,我给了60GB,内存给了4GB(windows物理内存有8GB),其他没特别的,选择一个处理器,四个核心。

(2)我提供的那个默认创建的用户aston,密码root 将来开机后su passwd root给root用户设置密码,也是root

(3)自己创建一个虚拟机的安装步骤:
https://www.jianshu.com/p/faf8bbbdd0f2
在这里插入图片描述
这是我安装好的虚拟机(壁纸是我自己换的)

四、新安装Ubuntu的基本设置

  对于以下的操作,请大家阅读我提供的这份文档,因为比较简单,就不过多赘述了!而且看到这篇文章,说明你应该不是完全的Linux操作小白了,基本的操作和ubuntu系统应该接触过。
链接:https://pan.baidu.com/s/1qw97NvySeUBk7zJRN_FPVw
提取码:rezg
–来自百度网盘超级会员V5的分享
注:本文档的最终版权归朱有鹏老师所有,向朱老师致敬!

1、开机和关机等

(1)初始状态下开机
(2)关闭虚拟机
(3)挂起和恢复虚拟机
(4)快照

2、虚拟机基本设置

(1)更换桌面背景
(2)设置屏幕分辨率
(3)全屏虚拟机的好坏
(4)关闭锁屏
(5)关闭更新

3、控制台Terminal

(1)打开和关闭控制台 Ctrl+Alt+T
(2)以Tab形式打开控制台
(3)设置控制台字体和大小

以上的设置可以直接百度找到教程,若我提供的文档没有,请自己百度查找!

五、ubuntu的root用户

1、ubuntu的多用户体系

(1)分组:特权组和普通组
(2)特权代表:root;普通代表:默认创建的用户aston(自己起的名字)
(3)添加用户用:useradd和adduser,也都有对应的删除用户指令

2、平时使用ubuntu时用户的影响

(1)不安全但方便的使用习惯:直接以root用户登录使用ubuntu
(2)正规使用方式:默认以普通用户登录,需要特权操作时用sudo指令临时获取特权级别来完成操作
(3)为root用户设置密码,默认情况下安装好的ubuntu中root用户是没有密码的,所以我们没法去su root切换到root用户。需要如下的操作方可:

(1)sudo passwd root
输入当前账户的开机密码
(2)输入要设置的root密码
(3)再次输入要设置的root密码
成功!可以使用su来进入root用户了

3、常规使用时的工作目录问题

(1)每个用户有自己的工作目录,一般应该在自己的目录下干活

(2)/opt 目录常被用来临时做工作目录

(3)一般挂载应该挂载在/mnt目录下,还有些挂载有特定目录譬如/media等

(4)/bin /sbin /lib等关键目录操作要慎重,一旦损坏系统可能会瘫痪(一般装完系统并搭建好常用环境好,可以将虚拟机关闭,并打包成压缩包保存,坏了直接解压一份来用)

六、安装vim

1、刚安装的ubuntu默认没有vim,vim用的比较多,所以上网后先会安装vim。

2、上网
这个请自行百度搜索其他教程,不过安装上述提供的虚拟机安装教程,此时你的虚拟机应该是可以上网的!

3、安装vim
当时使用apt-get install安装软件时,发现安装不了,比如安装vim出现如下问题:
在这里插入图片描述
可以使用以下的命令尝试解决:更新数据源,因为其安装软件都是在线安装,访问服务器下载资源。

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install vim

还可以使用aptitude安装软件,当然你需要先安装aptitude:

sudo apt-get install aptitude

安装完后我们在使用其安装vim:

sudo aptitude install vim
根据安装的打印信息进行选择:
选择n,进行降低版本
剩下的都选择Y

安装好后,进行测试;
vi a.c
看是否可以输入,使用标有上下左右箭头按键进行移动光标时,看是否正常,是否可以移动。

七、共享文件夹和VMtools安装

VMtools参考教程:https://blog.csdn.net/qq_21516633/article/details/102623517

安装VMtools成功后:虚拟机ubuntu桌面可以和主机Windows桌面之间相互拖曳移动文件,复制文字粘贴。注意不同版本的ubuntu安装可能会有所区别,若我提供的教程未解决你的问题,请自行百度搜索其他教程,搜索时加上你的ubuntu版本号,eg:ubuntu18.04 安装VMtools。有时也可以加上VMware的版本搜索,这样更加准确些。

先确保VMtools正常工作后再去安装共享文件夹!
共享文件夹安装教程:https://blog.csdn.net/qq_30534935/article/details/95779302

八、搭建samba服务器

3个关键点:
1、安装samba时;
2/etc/samba/smb.conf配置项目问题

安装参考教程:http://www.cnblogs.com/bencakes/p/5541771.html
sudo apt-get install samba

如果使用apt-get进行安装,无法定位软件包,或者有依赖关系未解决,尝试用aptitude去进行
安装,如上边安装vim操作类似。

1、修改配置文件/etc/samba/smb.conf解决只读不能写问题(为了避免出错,可以将该配置文件备份后再去修改,将来操作失误时可以还原)

(1)将sambashare目录改为777,直接测试,还是不行
(2)重启smb服务器后再测试,还是不行
(3)修改配置文件中0775到0777,并重启samba服务器,测试,还是不行
(4)配置文件中添加2行:
writable = yes
available = yes
在这里插入图片描述
  再重启服务器sudo /etc/init.d/sambd restart,测试,解决了。要注意的是有的人该目录下的程序不叫sambd,而是samba(我的就是),如果执行命令提示找不到命令,查看一下该目录下自己的程序名是哪个:
在这里插入图片描述
windows下打开开始–>运行–>输入:\192.168.1.141\share

2、配置文件中的一个坑security=share:
详情阅读参考:http://www.bubuko.com/infodetail-2219037.html

3、配置为带用户访问限制的samba,重启smbd时,报错:
[…] Restarting smbd (via systemctl): smbd.serviceJob for smbd.service failed because the control process exited with error code. See “systemctl status smbd.service” and “journalctl -xe” for details.
failed!
这种报错就表示配置文件中有不对的地方,比如“=”左右两边没有空格之类的。或者注释及其之前的空格是中文空格等等,可以通过删除有用配置信息以外的注释解决。

4、在Windows中创建一个smb共享文件夹的快捷访问,鼠标右键点击此电脑,选择映射网络驱动器:
在这里插入图片描述

九、NAT和桥接

详解:https://blog.csdn.net/zhengqijun_/article/details/69788894

1、原理介绍

(1)NAT
 &enmsp;主要你的主机可以上网,那你的虚拟机就可以上网,你的虚拟机是依赖于你的主机上网的。

(2)桥接
主机和虚拟机是平行关系,拥有一个独立的ip,且二者处于同一个局域网下。

2、VMware菜单设置

参考学习:https://www.cnblogs.com/woms/p/5945575.html
(1)NAT:第一步,VMware软件菜单中选择NAT;第二步,虚拟机ubuntu设置为dhcp方式并重启网卡得到合法的IP地址。

(2)桥接
https://blog.csdn.net/qq_32360995/article/details/90715780

(3)也可同时设置两种模式,可参考如下教程:
https://blog.csdn.net/xuoeigan/article/details/108225578

以上教程对我而言可以,对你却不一定,如果未解决,请自行百度搜索其他的教程!

十、Ubuntu中网络配置

1、修改/etc/network/interfaces文件

(1)静态IP

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

auto ens33
iface ens33 inet static
address 192.168.1.141
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameserver 8.8.8.8

(2)DHCP

# dhcp
auto ens33
iface ens33 inet dhcp

2、重启网卡

(1)旧版本ubuntu中,最常用的是:sudo /etc/init.d/networking restart
(2)在很多版本中,也可以:sudo service networking restart
(3)在新版本ubuntu中,用:ifdown ens33 然后再ifup ens33

注意:什么情况下用DHCP会成功
(1)NAT方式上网

(2)桥接到电脑的一个网卡上,而这个网卡连接的外部网络中有DHCP服务器。典型的方式就是电脑通过WIFI连接到家里的路由器(dhcp server),ubuntu桥接到无线网卡上,这时dhcp一定能成功

十一、Ubuntu连接开发板的网络设置

1、必须桥接

(1)桥接网络,桥接到有线网卡

(2)开发板运行linux(或uboot),IP地址设置好,网卡驱动没问题 192.168.1.10

(3)ubuntu中设置静态IP到同一网段,重启网卡 192.168.1.141

(4)windows中有线网卡对应的本地连接设置为同一网段静态地址 192.168.1.20
操作教程:https://service.tp-link.com.cn/detail_article_2801.html

2、几个细节

(1)如果开发板是linux,那么开发板和ubuntu可以互相ping通;如果开发板是uboot,那只能从uboot去ping通ubuntu,不能反过来ping通(因为uboot不会反复监测,其本身程序的原因)。

(2)如果开发板能ping通ubuntu但是ping不通windows(不合理),往往是windows的防火墙或者360等安全软件拦截导致的。其实不影响使用,不用理会。

(3)可以从一个路由器引出两根网线,一个接开发板,一个连接自己的电脑,这样可以比较顺利的实现二者间的网络连接,还有一种解决方式,将开发板与电脑使用网线直接相连,将开发板当作一个可以上网的设备,电脑使用有线网卡连接到开发板,不过这种方式问题比较多,不容易成功。因为开发板在启动uboot、内核过程中开发板网卡会初始化两次,出现中断的情况,容易出现问题。

十二、桥接下samba服务器的使用

1、桥接到 有线网卡/WIFI网卡 下使用samba

访问方式和上边相同,只不过相比于上面IP地址改变了,要使用新的ip地址进行访问

2、有线网卡的一个bug

(1)有线网卡本身只有在激活状态下才会工作,samba才能用;而有线网卡如果没有通过一根网线连接到一个可联网的设备(路由器、别的电脑、运行了linux的开发板)时有线网卡默认是不会被激活的。这就是一个bug。

  当桥接到有线网卡,并且开发板没有运行linux时,这时samba服务器是没法用的。在我们正常开发时一般大部分功能开发时开发板上都已经跑起来linux了,这时候不影响。影响的主要是系统移植的开发过程。这个过程中就会遇到samba服务器没法使用的情况。(这是使用网线将电脑和开发板直接连接的情况)

十三、主机Windows和虚拟机ubuntu之间文件共享经验

1、使用共享文件夹技术

(1)本地开发、共享文件夹可用,首选之。
(2)本地开发、共享文件夹不可用,试试重装VMtools

在公司可能是使用ssh服务远程登陆进行开发,共享文件夹就无法使用了!

2、使用samba服务器

(1)本地开发、共享文件夹无法使用并且参考网上多种方法还无法解决,建议用samba,不连开发板时首选NAT方式进行上网,在这里不得不说一下virtualBox的一个优点了,可以配置两张网卡,一个选择NAT方式主要进行上网,另一个选择桥接模式用于开发。

(2)必须连开发板(必须桥接)时,如果开发板始终运行linux,那就桥接到有线网卡配好IP用samba

(3)开发板系统移植阶段没有linux时,可以考虑:开发板和主机不直连而是通过路由器网连,开发板和路由器各使用一根网线进行上网。

(4)差一点的方法是:连开发板时桥接有线网络,用samba时桥接到无线网络(或NAT)

3、添加Loopback网卡(虚拟网卡)实现Windows和ubuntu始终可以桥接ping通

Windows10系统添加虚拟网卡(Microsoft Loopback Adapter)的方法:
https://blog.csdn.net/zhaikaiyun/article/details/106016248
上述链接中的操作完成后去VMware打开虚拟网络编辑器,设置桥接到刚才添加的那个虚拟网卡。
在这里插入图片描述
ubuntu中设置静态ip,尝试去ping同主机,再去测试samba服务器,此时电脑不需插网线,也可使用samba服务器。因为借助了刚才得到本地回环网卡,电脑成为了一个类似路由器的设备。

十四、搭建tftp服务器、搭建nfs服务器

参考我上面提供的那份朱老师的文档进行操作即可(我是可以的)。若按照相应操作未解决,请百度搜索其他教程,我给大家找了一个:
https://www.cnblogs.com/icefree/p/7902043.html。

如果大家觉得我的文章讲的不够详细,无法解决你的问题,大家可以去51CTO学院购买朱老师的课程《嵌入式linux开发环境搭建视频课程》,只要9.9元!链接:
https://edu.51cto.com/course/10751.html
在这里插入图片描述
本篇博客内容结构组成以及部分内容参考了《朱老师物联网大讲堂》课程,并且有些地方引用的他人的博客或者文章,如有侵权,请联系删除!水平有限,不足之处请大家多多指教。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

嵌入式linux开发环境搭建(VMware16.0.0+Ubuntu16.04.3_X64) 的相关文章

随机推荐

  • Ubuntu创建文件夹和创建文件命令

    Ubuntu创建文件夹和创建文件命令 1 创建文件夹 span class token function mkdir span 文件夹名字 2 创建文件 span class token function touch span 文件名字 后
  • ros-gazebo长时间加载不出来问题

    ros gazebo长时间加载不出来问题 刚刚开始安装gazebo的时候 xff0c 联网打开gazebo会长时间加载不出来 xff0c 断网就可以立即加载出来 xff0c 这是因为gazebo联网下载模型文件 xff0c 可以通过将模型文
  • ros-pocketsphinx语音识别(二)-创建语音库

    ros pocketsphinx语音识别 xff08 二 xff09 创建语音库 注释 xff1a 本文大部分引用博主slam02 的博客 xff0c 因便于管理设置为原创 xff0c 希望作者不要介意 基于pocketsphinx的ROS
  • 关于 USRP 如何将采样频率设置到硬件达到的最低采样频率以下的问题

    做什么通信不好非要做水声通信 你资料少就少吧还一堆问题 得 xff0c 说正事 xff1a 目录 1 发送端上采样 2 接收端降采样 最近在尝试将水声 OFDM 在 X310 中运行 xff0c 首先遇到的地一个问题就是 xff1a 虽然
  • roslaunch运行报错: ERROR: cannot launch node of type

    roslaunch运行报错 ERROR cannot launch node of type 从github下载的代码 xff0c 在允许launch文件时候报错 1 检查是否在工作空间catkin make编译 xff0c 以及编译是否可
  • Python报错File “「string」“, line 1, in 「module」 NameError: name ‘q‘ is not defined

    Python报错File line 1 in NameError name q is not defined 笔者运行环境 xff1a Python 2 7 17 print span class token punctuation spa
  • MATLAB的appdesigner背景图片设置

    MATLAB的appdesigner背景图片设置 工作环境 xff1a windows10 MATLAB2017a 转变MATLAB2019b 前面因为课程需要做了一个简单的MATLABapp xff0c 在进行app背景图片设置的时候 x
  • ros-话题节点消息控制rviz中机械臂Publish Joint_State with Python to RVIZ-ros回炉再强学习(6)

    ros 话题节点消息Publish Joint State with Python to RVIZ ros回炉再强学习 xff08 6 xff09 笔者工作环境 xff1a ubuntu16 04 ros kinect 代码下载地址 xff
  • opencv边缘检测运用sobel算子源代码方法

    opencv边缘检测运用sobel算子源代码方法 span class token function import span cv2 span class token function import span numpy as np spa
  • v-rep仿真之键盘控制机械臂末端移动

    v rep仿真之键盘控制机械臂末端移动 键盘控制机械臂末端移动原理为 xff0c 设置机械臂逆运动学target xff0c 机械臂末端跟随target运动 xff0c 然后通过改变target的值 xff0c 从而达到控制机械臂末端移动的
  • urx驱动ur3和onrobot rg2

    urx驱动ur3和onrobot rg2 注意 xff1a 非常重要的一点 xff0c urx是可以在Python2和Python3都支持的 xff0c 随着时间改变 xff0c 如果有的读者发现Python2中不能使用 xff0c 报错m
  • ros-melodic安装解决sudo rosdep init问题

    ros melodic安装解决sudo rosdep init问题 解决办法1 去网站查看raw githubusercontent com的真实IP span class token function sudo span span cla
  • 上电浪涌电流

    上电浪涌电流 电机启动或者停转都会形成浪涌电流 xff0c 例如启动的浪涌最大 xff0c 毕竟电机启动静态电阻非常小 xff0c 上电等同短路 xff0c 其电机为感性负载 xff0c 由较大的无功电流 xff0c 对电网造成波动非常大
  • 电机功率计算公式

    电机功率计算公式 电动机输入功率 单相电机为P 61 UI xff0c 三相电机P 61 UIcos0 8 输出功率 xff08 驱动功率 xff09 P 61 FV F为力 牛顿 V xff1a 速度 m S xff09 换算到电机则有
  • C++ 中 map 字典与 set 集合的使用

    在 C 43 43 中 xff0c map 是关联容器 的一种 xff0c 关联容器将值 与键 关联到一起 xff0c 并使用键来查找值 这与 python 中的字典 类型类似 xff0c 也是用来存储键 值对 xff08 key valu
  • win11 安装 WSL2 在非 C 盘及配置(图形界面+代理)

    WSL 安装及配置 直接安装 WSL2 在非 C 盘启用 WSL 功能前提条件设置默认安装 WSL2安装在非 C 盘 图形界面先决条件更新 WSL 以支持 GUI 配置 WSL2 使用 Windows 网络代理 直接安装 WSL2 在非 C
  • CVTE嵌入式实习生与秋招

    目录 前言一 实习笔试二 实习面试三 实习工作内容四 公司看法 前言 今年暑假去CVTE实习了一个多月最后经过转正答辩 xff0c 获得了offer xff0c 现就我的实习经历和对公司的一些认知分享一下 xff08 仅代表个人观点 xff
  • 视频编解码行业及发展方向简述

    目录 一 视频行业1 视频是一个方兴未艾的大产业2 视频行业潜在商机大 人才缺口大3 了解华为海思的HI3518E方案 二 海思方案项目用到的硬件平台介绍1 本专栏文章使用的开发板配置2 处理器为什么选HI3518E 三 本专栏文章规划和核
  • 全面认识海思SDK及嵌入式层开发(1)

    目录 一 全面认识和检测配套开发套装1 套装配件介绍2 检测开发板3 注意 二 视频设备开发的技术流1 视频从产生到被消费的整个流程2 视频行业的商业角度分段3 几个疑问点 一 全面认识和检测配套开发套装 购买方式 xff1a 淘宝搜索 g
  • 嵌入式linux开发环境搭建(VMware16.0.0+Ubuntu16.04.3_X64)

    目录 一 安装VMware1 VMware介绍2 安装VMware16 0 0 二 安装ubuntu16 04 3 LTS1 Ubuntu介绍2 下载安装包iso3 安装 四 新安装Ubuntu的基本设置1 开机和关机等2 虚拟机基本设置3