2_ZedBoard開發板跑Linux

虛擬機安裝Ubuntu

因爲須要製做可啓動的linaro Linux鏡像,因此須要用到Linux,用來提取linaro鏡像。使用Linux能夠在電腦硬盤上安裝,也能夠安裝虛擬機。因爲我須要在Windows下使用筆記軟件,沒法將工做環境徹底遷移到Linux上去,因此我選擇虛擬機安裝。shell

  1. 選擇虛擬機。
    目前Windows下主流的虛擬機有Vmware workstation, virtualbox和微軟本身的hyper-v.毫無疑問,VMware workstation是性能最好的,可是它是收費的商業軟件,即便安裝後不使用,後臺也是一大堆服務和進程開着,太佔資源;Hyper-V是微軟自帶的,已經集成到操做系統裏面了,對Windows系統很友好,可是對Linux,特別是桌面版,呵呵,誰用誰知道,最大的問題是虛擬機沒法獲取訪問USB設備,雖然網上也有解決方案,可是太折騰,本着簡單易用的原則,我選擇開源的virtualbox。
    目前virtualbox已經更新到6.0版了,去官網下載安裝就好,千萬別忘了下載安裝擴展包。下載地址以下:
    virtualbox
    選擇虛擬機
    點擊紅框內的連接,便可下載Windows端的virtualbox虛擬機和擴展包。
  2. 安裝虛擬機。
    這個就不說了,贊成協議一路next下去就好了,安裝完虛擬機後就能夠安裝擴展包了,打開虛擬機,點擊左上角管理-->全局設定-->擴展,點擊右邊欄「+」號添加擴展,文件選到下載的擴展包,會出現一個使用協議,將使用協議的滾動條拉到底,點擊「我贊成」就好了。
    全局設定
    安裝擴展
    許可
    至此,虛擬機安裝工做結束。
  3. 安裝Ubuntu。
    點擊新建,按照安裝嚮導一步一步走下去就好了,主頁涉及設定磁盤容量,固定磁盤仍是動態磁盤,內存大小,很簡單。
    新建Ubuntu虛擬機完成後,就能夠啓動虛擬機了,第一次啓動會提示沒有引導,由於尚未往虛擬磁盤中安系統,在設備中選擇分配光驅,而後選擇下載的Ubuntu鏡像ISO文件,就如同光盤安裝系統同樣,Ubuntu虛擬機就開始安裝Ubuntu系統。
    選擇鏡像
    安裝系統的過程就不描述了。
    安裝完系統,會發現Ubuntu虛擬機沒法全屏,只有很小一個屏幕,這時須要在Ubuntu中安裝加強工具。點擊設備-->安裝加強功能。
    安裝加強功能
    而後在Ubuntu中打開終端,會發如今/media/username目錄下,會出現VBOX_GA這個目錄,這就是加強功能的安裝文件。
    Linux中設置
    進入該目錄,便可看到安裝文件。
    Linux中設置
    使用 sudo -i 切換到root用戶,以root用戶運行autorun.sh便可安裝加強功能,安裝完後,記得卸載加強功能。
    Linux中安裝加強功能
    重啓虛擬機,Ubuntu就能夠全屏顯示了。
  4. 對Ubuntu作一些調整
    首先能夠發現,在Ubuntu中是能夠直接上網的,緣由是咱們的虛擬機在網絡設置上默認使用了網絡地址轉換(NAT),關於虛擬機的幾種網絡模式,我不作說明,須要瞭解的能夠本身去網上搜,能夠參照該博客:
    virtualbox虛擬機網絡設定
    virtualbox網絡設定
    有時候想使用ssh遠程鏈接虛擬機裏面的Linux,可是在當前狀況下能夠發現,Windows是ping不通虛擬機裏的Ubuntu的,這是NAT網絡模式的特性,虛擬機能夠鏈接宿主機,可是宿主機沒法鏈接虛擬機。只須要稍做修改便可。
    首先,打開虛擬機,在網絡設置中,仍是使用網絡地址轉換(NAT)模式,而後設置端口轉發,在端口轉發中新建規則。因爲想使用ssh服務,ssh服務使用的是22端口,將虛擬機內Ubuntu的22端口轉發到宿主機某一個端口,即作一個端口映射。注意,在設置中,協議選擇TCP,主機IP即宿主機IP,爲空時即表示使用127.0.0.1或localhost,也能夠填寫當前已聯網的網卡的IP,主機端口能夠任意指定,可是儘可能避開有特定協議的端口,如8080,445等,我爲了方便,仍是設置的22端口,子系統IP即虛擬機內Ubuntu的IP地址,可在Ubuntu中用ifconfig命令查看,默認的都是10.0.2.15,能夠爲空,留空即表示使用默認IP,這是virtualbox軟件默認的,子系統端口必須設置想轉發的端口,因爲咱們想使用ssh,因此必須轉發22端口,這個不能隨便填。
    virtualbox設置端口轉發
    虛擬機軟件網絡設置好後,還須要開啓虛擬機內Ubuntu的ssh服務。因爲我安裝時使用的最小安裝,許多軟件都沒有安裝,若是沒有安裝ssh服務端,本身安裝openssh-server。
    Linux安裝ssh服務
    安裝完後,還須要啓動ssh服務。
    Linux啓動ssh服務
    啓動服務後,能夠查看服務是否運行。
    查看ssh服務是否啓動
    能夠看到sshd服務已經運行。
    接下來,就可使用ssh鏈接虛擬機裏的Ubuntu了,將虛擬機扔到Windows10任務視圖第二桌面中,在當前桌面中就開一個ssh遠程鏈接,也不用一直看着虛擬機軟件,簡直不要太爽。
    win10中設置
    接下來,喜歡用什麼軟件鏈接Ubuntu均可以,好比MobaXterm,putty,powershell均可以。
    MobaXterm
    Putty
    PowerShell
    全家福
    到此,虛擬機安裝Ubuntu就完成了。

