本文重点在于CubieBoard开发板系统的初始化安装,并且不用ttl和hdmi线,开机就可以远程ssh进系统。本文适合没有配线的同学参考操作。事实上,无论有没有ttl线,按照本文的方法安装效率都是一样的。
##需求条件
本地环境:Linux (我的是ubuntu11.04)
一个CubieBoard开发板
一个sd卡的读卡器
一个4G的SD卡
一个你已经确定好要安装的系统img文件,不是uboot而是完整的系统!
我选的安装包Linaro/Ubuntu custom server images的下载位置:
http://dl.miniand.com/toby_corkindale/cubie-server-t4.7z
参考了:https://www.miniand.com/forums/forums/development--5/topics/linaro-ubuntu-custom-server-images-armhf
将SD卡插入usb读卡器并插入到本地电脑,执行fdisk -l 找到自己的sd卡。
我的是/dev/sdb1
##写img文件到SD卡
dd if=disk.img of=/dev/sdb1 conv=fsync //一定要仔细核实设备名称无误后再格式化。
等待写入完毕。
win下可使用win32diskimager工具写入。
至此Linaro/Ubuntu系统算是初始化完成了。如果你有ttl跳线,你现在就可以将sd卡取出置于cuibeboard中启动了。具体可以参考胭脂熊的BLOG,http://blog.newhi.net/?post=31 中有详细说明。
继续本文的话题,看如何不用ttl和hdmi线的。
在系统初始化完毕后,把读卡器先卸载然后再重新挂上,或者干脆重新插拔一次,这时系统会自动弹出打开文件夹。或者你可以手工点击桌面上的“我的文件夹”,找到/media/cuberoot.你会发现这里原来是sd卡上的系统根目录。还有一个“67M文件系统”,这个是sd卡上的boot分区。
你应该已经很清楚接下来要做的事情了。
0) 写入完毕后的第一件事,fsck.ext4 /dev/cuberoot //df或者写入img后最好先fsck一下。
1) vi /media/cuberoot/etc/network/interfaces
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
# The network interface
auto eth0
iface eth0 inet static
address 192.x.x.x
gateway 192.x.x.1
netmask 255.255.255.0
2) 关闭即将不停狂闪的绿灯。个人感觉这个绿灯有点闹腾,你也可以不关它。
vi /tec/rc.local
echo 0 > "/sys/class/leds/ph20:green:led1/brightness" //添加这行
//关于配置led灯的说明可参考http://linux-sunxi.org/Cubieboard/Programming/StatusLEDs
3) 添加开机自动修改密码的脚本
vi /tec/rc.local
在exit前加入如下两行
echo "root:yourpassword" |/usr/sbin/chpasswd
/usr/sbin/pwconv
4)添加环境变量到root
echo ‘source /etc/environment‘ >> /root/.profile
5)由于我局域网的dhcp做的是mac地址绑定。所以我还需要为我的cubieboard配置一个静态mac地址,并加入到我的dhcp server中。不需要的同学请跳过这步。
添加静态mac的方法,请参考http://blog.asiulo.com/post-13.html
至此基本的配置都已经完成。
卸载sd,并将sd加载到cubieboard板子上,接上网线和usb电源启动。
本地ubuntu上 ssh [email protected] (之前配置好的ip地址)
没有问题的话,你很快就可以远程登录了。
别忘了去掉之前加到rc.local 中的chpasswd脚本。
CubieBoard开发板不用ttl线也不用hdmi线的安装方法,至此就算是完成了。如果你还想升级下内核版本,请转到我页面底下的补充内容中查看。
接下来的配置以及应用安装,具体可以参考胭脂熊的BLOG,条理清晰,也都是一些不错的应用。http://blog.newhi.net/?post=31中有系统化的说明。
补充:
##查看内核版本
lsb_release -a
No LSB modules are available.
Distributor ID: Linaro
Description: Linaro 13.02
Release: 13.02
Codename: quantal
##更新源
apt-get update
##更新内核版本
apt-get upgrade
##格式化nand flash卡,我是不想要nand上的安卓系统了,又不想闲着nand。想用nand做系统的朋友就别这么做了。
fdisk -l 找到nand
dd if=/dev/zero of=/dev/nand bs=1024 //低级格式化nand
sudo fsck.ext4 /dev/nand1
fsck.ext4 /dev/nand1 //dd或者写入img后的第一件事最好是先fsck一下。
mkdir /data
mount /dev/nand1 /data
echo "/dev/nand1 /opt ext4 defaults,noatime 0 1" > /etc/fstab
我还把sd卡剩余的空间给分区、格式化后利用了。
/dev/mmcblk0p5 /backup ext4 defaults,noatime 0 1
#内核升级
t4这个版本是在A8 cpu环境下编译的,目前我拿到的这个cubieboard的cpu是A10,对应的升级包是http://dl.miniand.com/toby_corkindale/kernel_t5.7z,或者访问我开始时提到的内核编译作者的页面查看。注意t5这个包放的是lib和uImage,它是A10环境下编译的内核文件,不是运行环境,故只适合从t4升级到t5时使用。
你可以尝试在t4运行环境下,先备份t4的同名目录和文件后,再解压t5覆盖同名目录。我是把sd卡放在我的本地ubuntu上备份和覆盖的。重启生效。