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开源硬件