ARM平台上移植Ubuntu14.04系统

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处理器。

 

第一步:下载、解压ubuntu core

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

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

下载ubuntu core rootfs,关于ubuntu core参考https://wiki.ubuntu.com/Core

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

ubuntu core下载网址:

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


mkdir ubuntucd ubuntu

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

sudo tar -xpfubuntu-base-14.04-core-armhf.tar.gz

  

第二步:安装qemu模拟器

sudo apt-get install qemu-user-static

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

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

 

第三步:配置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-srchttp://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 ether7e:8d:a5:3a:ce:9e

 

6)修过主机名

vi etc/hostname

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

 

 

第四步:启动模拟器,安装组件

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

chmod +x ch-mount.sh./ch-mount.sh -mubuntu/

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

useradd -s '/bin/bash' -m -G adm,sudodaluotuo

(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/

 

第五步:制作镜像

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


第六步:烧写镜像到DLT-RK3288开源硬件

你可能感兴趣的:(学习笔记)