Ⅰ 樹莓派怎麼裝linux系統
使用NOOBS來安裝系統
將TF卡格式化為FAT32格式
注意:TF(micro SD)卡需要大於等於4GB,而且並不是所有TF卡都能兼容樹莓派,需網路查詢兼容性列表
到樹莓派官網下載NOOBS(進入主頁後點擊DOWNLOAD就可以看到NOOBS了)
將NOOBS解壓後的所有文件拷貝到TF卡的根目錄下
連接顯示器,並給樹莓派上電(5V,2A電源,也可直接使用電腦的USB插口)
初始化完成以後,你會進入NOOBS助手界面
選擇你需要安裝的操作系統,然後點擊上方的install OS即可進入安裝
完成後點擊確認,然後Raspberry Pi會重啟,至此系統安裝完成
Ⅱ 樹莓派搭建文件伺服器
https://www.raspberrypi.org/downloads/raspberry-pi-os/
安裝 Etcher 之後啟動 Etcher,插入 SD 卡、選擇要安裝的 img 文件、選擇 SD 卡對應的磁碟分區
https://www.balena.io/etcher/
① 新建一個ssh空白文件,放到root目錄下,樹莓派開機會自動啟用
② 網路優先選擇有線網路
③ 無線網路
將刷好 Raspbian 系統的 SD 卡用電腦讀取。在 boot 分區,也就是樹莓派的 /boot 目錄下新建
具體詳情看下面
https://shumeipai.nxez.com/2017/09/13/raspberry-pi-network-configuration-before-boot.html
方法1:利用路由器軟體查看IP地址
方法2:
ssh連接默認用戶名:pi 密碼:raspberry
方法3:IP Scanner
1.切換 root許可權 sudo su
2.編輯下列文件
連接raw.githubusercontent.com失敗
step1 :
在 https://site.ip138.com/raw.Githubusercontent.com/
輸入raw.githubusercontent.com查詢IP地址
step2 :
sudo nano /etc/hosts
你查到的ip地址,香港的就行 raw.githubusercontent.com
比如:
151.101.76.133 raw.githubusercontent.com
OpenMediaVault項目地址:
https://github.com/OpenMediaVault-Plugin-Developers/installScript
執行安裝腳本:
step1:
輸入樹莓派的IP地址
初始用戶名:admin
密碼:openmediavault
step2:
1.連接硬碟
2.文件系統—>卸載硬碟
3.磁碟—>擦除
4.文件系統—>新建 文件系統選擇EXT4
5.掛載—>應用
6.共享文件夾—>新建一個文件夾 設置許可權
7.SMB/CIFS —>啟用
8.共享—>添加共享
mac登陸
前往:連接伺服器 smb://樹莓派的ip地址
windows
我的電腦—>右鍵—>映射網路驅動器—>找到共享的文件夾
Ⅲ 2019年10個最佳Linux發行版,你用過幾個如何選擇適合自己的
2019年即將結束。雖然Linux的世界確實提供了很多選擇,但一開始它可能會讓人不知所措。這就是為什麼我們准備本指南來幫助您選擇最適合您需要的Linux發行版的原因。
有些發行版在一種任務上表現更好,有些則是多面手,依此類推。因此,讓我們找到最適合您的:
1.最適合初學者的發行版:Linux Mint
開源軟體和Linux的普及度逐年增加,並且越來越多的人正在學習Linux。對於那些用戶,選擇具有平滑學習曲線的Linux發行版至關重要。這種易用性是為初學者推薦Linux發行版時要牢記的最有價值的一點。
Linux Mint 是發展最快的Linux發行版之一。在普及競賽中,它一直在挑戰Ubuntu。除此之外,Linux Mint憑借其近乎完美的桌面體驗,已確立了自己作為Windows操作系統的完美替代品的地位。我之所以將其稱為最佳的Linux新發行版,是因為它能夠為用戶提供開箱即用的體驗。這意味著您無需花費大量時間來安裝發行版和軟體包,就可以完成一些真正的工作。它的佔地面積不大,這是另一個要點。
為什麼最適合初學者?
在此處訪問Linux Mint的網站。
針對Linux新用戶的其他建議:
2.適用於舊硬體的最佳Linux發行版:Ubuntu MATE
對於那些相信Internet安全重要性的人們來說,看到Windows XP在政府辦公室和銀行中到處可見令人沮喪。但是,我們有許多Linux發行版形式的可靠且安全的替代方案。在確定適用於過時硬體的最佳Linux發行版時,低佔用空間和輕便是主要因素。
要在2019年在較舊的PC上運行Linux,建議您使用 Ubuntu MATE 。最新的19.04版本是對18.10版本的較小升級。根據您的喜好,您可以從大量布局選項中進行選擇,例如Mutiny,Cupertino,Traditional,Netbook,Redmond等。如果您想要一個更加穩定的系統,則可以選擇Ubuntu MATE 18.04 LTS版本來確保您的計算機保持更新很長時間。
Ubuntu MATE的最低硬體要求僅為512MB。32位ISO的可用性是我在最佳Linux發行版列表中推薦它的另一個原因。隨著越來越多的發行版疏遠了這種垂死的體系結構,Ubuntu MATE是為數不多的積極開發的選項之一。
為什麼要為舊計算機選擇Ubuntu MATE?
要獲取其ISO映像,請訪問 Ubuntu MATE網站。
有一台舊電腦?您還可以嘗試以下操作:
3.最佳的黑客Linux:Kali Linux
對於黑客, Kali Linux 絕對是無可匹敵的。它帶有數百個有用的工具,這些工具屬於不同類別,例如漏洞分析,無線攻擊,Web應用程序,利用工具,壓力測試,取證工具等。基於Debian Testing分支,該發行版中的大多數軟體包都是從Debian導入的。最近的2019.3版本也標志著Offensive Security和Cloudflare之間建立合作關系的開始,以確保以更可靠的方式更新。
除了功能齊全的台式機,Kali還可以安裝在Raspberry Pi,Ordroid,Chromebook,BeagleBone等上。隨著Kali NetHunter的到來,它也可用於android智能手機。
為什麼要安裝Kali進行道德黑客攻擊?
訪問Kali Linux網站進行下載。
還有什麼可以嘗試進行道德黑客攻擊的?
4. Linux 游戲 發行版:Manjaro
即使在今天, 游戲 玩家也不要沿著Linux前進。好吧,鑒於Linux平台的 游戲 可用性較低,不能怪他們。但是,隨著越來越多的Linux版本發行,這種情況在過去幾年中發生了變化。
雖然2018年最佳Linux發行版列表將Steam OS視為 游戲 的最佳選擇,但最新版本將 Manjaro Linux 標記為 游戲 的最佳選擇。預裝Steam並提供出色的硬體支持是Manjaro方面的一大好處。Manjaro還附帶了硬體檢測工具,以使整體圖形和驅動程序情況清晰可見。如果這聽起來很麻煩,請讓我告訴您它隨附了為Nvidia和AMD卡預安裝的圖形驅動程序。該發行版還提供了一種在Linux內核之間進行切換的簡便方法,以確保獲得更好的硬體支持。
在過去的幾年中,基於Arch的Manjaro開發了一個忠實的用戶群,從而確保其論壇對任何新用戶都有用。
為什麼要在Manjaro上玩 游戲 ?
抓住Manjaro OS的 游戲 在這里。
其他 游戲 發行版:
5.用於編程的Linux發行版:Debian
我認為沒有必要強調這樣一個事實,即大多數Linux用戶要麼是每天使用它來創建新事物的開發人員,要麼是某種開源愛好者。事實證明,許多Linux發行版都可以根據他們的要求適合程序員。他們可以安裝所有必需的工具,但是通常建議將Debian GNU / Linux作為最佳選擇。
Debian Testing分支擁有大量軟體包,這些軟體包以定期測試,更新和堅如磐石而著稱。這種穩定性使程序員可以放心地進行開發。但是,應該記住,僅對具有Linux使用經驗的程序員推薦使用Debian。如果您是初學者,則應根據個人喜好使用Ubuntu LTS版本或其他穩定的Linux發行版。
為什麼選擇Debian進行編程?
Debian網站上有ISO下載和更多信息。
開發人員還有更多選擇:
6.最漂亮的Linux發行版:基本OS
最漂亮的Linux發行版不是可以真正判斷操作系統功能的標准,但是每當有人選擇新發行版時,它就起著重要作用。得益於Linux生態系統提供的靈活性,開發人員可以創建吸引人的新發行版。以我的觀點和經驗,基於Ubuntu的 基本OS 是最漂亮的Linux發行版,也以其無與倫比的性能而聞名。
Windows和macOS的這種快速,開源的替代品借鑒了macOS的一些設計元素。基本操作系統不附帶許多默認的Ubuntu應用程序,因此也提供了輕量級的體驗。藉助基於GNOME的Pantheon桌面環境,基本OS與Plank,Epiphany和Scratch等應用程序進行了深度集成。總體而言,有經驗的初學者都可以使用它來執行日常計算任務。
為什麼選擇基本操作系統的外觀?
訪問 基本操作系統網站 進行下載。
其他漂亮的Linux發行版:
7.適用於兒童的Linux發行版:Ubermix
如今,由於行業需求的增長,學習Linux和開源技術可能變得非常重要。但是,孩子呢?如果您想知道是否為孩子們創建了一些很棒的 Linux發行版。好吧,別無所求,因為這些免費的操作系統易於設置和使用。
我建議 Ubermix 是一個對兒童友好的Linux發行版。這個免費的,專門構建的操作系統還附帶觸摸支持,對於喜歡用手 探索 事物的孩子來說,它是一個絕佳的選擇。它試圖成為學生和老師的絕佳工具。藉助其5分鍾的安裝,60個有用的免費預載入應用程序以及20秒的恢復過程,Ubermix成為了學生和教師的強大發行版。
為什麼為孩子選擇Ubermix?
請訪問Ubermix網站以獲取更多詳細信息。
教育性Linux發行版的更多選擇
8. Linux發行版的隱私和匿名性:尾巴
如果我告訴你愛德華·斯諾登使用(使用)Tails Linux發行版進行通信和瀏覽Web,那麼有些人可能會想知道這樣做的原因是什麼。你們中有些人會有一個粗略的主意。Tails的名字叫「 Amnesic Incognito Live System」,它是安全的Web瀏覽的流行選擇。
可以使用DVD或USB映像在幾乎任何計算機上啟動 Tails live操作系統。這個基於Debian的安全發行版可確保所有Internet連接都被強制通過Tor網路。這樣,您最終就不會在計算機上留下任何痕跡。它還帶有許多加密工具,可幫助您加密電子郵件,文件和即時消息。對於注重隱私的人士,還有其他選擇。
為什麼選擇尾巴來匿名?
訪問Tails網站下載
注重隱私的Linux用戶的更多選擇:
9.伺服器Linux發行版:CentOS
您能想像在不穩定且頻繁發生故障的Linux發行版上安裝伺服器嗎?這個問題的答案很明顯。其他重要因素還包括硬體支持,安全性,電源效率和優化的性能。在這種情況下,有許多免費和付費的選擇 ,而CentOS是我在此類別中的推薦。
在Linux桌面世界中,RHEL在企業領域的地位與Ubuntu相同。 CentOS 是無需花費一次費用即可獲得RHEL好處的方法。換句話說,CentOS是社區支持的RHEL。由於它與RHEL的二進製版本兼容,並且其存儲庫包含所有經過測試的軟體,因此您可以將其用作生產系統或伺服器。它也以通用Linux發行版而聞名。
為什麼選擇CentOS作為伺服器?
訪問CentOS網站下載
伺服器的其他Linux發行版:
10.適用於功能強大的PC和筆記本電腦的Linux發行版:Ubuntu
Canonical的Ubuntu無需在開源世界中進行介紹。基於Debian架構,Ubuntu設法平衡了穩定性和新功能,這是其他發行版所無法比擬的。這就是為什麼它享有無與倫比的人氣。如果您運行的計算機的硬體功能有限,則應嘗試使用Ubuntu MATE,Xubuntu或Lubuntu等Ubuntu版本。
對於功能強大的PC和筆記本電腦,旗艦 版 運行GNOME桌面的 Ubuntu 非常適合。隨著Snaps的推出,安裝應用程序變得更加舒適。它還擁有繁榮的用戶社區和論壇,您可以在其中找到任何問題的答案。總體而言,Ubuntu是一個功能強大的Linux發行版,可讓您執行多任務並高效地完成工作。
為什麼要為功能強大的PC選擇Ubuntu?
訪問Ubuntu網站下載
適用於功能強大的PC的其他Linux發行版:
還想要其他東西嗎?還有更多
那不是全部。有更多類別的Linux發行版可供使用。您可以得到一個用於磁碟管理,應急CD,Raspberry Pi,多媒體製作,Docker,NAS,媒體中心等的工具。但是,在本文中,我將自己限制在流行類別中。在將來的更新中,我將在此最佳Linux發行版選擇指南中添加更多類別,以幫助更多讀者。
繼續閱讀Fossbytes,並在下面的注釋中共享您喜歡的Linux發行版的名稱。
Ⅳ 樹莓派用什麼版本的Linux
樹莓派操作系統
根據偏好選擇下列之一。
5.1.1 Raspbian 「Jessie」
是Debian8.0在ARM的編譯版,加上針對樹莓派深度定製的硬體驅動與軟體程序。官方推薦系統。如果你第一次使用樹莓派,請下載這個。Debian的軟體策略偏保守,穩定第一,升級是次要的。
下載鏈接:http://downloads.raspberrypi.org/raspbian_latest
默認帳號:Username: pi Password: raspberry
發布日期:2015-09-20
5.1.2 Raspbian 「wheezy」
是Debian7.0在ARMv6的編譯版,加上針對樹莓派深度定製的硬體驅動與軟體程序。官方推薦系統。如果你第一次使用樹莓派,請下載這個。Debian的軟體策略偏保守,穩定第一,升級是次要的。
下載鏈接:http://downloads.raspberrypi.org/raspbian/images/raspbian-2015-05-07/2015-05-05-raspbian-wheezy.zip
默認帳號:Username: pi Password: raspberry
發布日期:2015-05-05
5.2 OpenELEC
運行快、且用戶體驗友好的一款XBMC媒體中心。
下載鏈接:http://downloads.raspberrypi.org/openelec_latest
發布日期:2014-06-14
5.3 Pidora
Pidora是社區對Fedora在樹莓派上的移植。不是Fedora官方版,但被Fedora官網推薦用於樹莓派。Pidora基於Fedora 18,採用另一個輕量桌面環境XFCE。Fedora的軟體策略相比於Debian,是略偏向先鋒的。Fedora能用到版本稍新,但也經受過實測調試的軟體包。
下載鏈接:http://downloads.raspberrypi.org/pidora_latest
默認帳號:Username: root Password: raspberrypi
發布日期:2014-07-03
5.4 Arch Linux ARM
著名輕量系統Arch Linux在ARM架構上的移植。注重對於開發者的簡潔,任何可有可無的軟體一律不自帶。僅有命令行界面,不建議初學者使用。Arch Linux的軟體策略是相當激進的,使用Arch Linux能用到最新的軟體包,但也需要承擔嘗鮮可能的風險。
下載鏈接:http://downloads.raspberrypi.org/arch_latest
默認帳號:Username: root Password: root
發布日期:2014-06-01
5.5 RISC OS
非Linux系統。
下載鏈接:http://downloads.raspberrypi.org/riscos_latest
默認帳號:無需
5.6 Raspbmc
下載鏈接:http://downloads.raspberrypi.org/raspbmc_latest
多媒體中心、DIY電視盒專用系統。將媒體中心軟體XBMC與Raspbian系統結合的衍生系統之一。中文支持良好,建議使用。
默認帳號:Username: pi Password: raspberry
5.7 XBian
下載鏈接:XBian_1.0_Beta_1.1.7z
與Raspbmc一樣,是Raspbian+XBMC的媒體中心。注重性能優化。(存在中文文件名亂碼問題)
默認帳號:Username: root Password: raspberry
5.8 RetroPie
下載鏈接:RetroPieImage_v1.7.zip
這是一個基於Raspbian構建的家用機模擬器系統,內置了FC、SFC、GB、GBA、DOS等游戲平台的模擬器軟體,可以將樹莓派快速配置成多功能老游戲主機。
默認帳號:Username: pi Password: raspberry
5.9 FreeBSD
下載鏈接:freebsd-pi-r245446.img.gz
BSD系列。
默認帳號:Username: pi Password: freebsdarm
5.10 Kali Linux
下載鏈接:Kali Linux
Kali Linux。
5.11 Ubuntu MATE for the Raspberry Pi 2
下載鏈接:Ubuntu MATE for the Raspberry Pi 2
Ubuntu MATE是桌面Linux發行,其宗旨是通過MATE這個經典、傳統的桌面環境來提供Ubuntu操作系統的簡介和典雅。MATE是GNOME 2桌面環境的繼續,曾經作為Ubuntu的預設桌面,直到10.10版中被Unity所取代。
Ubuntu MATE適合樹莓派新手使用,界面是最好看的,但是在CPU優化方面不如官方的系統做得好。
5.12 Snappy Ubuntu Core
下載鏈接:Snappy Ubuntu Core
非官方系統 Snappy Ubuntu Core。
5.13 Windows 10 IoT(物聯網版)
RTM版下載:Download RTM Release for Raspberry Pi 2
預覽版下載:Download Insider Preview for Raspberry Pi 2
微軟在Build 2015大會上宣布推出一個獨立的Windows 10開發者預覽版, 這個版本名稱是Windows 10 IoT Core Insider Preview(Windows 10物聯網核心內幕預覽版),現在可供開發人員下載和研究,它支持樹莓派2和英特爾Minnowboard MAX設備,使設備製造商能夠充分利用這些產品有限的硬體資源。
據微軟表示,Windows 10 IoT Core Insider Preview為設備製造商提供了世界一流的開發工具,通用Windows平台的力量,直接訪問硬體的能力,並能在樹莓派2等硬體設備上進行遠程調試,更新和管理軟體。
5.14 PiNet
安裝介紹鏈接:PiNet
PiNet 是一個自由和開放源碼的項目,為幫助學校建立和管理一個Raspberry Pi的課堂。
其主要特點包括
基於網路的用戶帳戶
基於網路的操作系統-所有樹莓PIS啟動一個主Raspbian操作系統。
共享文件夾-易於使用共享文件夾系統的教師和學生。
工作收集系統簡單的工作收集和提交系統,讓學生在工作。
自動備份-自動備份所有學生的工作,定期向外部驅動器。
多個小的功能,如批量用戶導入,課堂管理軟體集成等
伺服器軟體安裝在運行Ubuntu Linux 14.04計算機(這也完全是免費的)。你必須再連接伺服器和覆盆子PIS通過有線網路。
5.15 CentOS 7 ARM for the Raspberry Pi 2
下載鏈接:CentOS 7 ARM
面向ARM硬體架構的 CentOS 7 Linux。包含各種各樣的新特性、以及軟體更新與增強,比如面向身份認證管理的Kerberos HTTP代理、OpenJDK7中TLS連接的ECC支持、網路堆棧改進、以及Atomic包的更新等。
默認帳號:Username: root Password: centos
Ⅳ 學習樹莓派上編程的時候,需要哪些教程
樹莓派教程(持續更新)網路網盤免費資源在線學習
鏈接: https://pan..com/s/1PuxuAIN8dV37G5E2n33pCA
樹莓派教程(持續更新) 中谷教育-Python視頻教程(完整版)
游戲鏡像 微雪5寸顯示器config 樹莓派詳細資料 視頻教程 鏡像 Voice kit語音工具包鏡像 Etcher-Setup-1.4.4-x86鏡像燒錄工具.
exeaiyprojects-2018-04-13.img.xz 開啟SSH-raspbian-stretch.zip ubuntu-mate-16.04.2-desktop-armhf-raspberry-pi.img.xz StickyFingers-Kali-Pi-armhf-180923.img.xz recalboxOS-4.0.0-beta5.zip 2018-11-13-raspbian-stretch.zip
Ⅵ 如何將android linux燒到Raspberry Pi及其調試
一.Raspberry Pi入門向導。
可以在以下地址下載Raspberry向導
2.構建android framework
命令如下:
cd <your_android_path>
source build/envsetup.sh
lunch
顯示lunch菜單如下:
You』re building on Linux
Lunch menu… pick a combo:
1. full-eng
2. full_x86-eng
3. simulator
4. full_rpi-eng
5. cyanogen_generic-eng
6. cyanogen_rpi-eng
選擇第6個菜單。
然後進行編譯
make -j8
等待編譯成功,這可能需要幾十分鍾。
編譯成功之後將」system」目錄復制到root目錄下,接下來我們可能會用到。
命令如下:
cd <your_android_path>
cp -r system out/target/proct/rpi/root
ps:編譯時如果jdk版本不對,可將其改成jdk1.6
五.如何在Raspberry Pi上跑android linux內核?
1.准備一張存儲空間2G以上的SD卡及相應讀卡器。
2.下載arch linux鏡像文件
用wget工具下載鏡像文件:
wget http://files.velocix.com/c1410/images/archlinuxarm/archlinux-hf-2012-09-18/archlinux-hf-2012-09-18.zip
解壓:
unzip archlinux-hf-2012-09-18.zip
成功之後,你會在當前目錄下發現一個鏡像文件。
3.燒linux鏡像文件。
sudo dd bs=4M if=archlinux-hf-2012-09-18.img of=/dev/sdb
sudo sync
ps:/dev/sdb是SD卡在主機上的設備文件。不同的電腦可能不同。
4.用android linux內核代替這個內核。
做完上述步驟之後,當你把SD卡插在電腦上,你會發現有兩個分區:一個是引導區,另一個是文件系統區。
用android linux內核代替引導區的kernel.img。
cp -uv <your_android_linux_path>/arch/arm/boot/zImage <your_sdcard_boot_partition>/kernel.img
5.用android linux文件系統代替這個linux文件系統
rm -rf <your_sdcard_file_system_partition>
cp -r <your_android_source_code_path>/out/target/proct/rpi/root/* <your_sdcard_file_system_partition>
6.配置內核命令行cmdline.txt
Edit the <your_sdcard_boot_partition>/cmdling.txt, and replace 「init=/…」 with 「init=/init」
7.做完這些之後就可以在Raspberry Pi上跑這個android linux內核。
六.如何為Android linux做一張可引導的SD卡
1.刪除已有分區,如果沒有就不用刪了。
Command(m for help):p
Disk /dev/sdb: 15.7 GB, 15707668480 bytes
64 heads, 32 sectors/track, 14980 cylinders, total 30668085 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0×00000000
sudo fdisk/dev/sdb
Command(m for help):d
Partition number(1-4):1
Command(m for help):d
Selected partition 2
Command (m for help): p
Disk /dev/sdb: 15.7 GB, 15707668480 bytes
64 heads, 32 sectors/track, 14980 cylinders, total 30679040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0×00000000
Device Boot Start End Blocks Id System
Command(m for help):w
ps:確定刪除之後,卸掉SD卡,然後再裝上。
以bytes問單位記下SD卡的大小。後面的步驟會用到。
然後進入」Expert mode」。
Command(m for help):x
將這個SD卡設置為255個磁面,63個扇區和磁柱數量(不同的SD/mmc卡有著不同的此柱數量)
Expert command (m for help): h
Number of heads (1-256, default 64): 255
Expert command (m for help): s
Number of sectors (1-63, default 32): 63
ps:在下一步開始前,先要計算磁柱數量,計算過程如下:
B:SD卡以bytes為單位的大小(前面已經記住了即:15707668480)
C:磁柱的數量
C=B/255/63/512
例如:我的SD卡大小是16G(15707668480)
C=15707668480/255/63/512=1909.68191721,約等於1909.
Expert command (m for help): c
Number of cylinders (1-1048576, default 14980): 1909
Expert command (m for help): r
2.新建分區
如果你的SD卡已經分區,請按照上述步驟刪除分區。接下來,我們將創建兩個分區,一個是引導區,用來存放內核鏡像等文件;另一個文件系統區存放android linux文件系統。
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1):
Using default value 1
First sector (2048-30679039, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-30679039, default 30679039): +128M
Command (m for help): t
Selected partition 1
Hex code (type L to list codes): c
Changed system type of partition 1 to c (W95 FAT32 (LBA))
Command (m for help): a
Partition number (1-4): 1
Command (m for help): n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p
Partition number (1-4, default 2):
Using default value 2
First sector (264192-30679039, default 264192):
Using default value 264192
Last sector, +sectors or +size{K,M,G} (264192-30679039, default 30679039):
Using default value 30679039
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: If you have created or modified any DOS 6.x
partitions, please see the fdisk manual page for additional
information.
Syncing disks.
ok,分區成功,現在我們有兩個分區,接下我們對分區進行格式化。
3.格式化分區
對引導區進行格式化:
sudo mkfs.msdos -F 32 /dev/sdb1 -n BOOT
mkfs.msdos 3.0.12 (29 Oct 2011)
對文件系統區進行格式化:
sudo mkfs.ext3 /dev/sdb2 -L ROOTFS
mke2fs 1.42 (29-Nov-2011)
Filesystem label=ROOTFS
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
950976 inodes, 3801856 blocks
190092 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=3896508416
117 block groups
32768 blocks per group, 32768 fragments per group
8128 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
4.設置引導區
引導區必須包含以下文件,你可以從官方鏡像里獲取(bootable/fat32 partition)也可以從書面步驟中復制過來:
bootcode.bin:第二階段的引導程序,
loader.bin:第三階段的引導程序,
start.elf:GPU二進制固件映像,
kernel.img操作系統的內核鏡像文件,
cmdline.txt:傳遞給內核的參數.
5.設置root文件系統分區
ROOTFS分區包含android文件系統,是從<your_android_framework_path>/out/target/proct/rpi/root復制過來的。
cp -r <your_android_framework_path>/out/target/proct/rpi/root/* /media/ROOTFS/
6.完成上述步驟之後,將其放在Raspberry Pi上跑。
七.如何在Raspberry Pi使用adb?
1.查看網路
當android linux在Raspberry Pi運行時,切換到控制台,執行以下命令:
ifconfig eth0
記下ip地址。
如果不能找到ip,可以輸入以下命令:/system/xbin/dhcp-eth0,來啟動網路連接程序。
ps:如果屏幕沒有顯示控制台,只要按CTRL+ALT+F2即可切換到控制台。如果你想要切換到Android界面,只要按CTRL+ALT+F7即可。
2.遠程連接adb伺服器
在主機上執行以下命令即可與同一區域網的Raspberry Pi相連
adb connect ip
連接成功後,你就可以用adb工具輸出日誌,執行shell命令等。
3.也可以用數據線連接主機,直接在主機上調試。
進入調試的命令為:
screen /dev/ttyUSB0 115200
名詞解釋:
交叉編譯(cross compile):交叉編譯呢,簡單地說,就是在一個平台上生成另一個平台上的可執行代碼。這里需要注意的是所謂 平台,實際上包含兩個概念:體系結構(Architecture)、操作系統(Operating System)。同一個體系結構可以運行不同的操作系統;同樣,同一個操作系統也可以在不同的體系結構上運行。舉例來說,我們常說的x86 Linux平台實際上是Intel x86體系結構和Linux for x86操作系統的統稱;而x86 WinNT平台實際上是Intel x86體系結構和Windows NT for x86操作系統的簡稱。
Ⅶ 在鴻蒙(OHOS3.0)編譯框架中添加樹莓派4B
之前在樹莓派4b上點亮了OHOS3.0,不過內核是用tftp拉取的,根文件系統掛在了NFS上,拔了網線就無法啟動。當然這么操作只是為了方便調試,而最終需要的是一個可以燒錄到TF卡上的img鏡像文件。這就需要將所有調試好的內容添加到OHOS3.0的編譯框架,本以為是很簡單的事情,好傢伙,整了這么久,感覺添加編譯框架比移植本身更復雜。於是我整理了添加樹莓派單板到編譯框架的內容,希望對各位有所幫助,為大家避坑。
主要參考 hisilicon build組件倉,添加一個procts編譯組件,這個組件是在產品配置文件中指定的。比如
proctdefinecommonproctsRPI4B.json
其他部分參考Hi3516,但是其中2條,指定單板組件路徑,並添加組件。如果刪除這兩條,將不能編譯內核,只生成OHOS的文件系統。
接下來在device目錄下,新建一個raspberrypi編譯組件文件夾,並添加 ohos.build 文件。和前面產品配置文件中的設置對應起來了。
deviceraspberrypibuildohos.build
新建 deviceraspberrypibuildBUILD.gn 當然每個廠家不可能只有1個板子,如果有其他單板就在這里指定,比如樹莓派2B、3B等
既然前面指定了rpi4b的編譯配置組件,那麼就在 deviceraspberrypi 新建一個 rpi4b 的目錄,可以參考 hi3516dv300 build組件
deviceraspberrypirpi4bBUILD.gn
至此一個rpi4b build組件就添加到OHOS3.0的編譯框架了,之後相關內容添加到這個文件夾下就可以了。
接下來分析下目前移植了樹莓派4B的哪些內容,如何將這些內容編譯進OHOS3.0。
關於補丁可以參考 Patch組件,可以得知內核編譯由kernel.mk來執行
kernellinuxbuildkernel.mk
所以補丁文件需要放到正確的路徑下,以正確的名字命名就可以patch到內核。
hdf.patch補丁文件,現在還沒有移植HDF相關內容,所以可以先使用Hi3516的
rpi4b.patch補丁文件,使用樹莓派的官方鏡像,https://github.com/raspberrypi/linux
kernellinuxconfiglinux-5.10archarmconfigsrpi4b_standard_defconfig
內核配置文件目前已知的需要開啟下面內容,但是肯定不止這些,以後會繼續更新
Pi4的GPU是VideoCore VI支持OpenGL ES 3.2,而Pi3的GPU是VideoCore IV支持OpenGL ES 2.0。VideoCore IV 驅動程序是 VC4,VideoCore VI 驅動程序的 V3D。內核已經提供驅動,參考rpi4b_standard_defconfig將驅動直接編入到內核。
同時需要在config.txt中開啟設置
OHOS中修改weston的配置文件,指定顯示驅動
systemetcweston.ini
具體思路就是先查找設備號,根據設備號找到驅動程序。
前面內核配置的時候rpi4b_standard_defconfig中已經將觸摸驅動編入內核,所以後面不需要在init載入模塊了,修改下eudev的配置文件即可。
third_partyeudevrules.d ouchscreen.rules
正常情況下內核是由uboot進行引導的,而且OHOS默認生成uImage。但是樹莓派自帶BootLoader,雖然可以先用樹莓派自帶的BootLoader啟動uboot,再用uboot載入uImage,但是這樣會比較麻煩,而且會增加啟動時間。不過目前 zImage是寫死在kernel.mk中的,沒辦法改下編譯腳本把。
kernellinuxbuildkernel.mk 將 uImage 改為 zImage moles dtbs
kernellinuxbuildbuild_kernel.sh
kernellinuxbuildBUILD.gn
kernellinuxbuildkernel_mole_build.sh
這里內核編譯會依賴proct_path="vendor/$proct_company/$proct_name"下的hdf.hcs文件,得先新建一個應付下,不然會報下面這個錯誤。
ninja: error: '../../vendor/raspberrypi/RPI4B/hdf_config/uhdf/hdf.hcs', needed by 'gen/drivers/adapter/uhdf2/hcs/hdf_default.hcb', missing and no known rule to make it
新建:vendor/raspberrypi/RPI4B/hdf_config/uhdf/hdf.hcs
對於鏡像燒錄,Hi3516會將uImage、system.img、vendor.img等鏡像燒寫到emmc,但是樹莓派使用TF卡啟動,所以需要對TF卡進行分區,然後復制對應的內容到各個分區。首先製作樹莓派boot目錄,這個用來目錄存放樹莓派設備樹、config.txt、cmdline.txt、內核鏡像等信息。寫一個簡單的mkboot.py腳本來實現這個功能,位置在碼倉.py將會生成boot.img。
為了方便燒錄,需要將boot.img、system.img、updater.img、vendor.img、userdata.img合並成一個rpi4b.img。還是寫一個簡單的腳本來處理這個步驟.py。
不過有個問題,主分區只支持4個,所以updater.img暫時先不合並了,這個問題等以後再來處理。
最後將會得到一個rpi4b.img的鏡像文件,將這個文件燒錄到SD卡就可以了。
Linux:可以使用dd命令
windows:使用Win32 Disk Imager工具燒錄即可。
到這里總算是跑通了一個完整的添加新單板的流程,只不過目前只適配了顯示和觸摸。接下來打算嘗試HDF或者distributed部分。