嵌入式Linux中常用命令记录

嵌入式Linux中常用命令

1.将TF卡挂载到mnt目录下

/mnt # mount /dev/mmcblk0p1 /mnt -----------mmcblk0是设备号,p1是分区号
/mnt # ls /mnt -----------------------------列出mnt目录下有什么文件

  通常,可以用 fdisk -l  命令去查看TF卡是否插入,并且能看到所属的设备号和分区号。TF卡插入后,

一般都在dev目录下有设备号。

  U盘、ssd挂载类似,分清楚设备号和分区号,mount /dev/sda1 /mnt \n

 

2.将TF中的文件拷贝到板上的opt目录下

首先得fdisk -l查看,然后挂载TF卡到某个目录下,然后使用拷贝命令。

/ # cd /dev
/dev ls
/dev # mount mmcblk1p1 /mnt

/mnt # cp ttyw /opt  -----------将ttyw拷贝到/opt目录下,此命令要进入到ttyw所处的目录/mnt,并且/mnt下要有ttyw这个文件。

# cp /mnt ttyw /opt ------------在根目录,可以输入此命令。将/mnt目录下的ttyw拷贝到/opt目录下。

 

3.移动命令

/mnt #mv sample_traffic_capture /opt/----------将/mnt目录下的sample_traffic_capture移动到/opt目录下。

 

4.查看权限

ls -lh------------------查看权限。查看权限一定是在某个目录下,此命令是列出该目录下所有文件的权限。

r表示读 (Read),当前用户可以读取文件内容,当前用户可以浏览目录。

w表示写 (Write),当前用户可以新增或修改文件内容,当前用户可以删除、移动目录或目录内文件。

x表示执行 (eXecute),当前用户可以执行文件,当前用户可以进入目录。

 

5.修改权限

chmod 777 sample_traffic_capture -------修改权限为:所有用户 可读、可写、可执行

读、写、运行三项权限可以用数字表示,就是r=4,w=2,x=1,777就是rwxrwxrwx,意思是该登录用户(可以用命令id查看)、他所在的组其他人都有最高权限。

chmod -R 777 ./-------------------------表示将目录下所有文件权限修改为 可读、可写、可执行

6.cd命令的用法

cd ..  -------------代表上一级目录

cd ~   -------------代表HOME目录

cd -   -------------代表前一目录

 

7.通过修改启动脚本,来修改IP地址

启动脚本位置:BJ→/etc/init.d/S80network

直接编辑也行:vi /etc/init.d/S80network

启动脚本位置:WH→/opt/start.sh

/ # cd /opt

/ # ls

/opt # start.sh

/opt # vi start.sh ------------------------vi就是编辑的意思

/opt # i

-----------------------------用方向键,将光标移动到IP地址所在位置,用删除键删除,然后数字见敲打想要的IP
esc--------------------------IP修改完成后,按esc键退出编辑
shift+:wq--------------------shift+:wq,退出,并保存。退出不保存命令 shift+:!q

然后重启,改的IP才生效。

 

8.tftp命令

 tftp命令可以用来上传下载文件。必要条件:网口需要能通讯,板端和PC端tftp协议都需要开启,并且在同一网段。

  • 在uboot下,通过tftp命令将电脑中的某个文件上传到ddr

   a.在电脑上打开Tftpd64这个软件,将要上传的文件放进电脑上的指定目录;

   b.hisilicon # tftp 0x82000000 uImage---------------将uImage这个文件上传到DDR中,开始地址位:0x82000000,断电后,就没有了,多用来烧写flash或者EMMC,后续还需要有执行相应的烧写指令。

  • 将电脑中的文件上传到板上的TF卡中

   a.挂载TF卡;

   b.PC端打开tftp软件,将要上传的文件放进PC上的指定目录;

   c./mnt/sd # tftp -g -r moribengta.mkv 192.168.1.25---------将电脑中tftp目录下的moribengta.mkv文件上传到/mnt/sd目录下,其中/mnt/sd目录是TF卡的挂载目录;

 有的系统,上面命令不行,打印如下信息:

复制代码
Usage: tftp [OPTIONS] HOST [PORT]

Transfer a file from/to tftp server

        -l FILE Local FILE
        -r FILE Remote FILE
        -g      Get file
        -p      Put file
        -b SIZE Transfer blocks of SIZE octets
复制代码

   解决办法:更改命令~ # tftp -g 192.168.0.25 -r moribengta.mkv---------将电脑中tftp目录下的moribengta.mkv文件上传到根目录下

 

~ # tftp -g 192.168.0.25 -r moribengta.mkv

   d./mnt/sd/video # tftp -p 192.168.1.25 -r chn1_20210831_101403.mp4 ---------反过来一样,将TF卡中的chn1_20210831_101403.mp4文件下载到电脑中tftp目录下,

其中/mnt目录是TF卡的挂载目录,一定要进入目录才能ftfp。

root目前进入后是这样的标志~ # 

 

