Ubuntu for Arm根文件系统制作

合集下载

UbuntuARM更改为国内源

UbuntuARM更改为国内源

UbuntuARM更改为国内源关键词:ubuntu arm ubuntu-ports 国内源镜像阿⾥源 apt apt-get install update 0%working 速度慢 rk3399 开发板写在前⾯这⼏次写博客客都是有很⼤的戾⽓!算了,认真做事,认真记录吧。

要乐观⼀点少年。

arm ubuntu开发板的apt的库和普通ubuntu的库是不⼀样的,arm的是ubuntu-ports库。

百度也是垃圾,搜半天也搜不到⼀个说阿⾥源的ubuntu-ports的设置⽅法。

之前⽤USTC中科⼤的ubuntu-ports,不知道咋回事,apt-get update后⼀直卡在0%working,晕。

简单来说,就是你要换⼀个源了,我不知道是这个源有问题,还是我开发板有问题,还是线路有问题。

其实你发现,很多镜像⽹站,都只有ubuntu源的设置说明,没有ubuntu-ports的设置说明。

只有USTC都有,然⽽我⽤不了。

正⽂⾥⾯有ubuntu源的设置说明以ubuntu16.04为例:ubuntu 16.04 配置如下ubuntu 16.04 配置如下deb /ubuntu/ xenial maindeb-src /ubuntu/ xenial maindeb /ubuntu/ xenial-updates maindeb-src /ubuntu/ xenial-updates maindeb /ubuntu/ xenial universedeb-src /ubuntu/ xenial universedeb /ubuntu/ xenial-updates universedeb-src /ubuntu/ xenial-updates universedeb /ubuntu/ xenial-security maindeb-src /ubuntu/ xenial-security maindeb /ubuntu/ xenial-security universedeb-src /ubuntu/ xenial-security universe所以只要将ubuntu改成ubuntu-ports即可,这是我观察USTC的设置说明总结的,已经在我的板⼦上实验成功。

armbian 分区格式

armbian 分区格式

armbian 分区格式
Armbian是一种基于Debian或Ubuntu的操作系统,专门设计用于ARM架构的单板计算机,如树莓派和橙派。

在Armbian上,分区格式一般遵循标准的Linux分区格式,通常采用的是ext4文件系统。

在Armbian中,通常会有一个根分区(/),一个引导分区(/boot)以及可能的其他分区,如交换分区(swap)或数据分区。

这些分区的格式一般是ext4,这是一种成熟稳定的Linux文件系统格式,提供了良好的性能和稳定性。

除了ext4之外,有时候也会使用其他文件系统格式,比如FAT32格式的引导分区,用于存放启动所需的文件。

但总体来说,大多数Armbian系统都会采用ext4作为默认的分区格式。

需要注意的是,分区格式的选择应当考虑到系统的需求以及硬件的兼容性,不同的文件系统格式有着不同的特点和适用场景,因此在选择分区格式时需要权衡各方面的因素。

在安装Armbian系统时,一般会有默认的分区格式设置,用户可以根据实际需求进行调整。

总的来说,Armbian系统的分区格式一般采用ext4作为主要的文件系统格式,同时也可能会包括其他格式的分区,以满足系统的特定需求。

Ubuntu下构建内核源码树的方法

Ubuntu下构建内核源码树的方法

Ubuntu 下构建内核源码树网上好多文章,他大爷的都是转来转去,每一篇中用的。

索性还是自己整理一篇吧。

网上牛人多,但是小白问题更多,更何况咱们这号不入门的,因为最近学内核,要写模块,模块要在源码树下编译安装,又习惯了Ubuntu的OS,不忍转向他方,还是好好摆置摆置它吧,找的几篇文章不怎么好用,下边开始吧。

PS:当前系统是上一篇配置SSH博文里Jun从Ubuntu9.04更新到Ubuntu 10.04的系统。

这个网上都这么装,就这样来吧。

1.安装编译内核所需要的软件build-essential、autoconf、automake、cvs、subversion$ sudo apt-get install build-essential kernel-package libncurses5-devlibncurses5这个软件包在使用menuconfig配置内核的时候会用到。

