Re: [问题] 为什么嵌入式系统不流行发行版

楼主: wens (文思)   2019-07-02 01:39:28
※ 引述《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这类的套件管理器直接
: : 安装自己喜欢的套件呢?是有什么技术上的困难吗?
: : 谢谢。
楼主: wens (文思)   2019-07-02 01:45:00
https://lord.re/en/posts/58-pivot_root-unmount-son-root/又找到一个单纯切到 tmpfs root 的教学
作者: Debian (Debian)   2019-07-02 02:02:00
推荐文章与跪着看文章。
作者: holishing   2019-07-02 02:49:00
灌在 Rock64 上觉得满好用的
作者: icetofux   2019-07-02 08:05:00
非常感谢,我今天会研究看看Armbisn跟您提到的方法。
楼主: wens (文思)   2019-07-02 11:40:00
我的 rock64 只有 bootloader 是 Armbian 的 XDD
作者: hizuki (ayaka)   2019-07-02 12:55:00
oh,RK平台问题就是Armbian尺寸太大而且缺乏编译调整
楼主: wens (文思)   2019-07-03 15:30:00
尺寸太大? O.o

Links booklink

Contact Us: admin [ a t ] ucptt.com