Longan只有bootloader,kernel,自己适配rootfs比如debian,Ubuntu什么的,tina是完整的带有rootfs,而且是精简版本的rootfs。
注意:这个官方SDK系统编译出来的根文件系统是只读的,建议更改为ext4读写系统。
------run profile file-----
_____ _ __ _
|_ _||_| ___ _ _ | | |_| ___ _ _ _ _
| | _ | || | | |__ | || || | ||_'_|
| | | || | || _ | |_____||_||_|_||___||_,_|
|_| |_||_|_||_|_| Tina is Based on OpenWrt!
----------------------------------------------
Tina Linux (Neptune, 5C1C9C53)
----------------------------------------------
| 命令 | 命令有效目录 | 作用 |
|---|---|---|
| make | tina根目录 | 编译整个sdk |
| make menuconfig | tina根目录 | 启动软件包配置界面 |
| make kernel_menuconfig | tina根目录 | 启动内核配置界面 |
liefyuan@ubuntu:~/Liefyuan/Tina-Linux/Tina-Linux$ tree -L 1
.
├── build
├── config
├── Config.in
├── device
├── dl
├── lichee
├── logs
├── Makefile
├── out
├── package
├── prebuilt
├── README.md
├── rules.mk
├── scripts
├── target
├── tmp
├── toolchain
└── tools
build 目录存放 Tina Linux 的构建系统文件,此目录结构下主要是一系列基于 Makefile 规格编写的 mk 文件。主要的功能是:
主要存放 Tina Linux 中配置菜单的界面以及一些固定的配置项,该配置菜单基于内核的 mconf 规格书写。
lichee 目录主要存放 uboot 和内核代码。
package 目录存放 target 机器上的软件包源码和编译规则,目录按照目标软件包的功能进行分类。
prebuild 目录存放预编译交叉编译器,目录结构如下。
scripts 目录用于存放 pc 端或小机端使用的一些脚本。
target 目录用于存放目标板相关的配置以及 sdk 和 toolchain 生成的规格。
toolchain 目录包含交叉工具链构建配置、规则
tools 目录用于存放 host 端工具的编译规则。
下面有两个目录:host目录和开发板/方案目录
其中 host 目录用于存放 host 端的工具以及一些开发相关的文件。
我使用的是mangopi的T113 MQ-R开发板所以是 t113-mq_r目录
其他的文件介绍:
分区文件在:device/config/chips/t113/configs/mq_r/sys_partition.fex
[partition]
name = rootfs
size = 61440
downloadfile = "rootfs.fex"
user_type = 0x8000
原文件:
;---------------------------------------------------------------------------------------------------
; 说明: 脚本中的字符串区分大小写,用户可以修改"="后面的数值,但是不要修改前面的字符串
;---------------------------------------------------------------------------------------------------
;---------------------------------------------------------------------------------------------------
; 固件下载参数配置
;---------------------------------------------------------------------------------------------------
;***************************************************************************************************
; mbr的大小, 以Kbyte为单位
;***************************************************************************************************
[mbr]
size = 16384
;***************************************************************************************************
; 分区配置
;
;
; partition 定义范例:
; [partition] ; //表示是一个分区
; name = USERFS2 ; //分区名称
; size = 16384 ; //分区大小 单位: 扇区.分区表示个数最多2^31 * 512 = 2T
; downloadfile = "123.fex" ; //下载文件的路径和名称,可以使用相对路径,相对是指相对于image.cfg文件所在分区。也可以使用绝对路径
; keydata = 1 ; //私有数据分区,重新量产数据将不丢失
; encrypt = 1 ; //采用加密方式烧录,将提供数据加密,但损失烧录速度
; user_type = ? ; //私有用法
; verify = 1 ; //要求量产完成后校验是否正确
;
; 注:1、name唯一, 不允许同名
; 2、name最大12个字符
; 3、size = 0, 将创建一个无大小的空分区
; 4、align to logical block size(504 sectors), leb size = 2*(1 nand phy block size - 1 phy page size)
;***************************************************************************************************
[partition_start]
[partition]
name = boot-resource
size = 504
downloadfile = "boot-resource.fex"
user_type = 0x8000
[partition]
name = env
size = 504
downloadfile = "env.fex"
user_type = 0x8000
[partition]
name = env-redund
size = 504
downloadfile = "env.fex"
user_type = 0x8000
[partition]
name = boot
size = 8064
downloadfile = "boot.fex"
user_type = 0x8000
[partition]
name = rootfs
size = 61440
downloadfile = "rootfs.fex"
user_type = 0x8000
;[partition]
; name = dsp0
; size = 2048
; downloadfile = "dsp0.fex"
; user_type = 0x8000
;[partition]
; name = recovery
; size = 16128
; ;downloadfile = "recovery.fex"
; user_type = 0x8000
[partition]
name = private
size = 10240
user_type = 0x8000
[partition]
name = rootfs_data
size = 50400
user_type = 0x8000
[partition]
name = UDISK
user_type = 0x8100
SD卡上的分区,说实话有点多!

| 分区 | 功能 |
|---|---|
| boot分区 | 存内核镜像 |
| rootfs分区 | 基础系统镜像分区,包含 (/lib,/bin,/etc 等) |
| recovery分区 | 存放恢复系统镜像 [仅大容量方案有] |
| 分区 | 功能 |
|---|---|
| private分区 | 存储SN号分区 |
| misc分区 | 系统状态、刷机状态分区 |
| UDISK分区 | 用户数据分区 |
| overlayfs分区 | 存储overlayfs覆盖数据 |
开发板上查看了一下:真牛皮!
root@TinaLinux:/dev/by-name# ls
UDISK boot-resource env-redund rootfs
boot env private rootfs_data
root@TinaLinux:/mnt# ls
SDCARD UDISK app exUDISK
| 分区 | 挂载点 | 备注 |
|---|---|---|
| /dev/by-name/boot | /boot | |
| /dev/by-name/boot-res | /boot-res | |
| /dev/by-name/UDISK | /mnt/UDISK | 用户数据分区 |
| /dev/by-name/boot | /mnt/SDCARD | TF卡挂载点 |
| /dev/by-name/boot | /overlay | 存储overlayfs覆盖数据 |