/ # cd /root/
~ # ls
sample_vio_0 sample_vio_1

 

9.uboot下设置IP地址

setenv ipaddr 192.168.1.91
setenv gateway 192.168.1.1
sav

 

10.在linux系统起来后设置IP地址

ifconfig eth0 192.168.1.91

ifconfig eth0 192.168.1.91 netmask 255.255.255.0

 

11.I2C地址扫描

在telnet中,输入命令 i2cdetect -y -r 2----------------数字是I2C号,是I2C几就填数字几。前提条件,内核中需要有i2cdetect工具。

 

12.TF卡中模拟写卡

  • time dd if=/dev/zero of=/mnt/sd/test.bin bs=1k count=1000000-----------test.bin需要放到TF卡中,如果卡不稳定,可以测出来。

1k是单次写入的大小,1000000是次数,两者相乘,是写入文件的大小。

  • df -h-----------用此命令,可以看写入了多少。

13.Linux 删除文件夹和文件的命令

 linux删除目录很简单,很多人还是习惯用rmdir,不过一旦目录非空,就陷入深深的苦恼之中。删除文件直接rm就可以了,不过要加两个参数-rf 即:rm -rf 目录名字

 -r 就是向下递归,不管有多少级目录,一并删除
 -f 就是直接强行删除,不作任何提示的意思

  1. 删除文件夹实例:
    rm -rf /var/log/httpd/access
    将会删除/var/log/httpd/access目录以及其下所有文件、文件2

  2. 删除文件使用实例:
    rm -f /var/log/httpd/access.log
    将会强制删除/var/log/httpd/access.log这个文件

 14.Linux 启动脚本修改IP

   cd 到相关启动脚本相关目录,有的板启动脚本在/opt目录下的start.sh脚本中,有的脚本在/etc/init.d/目前下的S80network脚本中。

   vi 脚本名

   键盘按i

   修改IP地址

   键盘按esc

   shift+:wq ------------------------退出保存(shift+:键后,键盘输入w,再输入q,然后按Enter键)
   shift+:!q --------------退出不保存

   重启板卡(重启后改的IP才生效)

 15.在某目录下新建一个目录

   在mnt目录下新建一个disk目录:cd到mnt目录,然后 mkdir disk就可以了,想要查看是否新建成功,ls就可以查看

 16.sf命令

    如果板上有spiflash,可以用sf命令来操作它【sf erase, read, write】

    sf read用来读取flash数据到DDR;

    sf write写DDR的数据到flash;

    sf erase 擦除指定位置,指定长度的flash内容,,在进行写flash的时候一定要先进行擦除,否则会失败,因为flash只能从1变为0

 命令举例:

    a. sf probe 0,在使用sf的其他命令之前必须先进行此操作进行连接flash(初始化);

    b. sf write 0x82000000 0x8000 0x20000

   把内存0x8200 0000处的数据, 写入flash的偏移0x80000, 写入数据长度为0x20000(128KB), 操作偏移和长度最小单位是Byte;

   c. sf read 0x82000000 0x10000 0x20000
   把flash偏移0x10000(64KB)处, 长度为0x20000(128KB)的数据, 写入到内存0x82000000, 操作偏移和长度最小单位是Byte;

   d. sf erase 0x0 0x10000

   擦除偏移0x0处, 到0x10000之间的擦除块, 擦除操作是以erase block为单位的, 要求offset和len参数必须是erase block对齐的;

 17.如何查看flash中的内容

   1 U-Boot-PetaLinux> md
   2 md - memory display
   3 Usage:
   4 md [.b, .w, .l] address [# of objects]

   在uboot中用 md 命令查看内存数据,先将内容读到DDR中,然后查看DDR中的内容

   md 0x82000000 0x100


 18.mw用法

  mw是向DDR中写入数据,.b以字节为单位;.w以字为单位;.l以长字为单位

1 U-Boot-PetaLinux> mw
2 mw - memory write (fill)
3 Usage:
4 mw [.b, .w, .l] address value [count]

 19.uboot下烧写uboot、内核、根文件系统

(1)烧写 u-boot

复制代码
1 sf probe 0
2 mw. b 82000000 ff 100000
3 tftp 82000000 uboot_release_1M. bin
4 sf probe 0
5 sf erase 0 100000
6 sf write 82000000 0 100000
7 reset
复制代码

 

(2)烧写内核

1 sf probe 0
2 mw. b 82000000 ff 300000
3 tftp 82000000 kernel. img
4 sf erase 100000 300000
5 sf write 82000000 100000 300000
6 mw. b 82000000 ff c00000

(3)烧写根文件系统

1 sf probe 0
2 mw. b 82000000 ff c00000
3 tftp 82000000 rootfs. jffs2
4 sf erase 400000 c00000
5 sf write 82000000 400000 c00000

 20.海思3559A开启FTP命令

tcpsvd 0 21 ftpd -wvS /opt &
posted @   影帝一号  阅读(1170)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示