Fork me on GitHub
0%

Problem & Tools

ubuntu软件

音频 audacity

1
sudo apt-get install audacity

USB摄像头 chesse

  1. 设置→添加→usb控制器→兼容usb3.0

  2. 虚拟机→可移动设备→web camera→连接(断开主机)

  3. 查看是否配置成功,打开终端,输入

    1
    2
    3
    $ lsusb
    $ ls /dev/video0
    # 输出 /dev/video0,配置成
  4. 打开ubuntu自带的chesse软件(茄子),运行摄像头

USB摄像头 luvcview

  1. 源码下载 ,链接:https://launchpad.net/ubuntu/+source/luvcview/1:0.2.6-6

  2. 安装依赖

    1
    2
    3
    4
    sudo apt-get install debhelper
    sudo apt-get install libsdl1.2-dev
    sudo apt-get install libv4l-dev
    sudo apt-get install pkg-config
  3. 将源码移动到安装文件夹下

  4. 执行 make 编译

    执行 make install 安装可执行文件

  5. 使用方法

    1
    luvcview -d /dev/video0 -f yuv -s 640x480
  6. 问题

    • 报错 ”luvcview.c:32:10: fatal error: SDL/SDL.h: 没有那个文件或目录“

      没有安装依赖

    • 报错 ”luvcview.c:36:10: fatal error: linux/videodev.h: 没有那个文件或目录“

      1
      sudo ln -s /usr/include/linux/videodev2.h /usr/include/linux/videodev.h

图片格式7yuv

好像只维护到16.0.4,可以搜索下查看

串口工具minicom

嵌入式开发工具

  • UI:vim、emacs
  • 多窗口管理工具:tmux
  • 文本对比工具:meld、vimdiff
  • 文档记录工具:typora
  • 性能调优工具:perf

ssh / scp免密

  1. 本地ssh到服务器

    • ssh-keygen产生公钥与私钥对(命令:ssh-keygen,过程中一直回车)
    • 复制公钥至服务器(命令:ssh-copy-id -i ~/.ssh/id_rsa.pub username@服务器ip)
    • 再次ssh即可实现免密登录
  2. 服务器端scp免密

    • 产生密钥对(ssh-keygen -t rsa)
    • 复制公钥至本地(ssh-copy-id -p 22 -i ~/.ssh/id_rsa.pub username@本地ip)
    • 再次scp即可实现免密传输
  3. 参数说明

    • ssh-keygen -t type
    • ssh-copy-id -p port
    • ssh-copy-id -i identity_file

环境变量

1
2
3
4
export		    # 显示当前系统定义的所有的环境变量
echo $PATH # 输出当前PATH环境变量的值

: # 冒号分割不同的路径

pc无法识别usb

  • 现象

    1
    error: insufficient permissions for device
  • 解决方案

  1. 使用lsusb命令,查看usbID

  2. 插入usb之后,再次使用usbID,查找多出来的设备ID

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Bus 002 Device 002: ID 045e:00db Microsoft Corp. Natural Ergonomic Keyboard 4000 V1.0

    Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

    Bus 001 Device 025: ID 18d1:4e12

    Bus 001 Device 007: ID 1a40:0101 TERMINUS TECHNOLOGY INC.

    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hu

    # ID后面分号前面对应xxx1,分号后面对应xxx2
  3. 在/etc/udev/rules.d中创建“51-android.rules”(名字不固定)

    1
    2
    3
    4
    添加内容:

    UBSYSTEM=="usb", ATTRS{idVendor}=="xxx1", ATTRS{idProduct}=="xxx2",MODE="0666"
    SUBSYSTEMS=="usb", ATTRS{idVendor}=="18d1", ATTRS{idProduct}=="4e12", MODE="0666", OWNER="your_name"
  4. 为51-android.rules加上权限(sudo chmod a+x 51-android.rules)

  5. 重启UDEV(adb sudo restart udev; adb kill-server)

  6. 拔掉USB,并重新插上(adb devices)
    adb devices

修改根目录权限

  • 场景

    错误修改usr/bin下的所有文件权限为777,sudo无法使用

    1
    $ /usr/bin/sudo must be owned by uid 0 and have the setuid bit se
  • 解决方案

  1. 命令行 reboot 重启

  2. 按ESC进入,选择Advanced options for Ubuntu。选择recovery mode,选择root命令行模式

    mount -o remount rw /
    mount –all

    因为recovery模式默认是以只读模式挂载,所以我们要重新挂载切换到读写模式

  3. 给sudo权限

 chown root:root /usr/bin/sudo

 chmod 4755 /usr/bin/sudo 

 pkexec chmod go-w /usr/bin/sudo/sudoers.so
  1. 重启系统,reboot

minicom

  1. 启动minicom之后没有打印

    • “ctrl+a > 按键o” 或者启动时“sudo minicom -s”进入配置界面
    • 选择“Serial port setup”进入
    • 将 “A - Serial Device” 修改成 “/dev/ttyUSB0”
  2. 启动之后不能键盘输入

  • “ctrl+a > 按键o” 或者启动时“sudo minicom -s”进入配置界面
  • 选择“Serial port setup”进入
  • 将“F - Hardware Flow Control” 硬件流控关闭,即选择“No”