常见问题

  • 网卡与物理地址对应

    多网卡设备在系统启动时,多个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

  • 如何在Jetson设备上修改mtu?

    经常遇到一些设备需要设置mtu值,以满足一些网络设备的正常运行,经过仔细验证,设置mtu的方式如下:

    修改网络mtu(以设置eth0 为例)

    sudo ifconfig eth0 down 

    sudo ifconfig eth0 mtu 9000

    sudo ifconfig eth0 up

  • Jetson上安装共享samba

    安装samba

    sudo apt-get install samba -y

    修改配置文件

    sudo vi /etc/samba/smb.conf 

    [tw]

    comment = share folder

    browseable = yes

    path = /home/tw

    create mask = 0664

    directory mask = 0775

    valid users = tw

    force user = tw

    force group = tw

    public = yes

    available = yes

    writable = yes

    设置密码

    sudo smbpasswd -a nvidia

    应用重启

    sudo service smbd restart

  • 公司以云边端算力底座为基础,融合大模型算法和数字孪生?
    公司以云边端算力底座为基础,融合大模型算法和数字孪生技术,深耕拓展行业智能化解决方案,为客户提供全方位数智化建设与转型服务。
    公司总部位于深圳市南山区高新技术产业园区,在西安、新乡、青岛等地设有分公司,并战略性布局香港基地,以便进一步辐射全球市场。
    图为科技是国家高新技术企业,2023年荣获深圳市“专精特新”企业称号,在人工智能领域获得多项发明专利和软件著作权,是芯片龙头企业英伟达及华为公司的战略金牌合作伙伴。
  • 使用增强图传有哪些注意事项?
    在使用增强图传降落时,如连接方式为纯 4G 模式,无人机会在降落三分钟后无法起飞。如需再次起飞,须在 O3+ 图传的连接范围内。请谨慎飞行。
  • 为何相同的地点观看视频不卡顿,但是使用增强图传就有卡顿?
    增强图传的 4G 传输的实现方式是无人机和遥控器分别和服务器连接,通过服务器转发完成图传和控制。4G 传输包含无人机和遥控器两端的 4G 信号传输,因此请务必选择遥控器或手机上 4G 信号接近满格的地方操作无人机。

    另外由于无人机在空中飞行,4G 信号有时候会比较差,主要原因在于:
    1. 基站布置的 4G 信号一般是朝向地面的,空中信号比地面差,高度越高信号越差;对于高楼林立的市中心区域,空中信号相对好一些,但是网络拥塞情况相对会比较严重。
    2. 无人机在空中飞行,4G 基站的旁瓣会直接辐射到天上,会导致空中杂波和干扰比较多。空中信号覆盖不连续,将导致无人机在空中使用 4G 网络时,信号出现延迟。
    3. 4G 基站所覆盖的范围比较有限,城市中一个基站可能覆盖只有几十米到几百米;因此,无人机飞行过程中需要不停地切换基站,每次切换过程中,数据传输的流畅性都会受到影响。