前期准备:
1. Jetson TK1开发板。
2. 安装有ubuntu系统的PC(或者ubuntu虚拟机)切记:不管是PC还是虚拟机,务必确保有大于5G的存储空间,之后安装过程会作详细解释。
3. 购买开发板时附赠的恢复线
4. 下载driver package
(安装程序):Tegra124_Linux_R21.5.0_armhf.tbz2
下载网址: Driver packages 下
https://developer.nvidia.com/linux-tegra-r215
或者
https://developer.nvidia.com/embedded/dlc/l4t-Jetson-TK1-Driver-Package-R21-5
5. 下载 Sample File System:Tegra_Linux_Sample-Root-Filesystem_R21.5.0_armhf.tbz2
PS: 以上两个网址获取的刷机工具(64.8M)及刷机包(618M)是由英伟达官方提供。细心的读者可能发现,本教程使用L4T 21.x的刷机工具及刷机包,刷完的系统是L4T 21.x的。所以,后面的CUDA及OpenCV的安装,要做相应配套,后面会做详细说明。
准备刷机:
1. 在ubutun系统的pc上,确保driver package及 Sample File System 在同一个文件夹下,cd到该目录。
2. 解压缩刷机工具:Tegra124_Linux_R21.5.0_armhf.tbz2,在终端执行命令:
sudo tar --numeric-owner -jxpf Tegra124_Linux_R21.5.0_armhf.tbz2
3. ls查看,会发现多了一个文件夹linux_for_tegra,cd到该文件夹,再ls一下,找到rootfs文件夹,cd到该文件夹。
4. 接上一步,在rootfs文件夹下执行解压缩:Tegra_Linux_Sample-Root-Filesystem_R21.5.0_armhf.tbz2
终端命令如下:
sudo tar --numeric-owner -jxpf ../../Tegra_Linux_Sample-Root-Filesystem_R21.5.0_armhf.tbz2
该命令将刷机包解压到当前目录,即rootfs文件夹下。解压成功后,有兴趣的可以ls查看一下该文件,会发现其结构就是ubuntu系统的根目录。
5. 然后返回上一级文件夹,即linux_for_tegra文件下。执行安装脚本,终端命令:
sudo ./apply_binaries.sh
PS:此时,rootfs文件夹大小约为1.9G(此大小,几乎就是你刷机后的系统大小,),下载的刷机工具及刷机包约700M,刷机过程中还需要使用磁盘空间。这也是为什 么之前强调务必确保有大于5G的存储空间的原因,如果磁盘间不足,刷机会失败。
开始刷机:
把刷机线,USB端插到ubuntu PC上,小头插到TK1上,也就是耳机口旁边的口。TK1上有三个按钮,最左边的是电源,中间的是reset,最右边的是force recoverry,按住最右边的force recoverry 按钮别松手,再按一下中间的reset键,指示灯会闪一下,板子就重启进入了刷机模式。(如果是用虚拟机刷机,请务必确保USB已经连接,如VMware 菜单-虚拟机-可移动设备-(找到TK1设备)-连接)。然后在ubuntu PC上,当前目录,即linux_for_tegra目录下,执行终端命令:
sudo ./flash.sh -S 8GiB jetson-tk1 mmcblk0p1
这个时候ubuntu上会弹出一个设备,就是tk1了,然后就会进入刷机过程,若干小时后,最后成功了的话,会出现success字样。这时重启TK1开发板,就发现这板子已经成功被初始化了。
注释:14GiB是表示开发板磁盘的空间。TK1开发板实际的磁盘空间大于14GiB。本人尝试过配置15GiB,最终因磁盘空间不足,刷机失败。初始化时系统占用磁盘为2.4G,也就是刷机过程拷贝到板子上的数据大约是2.4G 。
查看系统版本:
cat /etc/nv_tegra_release
或者
head -n 1 /etc/nv_tegra_release