2.进入/usr/src ,在这里构建源码树,我们用下面指令查看可用的源码包:$ sudo apt-cache search linux-source我的提示是:linux-source - Linux kernel source with Ubuntu patcheslinux-source-2.6.32 - Linux kernel source for version 2.6.32 with Ubuntu patches3.那么就让我们来下载2.6.32版的kernel,通过下边命令:$ sudo apt-get install linux-source-2.6.32等待下载完成。

4.下载完成后,我们进入/usr/src ,默认会在这里,看看他的目录结构:(ls 一下)我的显示可以看到有两对儿Linux-header-2.6.* 的目录,你的应该是只有一对儿,之所以这样是以为我的是从9.04更新到10.4,Ubuntu会保留历史版本,不用管它,记住,这里linux-headers-2.6.32-34-generic 、linux-headers-2.6.32-34、linux-source-2.6.32.tar.bz2 ,这才是我们用到的。

ramdisk根文件系统制作

ramdisk根文件系统制作

制作根文件系统有两种方法1、利用开发板提供的映像文件制作ramdisk2、利用busybox制作根文件系统(制作过程复杂)采用第一种方法制作需要的ramdisk1、拷贝已有的uramdisk.image.gz 到新建的tmp/下,cp uramdisk.image.gz tmp/2、去掉mkimage生成的64 bytes 的文件头,生成新的ramdisk.image.gz$ dd if=uramdisk.image.gz of=ramdisk.image.gz bs=64 skip=13、 gunzip解压ramdisk.image.gz 生成ramdisk.image$ gunzip ramdisk.image.gz4、新建挂载目录“ramdisk”,并将ramdisk.image挂载$ sudo mount -o loop,rwramdisk.imageramdisk5、接下来,只需要将ramdisk目录下的内容全部拷贝到rootfs下即可cp -R ramdisk /* rootfs这样就有了自己的rootfs,省去利用busybox制作的麻烦了有了制作好的rootfs,下面就开始制作映像文件了1、创建镜像文件ramdisk8M.image,并设置大小为8M,文件系统格式为ext2$dd if=/dev/zero of=ramdisk8M.image bs=1024 count=8192$mke2fs -F ramdisk8M.image -L "ramdisk" -b 1024 -m 0$tune2fs ramdisk8M.image -i 0$chmod 777 ramdisk8M.image大小可以按照需要自己调整,但是最好不要超过32M,创建ramdisk目录,将ramdisk8M.image 挂载到该目录下$mkdirramdisk$mount -o loop ramdisk8M.image ramdisk/接下来,只需要将rootfs目录下的内容全部拷贝到ramdisk下即可$cp -R rootfs/* ramdisk注意,这里cp的参数一定是R而非r。

制作ubi文件系统

制作ubi文件系统

制作ubi文件系统目录开发环境 (1)Ubi文件系统简介 (1)UBI文件系统前期准备 (2)内核配置 (2)开发板UBIFS工具(flash_eraseall、ubiattach、ubimkvol) (2)主机mtd-utils工具(mkfs.ubifs、ubinize) (4)编译问题 (4)制作ubi文件系统镜像 (5)生成ubifs格式的镜像文件 (5)实际可用的ubi格式镜像 (5)注意事项 (6)文件系统上烧写 (6)通过NFS挂载方式 (6)设置启动参数 (6)将一个分区挂载为ubifs (7)文件系统读写速度测试 (7)ubifs常见指令 (7)开发环境开发环境:vmware+ubuntu10.04开发目录:/home/lisongqing/armLinux源码包:busybox-1.19.2.tar.bz2、linux-3.0.4.tar.bz2交叉编译工具:arm-linux-gcc-4.4.3-20100728.tar.gzUbi文件系统简介由IBM、nokia工程师Thomas Gleixner,Artem Bityutskiy等人于2006年发起,致力于开发性能卓越、扩展性高的FLASH专用文件系统,以解决当前嵌入式环境下以FLASH作为MTD 设备使用时的技术瓶颈(JFFS2、YAFFS2等专用文件系统也存在着一些技术瓶颈,如:内存消耗大,对FLASH容量、文件系统大小、内容、访问模式等的线性依赖,损益均衡能力差或过渡损益等)。

UBI:类似于LVM的逻辑卷管理层,主要实现损益均衡,逻辑擦除块、卷管理,坏块管理等UBIFS:基于UBI的FLASH日志文件系统有关ubifs的详细介绍,请参考:/doc/ubi.html/doc/ubifs.htmlUBI文件系统前期准备内核配置1)Device Drivers --->Memory Technology Device (MTD) support --->enable UBI - Unsorted block images2)File systems --->Miscellaneous filesystems --->UBIFS file system support如果不配置此处,nfs挂载时会出现如下错误:ubiupdatevol: error!: UBI device name was not specified (use -h for help)Kernel panic - not syncing: Attempted to kill init!开发板UBIFS工具(flash_eraseall、ubiattach、ubimkvol)mtd-utils工具中提供了对UBIFS的支持,所以我们需要下载和编译这些工具,下载以下几个文件。

Ubuntu下编译ARM平台QtEmbedded的MySQL和MySQL插件

Ubuntu下编译ARM平台QtEmbedded的MySQL和MySQL插件

(原创)Ubuntu下编译ARM平台QtEmbedded的MySQL和MySQL插件需要引用的同学请注明文章出处,谢谢最近需要将一个程序移植到arm平台上,程序调用了MySQL数据库,所以就牵扯到将MySQL数据库移植到ARM平台上面,所以在网上大量查阅资料。

在baidu文库发现了一篇文档,是wlzxlc上传的文档名称为:《编译ARM平台的QtEmbedded的MySQL 插件和移植MySQL》。

下面说明里面介绍到:ARM平台下的QtEmbedded所需mysql插件,及MySQL的移植。

我的整个移植过程参考了这篇文档,但是遇到了很多的问题,所以又上网搜寻其它资料。

现在我已经移植成功,回头看这篇文档,就发现里面有很多疏漏甚至是错误。

这些东西如果不详细注明出来,更多的新手绝对还会重蹈我的覆辙,所以在这里将mysql 的arm+linux移植经验贴出来,希望对新手以及做相关方面工作的人能有帮助。

所有在《编译ARM平台的QtEmbedded的MySQL插件和移植MySQL》这篇文档中的错误以及注意事项,我也会一一列出,在下面我将其称为“原文”。

编译器:arm-linux-gcc(4.3.2)Pc平台:ubuntu在移植之前有必要先说明一下几个问题:1.MySQL还没有支持交叉编译的版本出现.但为了让编译继续,必须在configure脚本中将多处不支持交叉编译的命令全都注释掉,才能让configure顺利通过。

2.交叉编译过程中需要用到ncurses-5.6下的libncurses.a库,而这个库文件也必须是arm 平台下的,所以我们在交叉编译MySQL时需要先自己手动交叉编译libncurses.a的库。

(原文是说需要libncurses.so.5文件,这里我查阅很多资料发现,应该是libncurses.a)3.编译过程中需要运行gen_lex_hash,但这个命令是arm格式的在pc机上运行不起来,解决方法是要编译好一个在pc上运行的mysql,从相应的目录下拷出gen_lex_hash覆盖相应目录下的这个arm格式的gen_lex_hash (这里要注意的是这个pc机上运行的mysql编译路径要和现在这个arm上运行的mysql路径完全相同,否则后面同样的问题中执行命令时涉及到路径问题,解决办法是先把现在编译的arm平台的mysql目录改为其他名称,再解一个mysql包改名为mysql将其编译成pc上运行的版本,只要简单的用./configure |make就行了,再把pc版本的mysql改为mysql-pc,将原来的那个名称改回mysql即可(貌似有点晕乎)。

基于VirtualBox虚拟机-Ubuntu操作系统的ARM嵌入式平台搭建

基于VirtualBox虚拟机-Ubuntu操作系统的ARM嵌入式平台搭建

基于VirtualBox虚拟机-Ubuntu操作系统的ARM嵌入式平台搭建花费了两台的时间,终于把这个开发平台搭建完毕了。

现在做一下总结,以后当作笔记试用。

平台主要包括PC机、VirtualBox虚拟机、ARM开发板三个主要部分,其中PC机和开发板有同一个路由器接入网,是它们在同一个网段内,不但可以实现PC机、虚拟机、开发板的三方互通,而且能够边开发边访问互联网。

前提:你要知道自己开发板的IP地址。

下面根据搭建顺序进行分析。

一、PC机下安装虚拟机PC机安装虚拟机的过程很简单,我是在windows xp系统下实现的,如果你的系统是windows 7的话,该文档仅作参考。

首先下载最新版本的VirtualBox虚拟机,这款虚拟机的特点是操作界面简单方便,占用内存少,网络接入设置简单。

下载后会见到如下安装图标:现在最新版本的应该是4.2.4的,但是如果你下载的不是最新版本,可以在帮助菜单栏里面进行检查更新升级软件。

点击上面图标,会进入安装向导:welcome to the oracle vm virtualbox *.*.* setup wizard,然后点击next,选中I accept···这一项(不选中next会是灰色的),然后点击next进入下一个设置页面。

点击browse,会出来一个让你选择安装路径的对话框,根据你的情况选择好后点击ok,然后再点击next进入下一个设置页面。

该页面默认选择了在桌面创建快捷方式和快速启动栏创建图标,如果希望这样就勾选上,然后点击next就开始安装了。

安装的过程比较长,因为虚拟机会自己配置本地网络,所以请耐心等待。

安装好后,本地桌面上会出现Vbox软件的快捷方式,同时你右击网上邻居,点击属性,会发多出一个网络连接的表示,这个就是虚拟机自己设定的虚拟网卡(默认情况下Vbox的接入网络采用NAT方式,及地址转换方式,意思就是本地网卡相当于路由器,虚拟网卡通过它接入因特网)。

zynq_ubuntu桌面系统的建立

zynq_ubuntu桌面系统的建立

UbuntuontheZynq™-7000SoCFeaturingthe Avnet ZedBoard 这个指南提供了一种集合几个不同的技术在一个平台的方法,使用Avnet ZedBoard,我们拥有800Mhz ARM-9 Cortex 32位双核处理芯片,联合Xilinx FPGA 无与伦比的灵活性实施自定义用户系统。

我们使用一个Linux内核作为基础操作系统在处理器内核运行,同时添加一个全性能的桌面架构Ubuntu,在根文件系统中控制。

这个桌面允许ZedBoard像个人计算机一样工作,使用USB接口的键盘和鼠标,和一个HDMI接口的显示器。

实验1:FPGA硬件平台1,在网站:/resources/fpga/xilinx/kc705/adv7511下找到cf_adv7511_zed_edk_14_4_2013_02_05.tar.gz链接,下载得到HDL Reference Design,解压并将cf_adv7511_zed和cf_lib拷贝到目录L:\ubuntu_linux下。

2,打开cf_adv7511_zed文件下的system.xmp文件3,在XPS下,点击Generate BitStream产生syste.bit文件,将在Zynq_Ubuntu\cf_adv7511_zed\implementation\system.bit4,在xps下,点击左边的SDK Export Design 图标,勾选上include bitstream and BMM files,点击Export and Launch SDK按钮。

选择工作区间为l:\ubuntu_linux\ f_adv7511_zed\SDK\SDK_Workspace,ok5,在SDK下,新建一个应用工程zynq_fsbl_0选择Zynq FSBL ,finish。

将在Zynq_Ubuntu\cf_adv7511_zed\SDK\SDK_Workspace\zynq_fsbl_ 0\Debug\zynq_fsbl_0.elf6,在zynq_ubuntu目录下新建一个文件夹bootfile,将system.bit文件和zynq_fsbl_0.elf文件都复制到bootfile文件夹下。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.安装rootstock软件
rootstock是一个用来制作Ubuntu根文件系统的工具,可以使用apt-get install rootstock获取,也可以在官网直接下载:https:///project-rootstock
若选择前者:直接使用rootstock命令
若选择后者:解压下载文件rootstock-0.1.99.4.tar.gz得到rootstock可执行文件,可以将其拷贝到系统bin目录下
2.rootstock创建根文件系统
[html]view plaincopy
得到文件系统压缩文件qemu-armel-201408271515.tar.gz
创建一个空镜像:
[html]view plaincopy
在镜像上创建文件系统:
[html]view plaincopy
挂载镜像:
[html]view plaincopy
将文件系统解压到挂载目录:
[html]view plaincopy
这时可以修改挂载目录中的东西了:
[html]view plaincopy
最后是得到最后的文件系统镜像:
[html]view plaincopy
3.模拟器中运行根文件系统
下载模拟器qemu:
[html]view plaincopy
在2中的“若干修改”中执行:
[cpp]view plaincopy
在仿真环境中访问文件系统
[cpp]view plaincopy
此时在仿真环境下就可以安装SPICE了:[cpp]view plaincopy
安装完SPICE后保存文件系统:
[cpp]view plaincopy。

相关文档
最新文档