日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

嵌入式开发环境搭建

發布時間:2023/12/20 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 嵌入式开发环境搭建 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

    • 一、背景
    • 1、VMware 安裝
    • 2、Ubuntu 安裝
      • (1)LTS 和 非 LTS
      • (2)配置要求
      • (3)64位 和 32位
      • (4)下載安裝
    • 3、新安裝的 Ubuntu 的使用優化
      • 1、更換背景設置
      • 2、關閉更新
      • 3、打開終端
    • 4、 root 用戶
      • (1)初始 root 用戶沒有密碼
      • (2)用戶工作的目錄
    • 5、常用的軟件遇到的問題
    • 6、共享文件夾和 VMtools 的安裝
      • (1)安裝 VMtools 軟件:第一種
      • (1)安裝 VMtools 軟件:第二種
    • 7、搭建 samba 服務器
      • (1)在 ubuntu 安裝 samba 軟件
      • (2)配置不需要登陸的共享文件夾
      • (3)配置需要登陸的文件夾
    • 8、NAT 和 橋接
      • (1)NAT方式
      • (2)橋接方式
    • 9、Ubuntu 中網絡設置
      • (1)/etc/network/interfaces 文件
      • (2)重啟網卡的命令
    • 10、UBuntu 連接開發板時候的網絡設置
      • (1)注意細節
  • 二、搭建tftp、nfs 服務器
      • 1、搭建 tftp 服務

一、背景

(1)嵌入式開發需要的環境:VMWare + Ubuntu 、 tftp 服務器、nfs服務器、vim、samba。

理解:
(1)在windows 上面安裝虛擬機軟件 VMWare
(2)在虛擬機軟件VMWare 當中創建虛擬機 Ubuntu
(3)在Ubuntu 當中安裝 tftp 服務器、nfs 服務器、vim、samba 服務器等服務。

1、VMware 安裝

官網:https://www.vmware.com/cn.html
應用與云->查看所有產品


找到桌面級的 Hypervisor

  • Pro:高級版本,功能比較多。(收費)(可以去其他網站搜索密鑰)
  • Player:低版本,功能比較少。(免費)

2、Ubuntu 安裝

下載地址:ubuntu 官網
中文網址

(1)LTS 和 非 LTS

LTS:LTS意為“長期支持”,一般為5年
非LTS:不是長期維護。

(2)配置要求

在下載之前,我們要查看我們電腦是否支持當前虛擬機的配置要求。

(3)64位 和 32位