製做可啓動的SD卡

先準備啓動系統所需的文件,找到下述三個文件,該文件在後面會放進SD卡boot分區。
文件準備
找到下面的一個壓縮包,該壓縮包是Linux鏡像文件,須要在Linux系統中解壓並提取文件。
鏡像文件準備
將上述準備的文件上傳到咱們安裝的Ubuntu系統中,推薦使用MobaXterm這個軟件,這個軟件在ssh鏈接Ubuntu後,能夠直接使用sftp協議將文件上傳到Ubuntu系統中指定位置。只需將所需傳輸的文件拖拽到指定目錄便可完成上傳,很是方便。
MobaXterm之sftp
將SD卡插入讀卡器,將讀卡器插入USB接口,在Ubuntu虛擬機中,從設備中掛載SD卡。
虛擬機Ubuntu掛載SD卡
掛載後,便可在文件管理器中查看到SD卡及其掛載路徑。
查看SD卡路徑
在程序啓動器中找到磁盤軟件,利用該軟件來格式化SD卡。
磁盤軟件
在磁盤軟件中,先刪除SD卡的全部分區。
刪除SD卡分區
使SD卡成爲未分區狀態。
SD卡未分區分區
先建立一個boot分區,分區命名爲BOOT,文件系統爲FAT32.
建立boot分區
而後將剩下的空間所有用來建立一個root分區,分區命名爲rootfs,文件系統使用ext4。
建立root分區
建立完分區後,能夠看到,兩個分區都沒有掛載,剩下的事情咱們能夠在Windows下使用ssh遠程來鏈接Ubuntu,利用命令行來操做。
列出設備
能夠看到,/dev/sdb下有兩個設備,sdb1就是BOOT分區,而sdb2就是rootfs分區。下面掛載之。
掛載設備
兩個設備已經被掛載好了,接下來就是拷貝文件。首先拷貝boot分區的三個文件。
拷貝文件
接下來解壓提取linaro系統的文件並拷貝到rootfs分區,這個過程比較長。
提取linaro系統
解壓完成後,兩個分區內的文件目錄如圖所示。
文件列表
如今便可卸載SD卡,插入zedboard啓動。
卸載設備ubuntu

一些修改

在前面的介紹中,我是用Ubuntu的GUI軟件去格式化的磁盤,在分配root分區的時,用的那個GUI軟件文件系統可選項只有EXT4,但實際使用時發現,EXT4或許沒法啓動,猜想可能時uboot的支持上有問題,因此,爲了提升兼容性和穩定性,仍是建議使用EXT3的文件系統。
利用命令行工具 mkfs 能夠將磁盤分區格式化爲ext3文件系統。
mkfs工具
格式化以後能夠設置一個卷標。
設置卷標
接下來的工做就是掛載分區,提取鏡像文件,拷貝文件,和以前的過程同樣。
拷貝提取文件
最後放一張啓動後的串口打印圖。
linaro啓動網絡

相關文章
相關標籤/搜索