ubuntu移植到嵌入式平台

Ubuntu一个以桌面应用为主的开源GNU/Linux操作系统。

Ubuntu 用在PC的Intel框架,我们比较熟悉,。Ubuntu 在ARM平台下运行,可能比较陌生。以下我们介绍Ubuntu 14.04 到DLT-RK3288 ARM平台上。

使用到的硬件平台:DLT-RK3288

补充说明:

虽然DLT-RK3288是基于4核32Bits Cortex-A17架构的CPU,该方法构建的时候采用了向下兼容的32Bits的ARMV7架构。因此,该方法适用于Cortex-A7/A9/A15/A17/A12架构的ARM处理器。

 

1、下载、解压ubuntu core

ubuntu core是最小Ubuntu核心。在此核心基础上制作出来的Ubuntu镜像只有70多M,非常适合嵌入式系统。

在Ubuntu core基础上,还可以根据需要添加各种Ubuntu组件,比如桌面或服务环境。下载并解压:

 

mkdir ubuntucd ubuntu

wget http://cdimage.ubuntu.com/ubuntu ... 4-core-armhf.tar.gz

sudo tar -xpf ubuntu-base-14.04-core-armhf.tar.gz

 

Ubuntu官方提供了不同版本的ubuntu core,可以根据需要下载、移植。

ubuntu core下载网址:

http://cdimage.ubuntu.com/ubuntu-base/releases/

 

2、安装qemu模拟器

sudo apt-get install qemu-user-static

qemu模拟器非常强大,主要作用是:在PC的Ubuntu上运行待移植的ubuntu。

在模拟器上,运行的ubuntu系统,可以根据需要打包不同组件到目标ubuntu。

 

3、配置Ubuntu

1)拷贝qemu-arm-static 到ubuntu core的usr/bin/

sudo cp /usr/bin/qemu-arm-static usr/bin/

 

2)拷贝主机的resolv.conf 到ubuntu core的etc/

sudo cp -b /etc/resolv.conf  etc/resolv.conf

 

3)修改目标ubuntu的下载软件源

sudo vi etc/apt/sources.list

加入如下两行内容,保存后退出:

deb http://ports.ubuntu.com/ubuntu-ports/ xenial main universe

deb-src http://ports.ubuntu.com/ubuntu-ports/ xenial main universe

 

4)配置串口调试服务

sudo cp etc/init/tty1.conf  etc/init/ttyS2.conf

sudo vi etc/init/ttyS2.conf

修过 sudo vi etc/rc.local  加上start ttyS2

 

5)以太网配置

sudo vi etc/network/interfaces

添加:

auto eth0                                  

iface eth0 inet dhcp hwaddress ether 7e:8d:a5:3a:ce:9e

 

6)修过主机名

vi etc/hostname

已经对ubuntu根文件系统做了简单的配置,现在可以用模拟器切换到此根文件系统了。

 

 

4、启动模拟器,安装组件

(1)、用附件中的ch-mount.sh脚本,拷贝到前面的创建ubuntu的上级目录。

chmod +x ch-mount.sh./ch-mount.sh -m ubuntu/

-m 创建home目录 (不加这个要手动添加目录,不然开机时,会出现No directory,Logging in with HOME=/ )

useradd -s '/bin/bash' -m -G adm,sudo daluotuo

(2)、修过密码

passwd daluotuo

(3)、安装常用工具

apt-get install vim git openssh-server

apt-get install sudo                    sudo命令

apt-get install net-tools               ifconfig,netstat,route,arp等

apt-get install iputils-ping            ping和ping6       

apt-get install wireless-tools          iwconfig等,显示、修改无线设置

 

apt-get install htop                    htop工具,交互式进程查看器

apt-get install rsyslog                 系统log服务

apt-get install network-manager         Network Manager服务和框架,高级网络管理50M

apt-get install ifupdown                ifup,ifdown等工具

apt-get install ethtool                 ethtool命令,显示、修改以太网设置       

 

可以根据需要,安装各种组件。

 

(4)、退出chroot

         用exit 命令,退出chroot

(5)、用脚本载缷载退出根文件系统

./ch-mount.sh -u ubuntu/

 

4、制作镜像

1)、用dd工具创建镜像文件:

dd if=/dev/zero of=ubuntu.img  bs=1M count=1000

 

2)、格式化镜像文件,并加入linuxroot卷标:

sudo mkfs.ext4 -F -L linuxroot ubuntu.img

 

3)、拷贝文件系统到 镜像文件

mkdir ubuntu-mount

sudo mount  ubuntu.img ubuntu-mount

sudo cp -rfp ubuntu/* ubuntu-mount

 

4)、 缷载镜像:

sudo umount ubuntu-mount

 

5)、检查镜像

sudo e2fsck -p -f ubuntu.img

 

6)、减少镜像大小

sudo resize2fs -M ubuntu.img

du -sh ubuntu.img

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值