Re: [問題] 為什麼嵌入式系統不流行發行版

看板Linux作者 (文思)時間6年前 (2019/07/02 01:39), 6年前編輯推噓3(305)
留言8則, 5人參與, 6年前最新討論串3/3 (看更多)
※ 引述《icetofux ()》之銘言: : 首先謝謝大家的抽空回覆,由於目前平台架設的工作告一段落,接下來會把心思 : 放在應用程式的編寫,暫時可能不會再密集處理這部分的工作,加上過程中有找 : 到一些推文沒提到的方法,我想利用回文做個總結,一來幫助自己記憶,二來也 : 希望能幫上未來有這類需求的朋友。 : 目標:在嵌入式開發板建立作業系統,並像debian、ubuntu這類桌面發行版一樣 : 帶有基本工具及套件管理器。 : 作法: : A.建立基本作業系統,依照易到難應該可以分為下列幾種方式: : 1.尋找硬體供應商有沒有提供基本開機映像檔或SD card。 : 2.尋找硬體供應商有沒有提供平台Yocto環境建置教學。 : 3.尋找硬體供應商有沒有提供Linux核心編譯教學。 : 若都沒有可以Yocto為關鍵字搜尋看看。 : 這部分只求能開機連上網,其餘都不要求。 原文推文都沒人提到 Armbian? 算是有支援不少開發版了。 至於為什麼 distro 不太有支援單板電腦,主要是因為每個板子都需要不同的參數 做電源晶片、記憶體、時脈等等的初始化,等於是每張板子都要做一個映像檔。 加上要有人自願去包裝套件跟測試,有人附議審查,都測試穩定了才會發生。 一般 distro 還是偏重 x86 環境的。 然後各大 distro 也不是說沒有 armhf 或 arm64,只是就沒有安裝映像檔而已。 就是要自己搞一下系統核心,開機程式,自行安裝 (debootstrap 之類的) : B.開機後先試著連上網路,接著以debootstrap建立一個新的根目錄,詳細可以 : 參考這篇,寫得非常詳盡: : https://www.linuxquestions.org/questions/debian-26/ : how-to-install-debian-using-debootstrap-4175465295/ : (抱歉我不會縮網址,請自己連接吧。) : C.以chroot切換到上一步驟建立的根目錄,基本上debian能用的套件都可以用 : apt install進行安裝,用起來跟PC上或是raspberry上感覺差不多,至此應 : 該算達成目標了。 : 備註:由於我目前的系統只能以板子上的eMMC開機,所以我還沒找到把 : debootstrap建立出的根目錄替換掉原本根目錄的方法,但我發現使用chroot後 : 安裝的ssh server、apache server都可以正常在同網域下的其他電腦看到,所 : 以暫時就先忽略這個問題。 進階做法: 開個 tmpfs 建個暫時的 root, 把 root 切過去 (用 pivot_root), 然後把原本的 root 清掉重新 debootstrap 。 看要不要用 cdebootstrap-static, tmpfs 需要額外裝的東西少些。 https://unix.stackexchange.com/questions/226872/how-to-shrink-root-filesystem-without-booting-a-livecd/227318#227318 https://github.com/marcan/takeover.sh 然後都說是進階做法了,失敗了不要找我... : 我對linux技術或術語方面並不熟悉,所以如果有用詞錯誤或觀念錯誤的部分,還 : 請指教。 : ※ 引述《icetofux ()》之銘言: : : 我使用Linux的時間約一年,大部分也都操作在桌面環境下,這問題可能有點可 : : 笑,但還請各位先進解惑。 : : 最近因為工作需要開始接觸類似Raspberry Pi的ARM處理器單板電腦,由於廠商 : : 沒有提供作業系統,所以我按著網路教學用Yocto建立作業系統,花了3天總算 : : 能開機了。 : : 在嘗試的過程中我一直在想,除了Raspberry Pi有提供Raspbian這套類似 : : Debian的發行版,其他大部分賣類似產品的公司大多要求使用者用Yocto去建立 : : 自己的環境,甚至還有從原始碼下載開始交叉編譯的。 : : 為什麼在這個領域不流行發行版,讓使用者可以透過apt這類的套件管理器直接 : : 安裝自己喜歡的套件呢?是有什麼技術上的困難嗎? : : 謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.30.76 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1562002770.A.73E.html ※ 編輯: wens (140.112.30.76 臺灣), 07/02/2019 01:40:43

07/02 01:45, 6年前 , 1F

07/02 01:45, 6年前 , 2F
又找到一個單純切到 tmpfs root 的教學
07/02 01:45, 2F

07/02 02:02, 6年前 , 3F
推薦文章與跪著看文章。
07/02 02:02, 3F

07/02 02:49, 6年前 , 4F
灌在 Rock64 上覺得滿好用的
07/02 02:49, 4F

07/02 08:05, 6年前 , 5F
非常感謝,我今天會研究看看Armbisn跟您提到的方法。
07/02 08:05, 5F

07/02 11:40, 6年前 , 6F
我的 rock64 只有 bootloader 是 Armbian 的 XDD
07/02 11:40, 6F

07/02 12:55, 6年前 , 7F
oh,RK平台問題就是Armbian尺寸太大而且缺乏編譯調整
07/02 12:55, 7F

07/03 15:30, 6年前 , 8F
尺寸太大? O.o
07/03 15:30, 8F
文章代碼(AID): #1T6aLIS- (Linux)
文章代碼(AID): #1T6aLIS- (Linux)