使用ADB替代NFS實現開發板文件傳輸與調試)
【IMX6ULL】學習筆記一使用ADB替代NFS實現開發板文件傳輸與調試文章目錄【IMX6ULL】學習筆記一使用ADB替代NFS實現開發板文件傳輸與調試[toc]一、為什么使用ADB1.1 傳統NFS1.2 NFS與ADB的區別二、開發環境說明三、ADB命令3.1 使用adb命令傳輸文件3.2 ubuntu imx6ull3.3 imx6ull ubuntu一、為什么使用ADB在傳統嵌入式Linux開發中經常使用NFS實現開發機與開發板之間的文件共享。但是NFS依賴網絡環境需要保證開發板、Ubuntu處于同一局域網。當網絡環境不方便時可以利用USB OTG模式通過ADB協議直接與開發板通信。1.1 傳統NFS在開發板上 掛載網絡文件系統## 開發板上 串口[root100ask:~]# mount-t nfs-o nolock,vers3192.168.1.31:/home/book/nfs_rootfs/mnt傳統 NFS 傳輸文件的方法1.2 NFS與ADB的區別方式連接方式優點缺點NFS網絡適合大型項目開發依賴網絡ADBUSB簡單穩定不需要網絡傳輸效率有限二、開發環境說明連接電源USB OTG 虛擬機板子 使用安卓口的USB線連接IMX6ULL 的 USB OTG 支持兩種角色切換主機模式 (Host) 和 從機模式 (Device)這是 OTG 的核心一個口兩用。如果ubuntu有啟動會彈出如下窗口ubuntu窗口三、ADB命令adb命令都是在ubuntu中執行3.1 使用adb命令傳輸文件adb devices# list connected devices (-l for long output)adb push1.txt /root# 把Ubuntu的文件放到開發板的/root目錄adb pull /root/1.txt2.tx# 把開發板的/root/1.txt下載并改名為2.txtadb shell# 登錄開發板。與在串口上開發板交互方式一致adb 傳輸文件 虛擬機板子book100ask:~$ adb push 1.txt /root//把虛擬機的文件推給板子book100ask:~$ adb pull /root/2.txt//從板子中把文件拉到虛擬機中## 把虛擬機的文件推給板子book100ask:~$ adb push1.txt /root1.txt:1filepushed.0.0MB/s(15bytesin0.008s)book100ask:~$ book100ask:~$## 登錄開發板。與在串口上開發板交互方式一致book100ask:~$ adb shell sh-5.0#sh-5.0# pwd/ sh-5.0# cd rootsh-5.0# pwd/root sh-5.0# ls1.txt S05lvgl sh-5.0# vi 2.txtsh-5.0### 從板子中把文件拉到虛擬機中book100ask:~$ adb pull /root/2.txt /root/2.txt:1filepulled.0.0MB/s(18bytesin0.012s)3.2 ubuntu imx6ulladb push 【那個文件】 【開發板中地址】## 開發板端book100ask:~$ adb shell sh-5.0# pwd/root sh-5.0#sh-5.0# ls1.txt2.txt S05lvgl test_dirv3.3 imx6ull ubuntush-5.0# mv test_dirv test_dir2 ## 移動 / 重命名sh-5.0# ls1.txt2.txt S05lvgl test_dir2adb pull 【開發板中的文件_絕對地址】