64位:和我們電腦主機一樣,現在基本都是 64位(一般選這個
32位:現在很少有主機是32位了,(32位,最大只能識別 4G 的空間

(4)下載安裝

1、首先下載好的是一個光盤映像文件

2、VMware基于這個Ubuntu 的映像文件,來安裝虛擬機。

3、設置名字

4、選擇安裝路徑:(將這個映像文件進行安裝成為虛擬機系統)

5、硬件配置

6、這樣就安裝好了。

總結:
1、首先下載的鏡像文件,相當于一個安裝包。
2、之后的建立虛擬機,相當于對這個安裝包進行安裝。


3、新安裝的 Ubuntu 的使用優化

1、更換背景設置

在 setting 當中去設置

2、關閉更新

3、打開終端

1、快捷鍵: Alt + Ctrl + T
2、右鍵 : open terminal

3、設置 tab 模式

(1)首先打開一個終端、然后點擊上面的 preferences 。

(2)選擇 tab 模式

(3)形式

4、 root 用戶

(1)初始 root 用戶沒有密碼

在終端切換root 用戶的時候,會提示切換失敗。

解決方案:
為 root 用戶建立一個密碼:sudo passwd root

(2)用戶工作的目錄

1、每個用戶都有自己的工作目錄,用戶一般在自己的工作目錄下面干活。

  • 比如 cyber 用戶:/home/cyber

2、臨時工作目錄: /opt

3、一般的掛載目錄 /mnt

4、還有一些的特殊的掛載 /media


5、常用的軟件遇到的問題

1、先使 ubuntu 上網
參考文章

2、在 /opt 下面安裝 vim

安裝失敗,解決方案:

  • 第一種:更新我們的安裝源
sodo apt-get updata

有時候更新之后就,可以下載了

  • 第二種:安裝 aptitude 軟件(相當于 軟件管家,類似于 apt-get 這個軟件 )
sodo apt-get install aptitude

然后使用 aptitude 軟件,來進行安裝

aptitude install vim


當我們選擇 not 的時候,就會給我們推薦另外一種方案。



這下就安裝好了


6、共享文件夾和 VMtools 的安裝

具體設置可以參考這個視頻:參考視頻

本教程不是很全面,因為直接設置就可以成功,所以并沒有實際安裝這些東西。

(1)安裝 VMtools 軟件:第一種

功能:使windows 和 Ubuntu 可以直接通訊。

(1)可以直接復制文字
(2)可以直接復制軟件
(3)共享文件夾也是 VMtools 的其中一個功能

安裝 VMtools 軟件(1)—— 有的可能是黑的

如果可以點的話,那么會提示這么操作。

(1)我們點擊更新這個按鍵相當于,直接模擬安裝了一個驅動。所以在 Ubuntu當中顯示。

(1)安裝 VMtools 軟件:第二種

參考博客:https://blog.csdn.net/Enochzhu/article/details/103566748


7、搭建 samba 服務器

目的:有時候共享文件夾不能使用,所以我們通過搭建 samba 服務器來實現共享。
主要參考博客:https://blog.csdn.net/weixin_38056448/article/details/83218458

(1)在 ubuntu 安裝 samba 軟件

1、利用軟件 aptitude 來安裝(aptitude 的安裝可以參考第 5 部分)

aptitude install samba

(1)先選擇 no ,要求軟件選擇另外的方案
(2)一直選 yes

2、查看當前版本

samba -V

(2)配置不需要登陸的共享文件夾

1、ubuntu 當中的配置

1、在home 目錄下創建一個共享目錄mkdir /home/Anyone_Share2、添加目錄權限chmod o+w /home/Anyone_Share/ // o : other user代表第三個使用權限3、備份配置文件cd /etc/samba/smb.confcp smb.conf ./smb.conf.bak4、修改Samba的配置文件 /etc/samba/smb.confvi /etc/samba/smb.conf5、在文件末尾添加如下內容: #設置客戶端顯示的共享目錄的名字 [share]comment=this is Linux share directory path=/home/Anyone_Share browsable=yes public=yes writable=yes create mask=0777 directory mask=0777上述配置的解釋如下: comment 是關于該目錄的簡要描述 path 參數的共享目錄的位置 browsable 表示是否在 Window Explorer中顯示該目錄 guest ok (或者使用 public)表示是否允許匿名訪問該共享目錄 read only (或者使用 writable = yes)表示是否是只讀 create mode 指明新建立的文件的屬性,一般是0755 directory mode 指明新建立的目錄的屬性,一般是07556、重啟Samba服務使配置生效service smbd restart

2、在windows 當中打開

(1)查看ubuntu 的 ip 地址。(在 NAT 模式下面上網)

(2)在windows 當中打開(在我的電腦當中輸入即可)

第一次登陸,需要確認你是 Ubuntu 的哪一個用戶。(輸入 Ubuntu 的用戶名稱與密碼即可)
并不是指 Samba 的用戶

(3)也可以建立一個快捷方式來進行打開

(3)配置需要登陸的文件夾

我自己并沒有實踐

Secured share 與 Anonymous share 不同,一個 Secured share 共享目錄,當客戶端訪問時需要輸入用戶名和密碼,因此,相比 Anonymous share, Secured share 共享目錄的安全性更高。當你在一個公共場合搭建Samba服務器時,應該創建 Secured share 共享目錄。

Secured share 共享目錄的創建方法如下:

1、創建一個 secured share 共享目錄并設置權限

$ sudo mkdir -p /home/secret $ sudo chmod o+w /home/secret

2、創建一個用于訪問這個 secured share 的用戶

$ sudo useradd sambauser -s /usr/sbin/nologin //創建一個名為sambauser的用戶,指定路徑為/usr/sbin/nologin即不需登陸

3、修改共享目錄的User 為 sambauser

$ sudo chown sambauser:sambauser /home/secret //此操作可以忽略

4、修改 Samba 配置文件
在文件末尾添加如下內容:

[secret] comment=Secret File path=/home/secret valid user=sambauser guest ok=no writable=yes browsable =yes create mask=0755 directory mask=0755

5、將用戶 sambauser加入到本 smbpasswd file

$ sudo smbpasswd -a sambauser

6、執行完該命令后會在/etc/samba/smbpasswd添加一條關于密碼的信息

7、重啟 Samba 服務使配置生效

$ sudo service smbd restart

至此,Samba服務器配置完成。在Windows可以連接和查看如下:


8、NAT 和 橋接

虛擬機本來就是一臺虛擬出來的設備,(他自己沒有自己的物理網卡)(所以本身不可能通過自己來上網)

我們筆記本電腦有兩個網卡:有線網卡、無線網卡。(所以可以通過:網線和wifi來進行上網)

虛擬機上網的方式:NAT和橋接

(1)NAT方式

1、原理:依賴于主機上網,只要主機windows 可以上網,虛擬機就可以上網。

1、不管 windows 到底是什么方式來上網,只要windows 可以上網,虛擬機就可以上網。
2、筆記本的網卡只服務windows一臺機器,虛擬機然后再依賴 windows 來上網。
3、windows 和 虛擬機公用一個IP地址。(校園網給我們固定的IP地址,我們虛擬機只能通過 NAT 方式來上網)

2、配置:

1、VMware 軟件菜單中選擇 NAT 方式
2、虛擬機設置為dhcp 模式,然后重啟網卡(得到一個合法ip地址)。(怎么設置:查看第9節)

3、缺點:開發板不能與虛擬機通訊

(2)橋接方式

1、原理:橋接方式認為虛擬機是一個獨立的設備

1、與 windows 主機共同使用有線網卡,和無線網卡。相當于這兩個網卡,共同服務 windows 和 虛擬機。
2、 windows 和 虛擬機使用 IP 地址不同。

2、配置:

1、在虛擬機設置選項當中,選擇橋接方式。
2、編輯——> 虛擬網絡編輯器:選擇橋接到哪里去。(有真實網卡,和虛擬網卡)
Ethernet :有線Wireless:無線


9、Ubuntu 中網絡設置

鋪墊:我們來查看Ubuntu當中的網絡信息

ens33 網卡:

1、是虛擬機自動創建的網卡,我們可以用它來做橋接或者是NAT。
2、

lo網卡

1、是自動創建的虛擬網卡。
2、IP地址為:127.0.0.1 :用來做回環測試


ubuntu從17.10開始,已放棄在/etc/network/interface里固定IP的配置,即使配置也不會生效,而是改成netplan方式

參考文章:https://blog.csdn.net/wfcao1314/article/details/107183188

(1)/etc/network/interfaces 文件

在這個文件當中,我們可以對 Ubuntu 來進行各種網絡配置。

靜態(static)模式:

1、需要我們額外配置 ip 地址信息。
2、自己配置需要注意的問題
address:必須和我們的主機ip 地址在一個網段,但是他們兩個是不一樣的。(因為橋接方式是獨立的IP地址,而路由器分配的地址都是在一個網段里面的)
3、gateway:網關地址,也就是網段的第一個地址

注意:什么情況下會使用 DHCP 服務成功:
(1)NAT 方式上網。(虛擬機依附于windows,直接使用windows 的IP地址)

(2)橋接到電腦的一個網卡上面,而這個網卡連接的外部網絡中有DHCP 服務器。
成功的方式:

1、橋接到無線網卡,然后我們的電腦通過WiFi來連接路由器。
2、橋接到有線網卡,然后我們通過網線來連接路由器。

橋接DHCP,不能上網的情況:

1、橋接到有線網卡,而我們有線網卡并沒有使用,我們使用無線網卡上網。
2、橋接到有線網卡,我們有線網卡的網線,并沒有插到有DHCP 服務器的設備上面。
比如:路由器是由 DHCP 服務器的;而我們的光貓,采用撥號上網是沒有 DHCP 服務器的。
3、校園網的路由器當中雖然有 DHCP 服務器,但是有的學校會禁用,直接給我們分配固定的 IP地址。

(2)重啟網卡的命令

第一種:(有的版本不能用)

sudo /etc/init.d/networking restart

第二種:

sudo service networking restart

第三種:

ifdown ens33 ifup ens33

10、UBuntu 連接開發板時候的網絡設置

(1)根據前面分析的原理,我們 Ubuntu 上網的方式必須設置為橋接方式。
如果是 NAT 方式的話,我們的虛擬機根本沒有暴露在外面
因為橋接方式:虛擬機和我們的 windows 具有相同的地位。并且還得橋接到有線網卡,因為開發板是通過網線和我們主機連接的

(2)開發板必須運行 linux (或者 uboot),IP地址設置好,網卡驅動沒問題

移植網卡驅動必須設置好

(3)虛擬機Ubuntu當中,設置靜態ip 與開發板的到同一個網段,重啟虛擬機網卡。

1、重啟網卡:讓新的ip地址生效。
2、為什么要設置靜態模式?
因為我們筆記本電腦上面通過網線連接到開發板開發板上面的網卡可能沒有 dhcp 服務器
所以根本分配不到 IP地址。

(4)windows 中有線網卡對應的 本地連接,設置為與開發板ip地址的同一網段


總結:

1、開發板: 192.168.1.10
2、虛擬機Ubuntu :192.168.1.141
3、本地連接:192.168.1.20
他們都在同一個網段,所以可以通訊。


(1)注意細節

1、如果開發板里面運行Linux,開發板和windows,還有Ubuntu 之間都可以ping 通。

2、如果開發板當中運行的是 uboot , 只能從 uboot 去 ping Ubuntu,不能反過來,從Ubuntu ping 開發板。

因為 uboot 是一個裸機程序,并不是一個操作系統,所以它并不會一直循環檢測從Ubuntu 發來的命令

3、上面的配置設置好以后,我們的開發板能 ping 通Ubuntu, 但是 ping 不通 windows 。(不合理)

往往是因為 windows 的防火墻或者 360 等安全軟件攔截導致的。


二、搭建tftp、nfs 服務器

1、搭建 tftp 服務

1、Ubuntu 安裝 tftp 的服務:tftp-hpa (客戶端)、tftd-hpa(服務程序)、xinetd

sudo apt-get install tftp-hpa tftpd-hpa sudo apt-get install xinetd xinetd 是新一代的網絡守護進程服務程序,又叫超級Internet服務器,常用來管理多種輕量級Internet服務。

2、配置 /etc/xinetd.conf

3、配置服務端
修改 /etc/default/tftpd-hpa 文件內容如下

  • TFTP_DIRECTORY : tftp 啟動根目錄, 修改成自己想要的目錄

  • TFTP_OPTIONS : tftp 啟動選項,各選項解析如下:-l –Listen、-c –create、-s –secure

# /etc/default/tftpd-hpa TFTP_USERNAME="tftp" TFTP_DIRECTORY="/tftpboot" TFTP_ADDRESS="0.0.0.0:69" TFTP_OPTIONS="-l -c -s"

如果你在客戶端獲取文件時出現 Error code 1: File not found 這個錯誤,請檢查一下TFTP_OPTIONS=“-l -c -s”。

4、然后建立TFTP配置文件,
使用命令:“vi /etc/xinetd.d/tftp” 建立文件,向文件中寫入如下代碼(必須按照格式嚴格對齊)

1 service tftp2 {3 socket_type = dgram4 wait = yes5 disable = no6 user = root7 protocol = udp8 server = /usr/sbin/in.tftpd9 server_args = -s /tftpboot10 per_source = 1111 cps = 100 2(有一個空格格)12 flags = IPv413 14 }

5、修改權限
參數 -R :指子目錄也這樣進行配置

6、重啟 tftp 服務

配置好后,重啟 tftp 服務:

service tftpd-hpa restart /etc/init.d/xinetd reload /etc/init.d/xinetd restart

7、測試

本地測試:

遠程測試:

總結

以上是生活随笔為你收集整理的嵌入式开发环境搭建的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。