目录
目录
cat /sys/class/net/eth0/carrier
echo 3 > /proc/sys/vm/drop_caches
密码存储在/etc/passwd 和 /etc/shadow中
strip
strip是常用的减小程序体积的命令,到时如果对静态库 或者驱动直接strip可能会导致链接不上 或者 驱动无法使用,此时可以加上 --strip-unneeded 意思是删除重定位处理不需要的所有符号。保留用于链接的符号,--strip-unneeded不如-s清除的彻底,但是保留了很多有用的信息,确保该链接库是可用的。
find . -name "*.ko" | xargs arm-xxxxx-strip --strip-unneeded
/proc/net/dev
可以获取网卡适配器的统计信息,比如数据收发速率
cat /sys/class/net/eth0/carrier
判断设备是否插网线 1:接入、 0:未接入
/proc/mtd
系统磁盘信息,嵌入式中可以查看各个分区的大小
cat /proc/partitions
查看全部分区信息,可以通过解析该文件来判断是否有 sd卡 或者u盘插入
echo 3 > /proc/sys/vm/drop_caches
清理缓存
gcc降版本(11 ==> 9)
sudo apt install gcc-9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 100
mknod
用于创建特殊文件 mknod Name { b | c } Major Minor
Name 有两种 b:块设备 c:字符设备
字符设备、块设备主要区别是:在对字符设备发出读/写请求时,实际的硬件I/O一般就紧接着发生了,而块设备则不然,它利用一块系统内存作为缓冲区,当用户进程对设备请求能满足用户的要求时,就返回请求的数据,如果不能就调用请求函数来进行实际的I/O操作,因此,块设备主要是针对磁盘等慢速设备设计的,以免消耗过多的CPU时间来等待
系统中能够随机(不需要按顺序)访问固定大小数据片(chunks)的设备被称作块设备(比如硬盘)块设备通过系统缓存进行读取,不是直接和物理磁盘读取。
字符设备可以直接物理磁盘读取,不经过系统缓存。(如键盘,直接响应中断)
Major Minor:主次设备号
主、次设备号可在内核源代码的./Documentation/devices.txt
比如 rtc 就是字符设备 主设备号10,次设备号135
mknod rtc c 10 135
密码存储在/etc/passwd 和 /etc/shadow中
有些精简的嵌入式系统密码直接在passwd中存储,由于该文件允许所有用户读取,有安全隐患,linux 系统将用户的密码信息从 /etc/passwd 文件中分离出来,并单独放到了shadow中。
/etc/shadow 文件只有 root 用户拥有读权限,其他用户没有任何权限,这样就保证了用户密码的安全性。
Linux /etc/shadow(影子文件)内容解析(超详细) (biancheng.net)
调整内核打印等级
echo 4 > /proc/sys/kernel/printk
/proc/softirqs 软中断信息
cat /proc/softirqs 提供了软中断的运行情况: TIMER(定时中断)、NET_RX(网络接收)、SCHED(内核调度)、RCU(RCU 锁)
cat /proc/interrupts 硬中断信息
获取一个uuid (linux和嵌入式下通用)
cat /proc/sys/kernel/random/uuid
在内核下获取分区坏块个数
cat /sys/class/mtd/mtd0/bad_blocks
查看mtd0的坏块
开启tftp与win下互传文件
tcpsvd -vE 0.0.0.0 21 ftpd -w / &
后台执行之后xftp即可使用
syslogd记录内核日志
syslogd -O /mnt/mtd/log/messages -l7 -b5
telnet/ssh一键登录
telnet root:123456:@192.168.0.21
ssh root:123456:@192.168.0.21