常见问题

  • 使用AT指令通过5G模块发送短信
    sudo  cutecom

    选择串口 /dev/ttyUSB3

    #串口根据实际AT指令串口选择

    CR/LF
    发送:

    AT+CMGF=1 #设置短消息模式为文本模式。 OK AT+CSCS="GSM" #设置 TE 输入字符集格式为 GSM 格式。 OK AT+CMGS="15021012496"  #接收号码 >This is a test from Quectel #输入短消息内容 > HEX 发送: 1A  #回车退出 +CMGS: 247 OK

  • iso文件的生成与挂载
    sudo apt-get update sudo apt-get install genisoimage   #安装工具 genisoimage -o /path/to/output.iso -V "Volume Label" -J -r -iso-level 4 /path/to/your/files   	#把文件夹生成为iso文件  sudo mount -o loop /path/to/output.iso /mnt #挂载iso文件,并查看 ls /mnt #卸载 sudo umount /mnt

    但因为iso文件是光盘映像,而光盘通常是只读介质。

    挂载的文件系统不能被修改,即您不能在挂载点(在这个例子中是/mnt)写入或修改文件。您可以读取挂载点中的内容,比如列出文件、查看文件内容等。

  • nvidia-smi 无法使用

    nvidia-smi无法在 Jetson 上使用。此程序/实用程序需要 PCI 总线。Jetsons有一个集成的GPU(iGPU),它直接连接到内存控制器。只有 PCI 插槽上的独立 GPU (dGPU) 才能使用该实用程序

  • nvpmodel_indicator占用很多进程

    这个是系统警告的小程序,是系统自带的。

    可以通过注释掉文件的内容或者删除文件实现禁用该小程序:

    /etc/xdg/autostart/nvpmodel_indicator.desktop

    另外需要注意,如果禁用该小程序,您将看不到过热/过流警告。

  • 安装中文输入法

    连接网络

    sudo apt update sudo apt install fcitx-bin sudo apt install fcitx-table

    设置上选择Region & Language,找到Manage Installed Languages点开。

    点击 Remind Me Later
    Keyboard input method system 处选择fcitx

    然后设备重启。


    安装Pinyin输入法:

    sudo apt-get install fcitx fcitx-googlepinyin -y

    安装后,右上角图标处选择Configure Current Input Method

    左下角选择 + 

    不勾选Only Show Current Language,然后在下面搜索框搜索pinyin
    最后选中Pinyin 最后确认点击 OK 即可。


    然后便可以中文了。
    快捷键 “Ctrl + 空格键”切换输入法

  • 网卡与物理地址对应

    多网卡设备在系统启动时,多个CPU在给网口进行初始化设置时基于硬件在系统中的发现顺序然后系统根据初始化顺序分配eth。

    方法一、修改extlinux.conf文件(网卡设备号会变成enpxx,其中数字和字母组合标识了设备在PCI总线上的位置,例如enp2s0意味着这是一个位于第二条PCI总线上的设备,可能还包含子系统和功能信息。

    sudo vi /boot/extlinux/extlinux.conf

    示例:

    LABEL primary       MENU LABEL primary kernel       LINUX /boot/Image       FDT /boot/dtb/kernel_tegra234-p3767-0000-p3768-0000-a0.dtb       INITRD /boot/initrd       APPEND ${cbootargs} root=PARTUUID=d86dd316-2fb6-48ba-b777-77021ceae438 rw rootwait rootfstype=ext4 mminit_loglevel=4 console=ttyTCU0,115200 console=ttyAMA0,115200 firmware_class.path=/etc/firmware fbcon=map:0 net.ifnames=0

    APPEND 行的 net.ifnames=0中的0 改为1。

    方法二、禁止开机加载驱动,改为系统启动后加载eth0、eth1... 这种传统的命名方式基于硬件在系统中的发现顺序,其中“eth”代表以太网(Ethernet),后面的数字用于区分多个网络接口。

    1、禁用开机加载ngbe.ko

    sudo vi /etc/modprobe.d/blacklist.conf

    +blacklist ngbe

    2、系统启动后加载ko文件
    在. wsetupscripts wStartUp.sh 内加上:

    insmod /lib/modules/`uname -r`/kernel/drivers/net/ngbe.ko

    或者自写启动脚本。

    方法三、修改定义udev.rule规则(udev是一个动态设备管理系统

    sudo vi /etc/udev/rules.d/70-persistent-net.rules

    SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="48:b0:2d:e9:e0:a6", ATTR{type}=="1", NAME="E0" SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:04:5f:80:80:54", ATTR{type}=="1", NAME="E1" SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:04:5f:80:80:55", ATTR{type}=="1", NAME="E2" SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:04:5f:80:80:56", ATTR{type}=="1", NAME="E3" SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:04:5f:80:80:57", ATTR{type}=="1", NAME="E4"

    mac地址通过ifconfig查看获取 最后的name分别对应eth0 eth1 eth2.....

    udev rule给网卡自定义重命名的时候要避开内核的命名规则,不可以使用ethX的命名方式,有可能会出现冲突而重命名失效。

    保存文件并重载udev规则,使之生效:

    sudo udevadm control --reload-rules  sudo udevadm trigger
  • 国内下载源切换

    建议更换源列表时提前备份,以防不时之需。

    sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

    1、Ubuntu 18.04

    sudo gedit /etc/apt/sources.list

    deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe  deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe  deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe  deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted universe  deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe  deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe  deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe  deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted universe

    sudo apt-get update

    2、Ubuntu 20.04

    sudo gedit /etc/apt/sources.list

    deb https://mirror.tuna.tsinghua.edu.cn/ubuntu-ports/ focal main restricted universe multiverse deb https://mirror.tuna.tsinghua.edu.cn/ubuntu-ports/ focal-updates main restricted universe multiverse deb https://mirror.tuna.tsinghua.edu.cn/ubuntu-ports/ focal-backports main restricted universe multiverse deb https://mirror.tuna.tsinghua.edu.cn/ubuntu-ports/ focal-security main restricted universe multiverse deb https://mirror.tuna.tsinghua.edu.cn/ubuntu-ports/ focal-proposed main restricted universe multiverse

    sudo apt-get update

  • 设置uefi启动优先级

    安装管理工具:

    sudo apt install efibootmgr

    查看当前的启动顺序:

    sudo efibootmgr

    设置启动优先:

    sudo efibootmgr -o 0000,0001,0002 #把0000 设备设置为第一顺序,以此类推
  • 添加swap空间

    添加一个新的swap文件

    1. 创建swap文件
      使用fallocate命令创建一个16GB的swap文件:
    sudo fallocate -l 16G /swapfile
    1. 设置swap文件权限
      为了安全起见,确保只有root用户可以读写这个文件:
    sudo chmod 600 /swapfile
    1. 将文件标记为swap空间
      使用mkswap命令将文件格式化为swap空间:
    sudo mkswap /swapfile
    1. 启用swap文件
      启用刚刚创建的swap文件:
    sudo swapon /swapfile
    1. 使swap文件在重启后仍然有效
      编辑/etc/fstab文件,在文件末尾添加以下行:
    /swapfile none swap sw 0 0

    使用以下命令编辑文件:

    sudo nano /etc/fstab
    1. 调整swap优先级(可选):
      如果您有多个swap设备或文件,您可能想要设置它们的优先级:
    sudo swapon --priority 10 /swapfile #如果显示设备被占用: sudo swapoff /swapfile #先关掉,在设置  
    1. 检查swap文件是否已启用
      使用以下命令检查swap文件是否正在使用:
    sudo swapon --show
  • nvcc -V 查不到cuda版本信息

    当确认已经执行 sudo apt install nvidia-jetpack -y 安装jetpack sdk 后,无法通过nvcc -V 查看cuda版本信息:

    配置环境变量:

    sudo vim .bashrc

    在文件末尾加入:

    export PATH=/usr/local/cuda-11.4/bin:$PATH

    export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

    export CUDA_HOME=$CUDA_HOME:/usr/local/cuda-11.4

    其中cuda11.4根据实际的版本填写些,版本可以从上面的路径/usr/local/找到。

    改完之后wq保存.

    更新:

    source .bashrc  

    然后nvcc -V 查看

  • Ubuntu20.04 设置静态IP

    sudo apt install netplan.io

    sudo vi /etc/netplan/99_config.yaml

    添加以下内容(注意格式):

    network:

      version: 2

      renderer: networkd

      ethernets:

        enp0s25:

          addresses:

            - 192.168.0.100/24

          routes:

            - to: default

              via: 192.168.0.1

          nameservers:

              search: [example.com, sales.example.com, dev.example.com]

              addresses: [1.1.1.1, 8.8.8.8, 4.4.4.4]


    重启生效
    sudo reboot

  • 安装deepstream

    环境依赖安装:

    sudo apt install

    libssl1.1

    libgstreamer1.0-0

    gstreamer1.0-tools

    gstreamer1.0-plugins-good

    gstreamer1.0-plugins-bad

    gstreamer1.0-plugins-ugly

    gstreamer1.0-libav

    libgstreamer-plugins-base1.0-dev

    libgstrtspserver-1.0-0

    libjansson4

    libyaml-cpp-dev

    安装deepstream

    sudo apt install deepstream-6.1

    (不同jetpack 版本对应不同的deepstream版本,输入到deepstream时,可按tab键 自动补全适应当前jetpack版本的deepstream版本)


    测试demo(以deepstream-6.1为例)

    cd /opt/nvidia/deepstream/deepstream-6.1/samples/configs/deepstream-app

    deepstream-app -c source30_1080p_dec_preprocess_infer-resnet_tiled_display_int8.txt

12