RDK X3 MD Carrier Board

来自Waveshare Wiki
跳转至: 导航搜索


RDK X3 Module Carrier Board
{{{name2}}}
{{{name3}}}
功能简介
特性 无特性,不解释
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
接口 MIPI CSI 2-lane MIPI CSI 4-lane MIPI DSI

简介

RDK X3 Module Carrier Board,作为 X3 模组的配套底板,提供了丰富的配置和接⼝,包括 USB3.0、以太⽹、HDMI、MIPI CSI、MIPI DSI、40PIN header 等,⽅便⽤户对模组的功能验证和开发。

系统安装

版本说明

2.0版本:基于RDK Linux开源代码包制作,支持RDK X3派、X3模组等全系列硬件 1.0版本:旭日X3派历史版本,仅支持旭日X3派硬件,不支持新版本的旭日X3派,系统镜像名为system_sdcard.img

烧录系统

点击下载镜像,进入版本选择页面,选择对应版本目录,进入文件下载页,该产品只支持2版本的镜像。以下载2.0.0版本的系统镜像为例,双击2.0.0,双击release,单击下载ubuntu-preinstalled-desktop-arm64.img.xz :
Image download .png
下载完成后,解压出Ubuntu系统镜像文件,如ubuntu-preinstalled-desktop-arm64.img RDK X3 Module支持从eMMC和SD卡两种模式启动系统

SD卡烧录

    balenaEtcher烧录镜像
      注意:使用该软件烧录时,尽量直接接在电脑的USB接口上,不要使用外接拓展,可能会导致烧录不成功。
    1. TF卡插入读卡器,读卡器接入电脑,识别到TF卡后打开balenaEtcher软件
    2. 点击Flash from file,选择你刚解压的镜像文件 system_sdcard.img
        Sdcard-image.png
    3. 点击Select target按钮,选择TF卡对应的磁盘作为目标储存设备
        Step.png
    4. 点击Flash按钮开始烧录,等到工具提示Flash Comple时,表示TF卡镜像制作完成,关闭balenaEtcher,从电脑上取下读卡器,并取出TF卡
        Flash complete.png
    rufus烧写镜像
    1. TF卡插入读卡器,读卡器接入电脑,识别到TF卡后打开rufus软件
    2. 点击选择按钮,在弹出的文件选择对话框中选择解压出来的 system_sdcard.img 镜像文件
        Rufs flash sd.png
    3. 点击开始按钮,软件弹出提示框,点击确定开始烧录TF卡镜像,如果弹出以下信息,点击确定。
        Message.png
    4. 当软件进度条完成并提示准备就绪后,表示TF卡镜像烧录完成,关闭软件,取下读卡器,取出TF卡
        Rufs flash complete.png

eMMC烧录

驱动安装

需要使用地平线hbupdate烧录工具,点击下载驱动。 hbupdate工具支持Windows、Linux两种版本,分别以 hbupdate_win64、 hbupdate_linux 开头。
注意事项:解压工具压缩包,注意解压路径中不要包含空格、中文、特殊字符等内容。 对于使用Windows系统的PC,在使用刷机工具前,需要确认是否安装过fastboot驱动程序,请按照如下步骤进行确认:

    (1)使用跳线帽将RDK X3载板的Boot管脚接地,管脚位置参考下图。
    Pin shorted.png
    (2)将载板的Micro USB接口与电脑通过USB线连接,接口位置参考下图。
    Interface.png
    (3)给设备上电,然后观察电脑设备管理器端口状态,如出现USB download gadget未知设备时,需要更新设备驱动,如没有出现,可跳过下述步骤。
    USB download gadget.png
    (4)下载并解压驱动包 android_hobot.zip,下载链接 [ android_hobot] 。
    (5)进入解压后的目录,以管理员身份运行 5-runasadmin_register-CA-cer.cmd,完成驱动程序的注册。
    (6)双击USB download gadget未知设备,选择驱动包解压目录,然后点击下一步。
    Driver installation.png
烧录系统
    确认PC设备管理器显示fastboot设备Android Device后,运行hbupdate.exe打开烧录工具,按照以下步骤进行烧录:
    Software configuration-1.png
    (1)选择开发板型号,必选项。
      • RDK_X3_2GB: RDK X3(旭日X3派),2GB内存版本,仅支持烧写最小系统镜像
      • RDK_X3_4GB: RDK X3(旭日X3派),4GB内存版本,仅支持烧写最小系统镜像
      • RDK_X3_MD_2GB: RDK X3 Module,2GB内存版本
      • RDK_X3_MD_4GB: RDK X3 Module,4GB内存版本

    Software configuration-2.png
    (2)点击Browse按钮选择将要烧录的镜像文件,必选项。
    Software configuration-3.png
    (3)点击Start按钮开始刷机,根据弹窗提示开始烧录:
    Software configuration-4.png

    • 烧录镜像时,需要通过跳线帽将BOOT管脚接地,管脚位置参考功能控制接口
    • 将Micro USB接口连接到电脑,电脑设备管理器中会识别出Android Device的设备,如上一节安装USB下载驱动所描述
    • 烧录完毕断开电源,断开和电脑的连接线,将BOOT管脚跳线帽拔下,重新上电即可
    • 如果启动正常,在硬件上的ACT LED灯会进入两次快闪一次慢闪的状态

    (4)检查升级结果

    • 镜像烧录成功时,工具提示如下:

    Software configuration-5.png

    • 镜像烧录失败时,工具提示如下,此时需要确认PC设备管理器是否存在Android Device设备

    Software configuration-6.png
    如烧录过程发生中断,请按照上述步骤重新进行。


系统启动

RDK X3 Module支持从eMMC和SD卡两种模式启动系统: 当模组上的eMMC没有烧录过系统镜像的情况下,插入制作好系统的SD卡到载板即可通过从SD卡启动系统。

如果模组上的eMMC已经烧录过系统镜像,可以按照以下步骤进行eMMC和SD卡启动的切换。
1、默认情况下会从eMMC启动系统

2、禁用eMMC的启动切换到使用SD卡启动系统,登录系统后,执行以下命名把eMMC的第二个分区的启动标志删除,并重启系统生效:

sudo parted /dev/mmcblk0 set 2 boot off
sudo reboot

3、在uboot下会发现eMMC没有启动分区而去寻找SD卡的启动分区,从SD卡加载系统启动,登录系统后执行mount命令可以看到跟文件系统挂载在 SD 卡的 第二个分区,config分区也使用的SD卡的第一个分区。

/dev/mmcblk2p2 on / type ext4 (rw,relatime,data=ordered) 
/dev/mmcblk2p1 on /boot/config type vfat

从SD卡启动切换回从eMMC启动

当在使用SD卡启动系统时,并且eMMC上已经烧录过系统,执行以下命令恢复回从eMMC启动,重启系统生效。

sudo parted /dev/mmcblk0 set 2 boot on
sudo reboot

Ubuntu Desktop版本系统启动完成后,会通过HDMI接口在显示器上输出系统桌面,如下图:
Desktop.png

远程登录

有线以太网:开发板默认采用静态IP模式,IP地址为192.168.1.10,掩码255.255.255.0,网关 192.168.1.1
无线WiFi:开发板IP地址一般由路由器分配,可在设备命令行中通过ifconfig命令查看wlan0网络的IP地址

串口登录操作

方法一:putty串口登录

    硬件连接好,驱动安装完毕后,打开设备管理器,你会看到以下端口:
    Serial.png
    打开putty软件,按照下图配置(以实际识别到的端口为准)。
    Putty config.png
    开发板上电,pytty窗口便会看到有信息打印,然后登陆即可。
    输入命令
    ifconfig

    获取开发板的IP地址

    ifconfig eth0  代表以太网络(指网线),刚烧录的系统默认为192.168.1.10
    ifconfig wlan0 代表WiFi网络

    Ifconfig.png

方法二:MobaXterm串口登录

    硬件连接好后,给开发板上电,打开MobaXterm软件,按照下图配置。
    MobaXterm config.png
    开发板上电,MobaXterm便会看到有信息打印,然后登陆即可。

SSH登录

SSH登陆前我们需要配置电脑IP
从串口登录我们已经获取到了 sunrise x3 pi 的 IP 地址 (192.168.1.10)
为了使电脑与 sunrise x3 pi 进行通信需要进行以下操作:

  • 开发板、PC 机 IP 地址前三段相同,例如开发板:192.168.1.10 PC 机:192.168.1.100
  • 开发板、PC 机的子网掩码、网关保持一致
  • PC 机网络防火墙处于关闭状态
    1. 配置电脑 IP 主要进行如下几步:
    2. 在网络连接中找到对应的以太网设备并右击选择属性
      1. Network connection.png
    3. 找到 Internet 协议版本 4 选项并双击打开
    4. 在下图红框位置填入对应的网络参数,然后点击确定
        IPv4.png
    5. MobaXterm登录

        MobaXterm configuration SSH.png

      注意:开机输入用户名和密码必须在60S内完成,没完成的重新在60S内再输入一次即可。

      VNC 登录

      打开VNC软件,在地址栏输入旭日 X3 派的IP地址,回车,按照以下图片配置即可
      VNC 1.png
      VNC 2.png

      命令行登录

      ubuntu虚拟机打开终端输入:

      ssh sunrise@192.168.1.10

      Ubuntu terminal.png

      示例程序

      GPIO调用

      开发板 /app/40pin_samples/ 目录下,预置了多种40PIN管脚的功能测试代码,包括gpio的输入/输出测试、PWM、I2C、SPI、UART等测试。所有测试程序均使用python语言编写,详细信息可以查阅 40PIN 功能使用。

      图像分类算法示例

      开发板上安装了test_mobilenetv1.py 程序用于测试mobilenet v1图像分类算法功能。
      该程序读取 zebra_cls.jpg 静态图片作为模型的输入,并在命令行终端输出分类结果cls id: 340 Confidence: 0.991851

      cd /app/pydev_demo/01_basic_sample/
      sudo ./test_mobilenetv1.py
      

      USB摄像头使用

      开发板上安装了 usb_camera_fcos.py 程序用于测试USB摄像头的数据通路,该示例会实时采集USB摄像头的图像数据,然后运行目标检测算法,最后把图像数据和检测结果融合后通过HDMI接口输出。

      USB摄像头接入到开发板上,确认生成/dev/video8设备节点
      通过HDMI线缆连接开发板和显示器
      cd /app/pydev_demo/02_usb_camera_sample/
      sudo python3 ./usb_camera_fcos.py

      程序执行后,显示器会实时显示摄像头画面及目标检测算法的结果(目标类型、置信度)。

      MIPI摄像头使用

      将MIPI摄像头模组连接到开发板MIPI CSI接口,通过HDMI线缆连接开发板和显示器,执行以下命令:

       cd /app/pydev_demo/03_mipi_camera_sample/
       sudo python3 ./mipi_camera.py 
      

      程序执行后,显示器会实时显示摄像头画面及目标检测算法的结果(目标类型、置信度)

      系统配置

      系统更新

      出于系统安全、稳定性的考虑,推荐用户安装完系统后,通过 APT 命令对系统进行更新。
      在/etc/apt/source.list 文件中,保存了 APT 命令的软件源列表,在安装软件前,需要先通过apt 命令更新 package 列表。
      首先打开终端命令行,并输入如下命令:

      sudo apt update

      其次,升级所有已安装的软件包到最新版本,命令如下:

      sudo apt full-upgrade

      注意:推荐使用 full-upgrade 而不是简单的 upgrade 命令,这样当相关依赖发生变动时,也会同步更新依赖包。
      当运行 sudo apt full-upgrade 命令时,系统会提示数据下载和磁盘占用大小,但是 apt 不会检查磁盘空间是否充足,推荐用户通过

       df -h

      命令手动检查。此外,升级过程中下载的 deb 文件会保存在/var/cache/apt/archives 目录中,用户可以通过

      sudo apt clean 

      命令删除缓存文件以释放磁盘空间。
      执行 full-upgrade 之后,可能会重新安装驱动和升级旭日 X3 派的内核,所以建议都重启一下设备,命令如下:

      sudo reboot



      网线网络配置

      开发板网络配置保存在/etc/network/interfaces 文件中 在使用 vim 编辑器时保存时请先按下Esc键,再输入

       :wq!

      推荐使用 nano 编辑器,安装命令如下:

      sudo apt update
      sudo apt-get install nano

      静态 IP 修改

      通过修改 address、netmask、gateway 等字段,可完成对静态 IP 配置的修改
      例如:

      sudo vim /etc/network/interfaces
      # interfaces(5) file used by ifup(8) and ifdown(8)
      # Include files from/etc/network/interfaces.d:
      source-directory /etc/network/interfaces.d
      auto eth0
      iface eth0 inet static
          address 192.168.1.10
          netmask 255.255.255.0
          gateway 192.168.1.1
          metric 700

      修改完成后,命令行输入

      sudo systemctl restart NetworkManager

      让配置生效。
      重启更新网络频段:

      sudo reboot

      修改 DHCP 配置

      DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理、分配 IP 地址,使网络环境中的主机动态的获得 IP 地址、Gateway 地址、DNS 服务器地址等信息,并能够提升地址的使用率。开发板的 DHCP 网络配置保存在/etc/network/interfaces 文件,通过修改 eth0 相关配置,可完成对 DHCP 模式的修改,例如终端输入:

      sudo vim /etc/network/interfaces

      修改以下内容:

      source-directory /etc/network/interfaces.d
      auto lo
      iface lo inet loopback
      auto eth0
      iface eth0 inet dhcp
          metric 700
      修改完成后,命令行输入
      sudo systemctl restart NetworkManager

      命令让配置生效。
      重启更新网络频段:

      sudo reboot

      修改 MAC 地址配置

      如需修改开发板默认 MAC 地址,可通过在/etc/network/interfaces 文件中增加 pre-up 配置信息,指定用户需要的 MAC 地址,例如:

      sudo vim /etc/network/interfaces

      修改以下内容:

      # interfaces(5) file used by ifup(8) and ifdown(8)# Include files from
      /etc/network/interfaces.d:
      source-directory /etc/network/interfaces.d
      auto eth0
      iface eth0 inet static
          address 192.168.1.10
          netmask 255.255.255.0
          gateway 192.168.1.1
          pre-up ifconfig eth0 hw ether 00:11:22:9f:51:27

      修改完成后,命令行输入

      sudo systemctl restart NetworkManager

      使配置生效。
      重启更新网络频段

      sudo reboot

      无线网络配置

      Ubuntu Desktop 版本系统

      连接上 WiFi 后如下图标注位置会变成 WiFi 样式
      Wireless configuration.png


      Ubuntu Server 版本系统

      输入 WiFi 扫描命令:

      sudo nmcli device wifi rescan

      如果出现 Error: Scanning not allowed immediately following previous scan.的提示,表示扫描太频繁,请等一会后再扫描
      显示扫描到的 WiFi:

      sudo nmcli device wifi list

      使用命令连接 WiFi:

      sudo wifi_connect "SSID" "PASSWD"
      sudo wifi_connect "JSBPI" "waveshare0755" 

      返回以下命令表示成功,出现其他问题按照错误提示进行修改即可
      Device 'wlan0' successfully activated with '********-****-****-****-************'
      如果提示 Error: No network with SSID 'WiFi-Test' found.,说明是热点还没有刷新出来,可以执行

      sudo nmcli device wifi rescan

      命令重新扫描即可。


      无线网络软AP

      无线网络软 AP 可以理解为手机上的 WiFi 热点。
      AP6212 的 wifi 支持软 AP 和 Station 两种模式,默认运行在 Station 模式下,如果要使用软 AP 功能请按照以下步骤进行配置。

    6. 安装 hostapd 和 isc-dhcp-server
      sudo apt update
      sudo apt install hostapd
      sudo apt install isc-dhcp-server

      配置 hostapd,打开

      sudo vim /etc/hostapd.conf

      无密码的热点配置请添加以下内容:

      interface=wlan0
      driver=nl80211
      ctrl_interface=/var/run/hostapd
      ssid=Sunrise
      channel=6
      ieee80211n=1
      hw_mode=g
      ignore_broadcast_ssid=0

      有密码的热点配置请添加以下内容

      interface=wlan0
      driver=nl80211
      ctrl_interface=/var/run/hostapd
      ssid=Sunrise
      channel=6
      ieee80211n=1
      hw_mode=gignore_broadcast_ssid=0
      wpa=2
      wpa_key_mgmt=WPA-PSK
      rsn_pairwise=CCMP
      wpa_passphrase=12345678
      
    7. 配置 isc-dhcp-server 终端输入
      sudo vim /etc/default/isc-dhcp-server

      如下定义使用的网络接口,保存并退出:INTERFACESv4="wlan0"
      INTERFACESv4.png
      终端输入:

      sudo vim /etc/dhcp/dhcpd.conf

      取消以下字段的注释:
      authoritative;
      Uncomment from the comment.png
      然后输入:

      sudo vim /etc/dhcp/dhcpd.conf 

      在文件的末尾增加以下配置:

      subnet 10.5.5.0 netmask 255.255.255.0 {
        range 10.5.5.100 10.5.5.254;
        option subnet-mask 255.255.255.0;
        option routers 10.5.5.1;
        option broadcast-address 10.5.5.31;
        default-lease-time 600;
        max-lease-time 7200;}
    8. 停止 wpa_supplicant 服务,并重启 wlan0
      注意:从这一步开始最好进入超级用户的模式
      第一次进入超级用户,请按照下面进行操作
      设置进入 root 用户的密码:
      sudo passwd root

      然后输入 3 次密码,设置密码、确认密码、第二次确认
      进入 root 用户:

      su root / sudo su

      然后输入密码
      退出 root 用户:

      su sunrise

      输入下面的命令停止 wpa_supplicant 服务,并重启 wlan0

      systemctl stop wpa_supplicant
    9. 启动 hostapd 服务
      sudo hostapd -B /etc/hostapd.conf

      会打印以下信息:

      root@ubuntu:~# sudo hostapd -B /etc/hostapd.conf
      Configuration file: /etc/hostapd.conf
      Using interface wlan0 with hwaddr 08:e9:f6:af:18:26 and ssid "sunrise"
      wlan0: interface state UNINITIALIZED->ENABLED
      wlan0: AP-ENABLED
    10. 配置无线接口 wlan0 的 IP 和网段 注意要跟上面的配置一致。
      sudo ifconfig wlan0 10.5.5.1 netmask 255.255.255.0
    11. 开启 dhcp 服务器,连上热点会从 10.5.5.100 到 10.5.5.255 之间分配一个 ip 地址给客户端。
      sudo systemctl start isc-dhcp-server
      sudo systemctl enable isc-dhcp-server
      打开手机连接 Sunrise 这个热点名
    12. Sunrise wifi.png
    13. 切换回 Station 模式
      # 停止 hostapd
      killall5 -9 hostapd
      # 清除 wlan0 的地址
      ip addr flush dev wlan0
      sleep 0.5
      ifconfig wlan0 down
      sleep 1
      ifconfig wlan0 up
      # 重启 wpa_supplicant
      systemctl restart wpa_supplicant
      # 连接热点, 具体操作可以查看上一章节 “无线网络”
      wifi_connect "JSBPI" "waveshare0755"
    14. DNS 服务

        DNS(Domain Name Server)是进行域名(domain name)和与之相对应的 IP 地址转换的服务器。开发板 DNS 配置过/etc/systemd/resolved.conf 文件管理,用户可通过修改该文件完成 DNS 相关配置, 在其中取消 #DNS 前面的 # 号
        1. 修改/etc/systemd/resolved.conf 文件:
          sudo vim /etc/systemd/resolved.conf

          添加 DNS 服务器地址:

          DNS=8.8.8.8 114.114.114.114
        2. 使能新的 DNS 配置:
          sudo systemctl restart systemd-resolved
          sudo systemctl enable systemd-resolved
          sudo mv /etc/resolv.conf /etc/resolv.conf.bak
          sudo ln -s /run/systemd/resolve/resolv.conf /etc/

      CPU 调频策略

        开发板在 Linux 内核中采用 CPUFreq 驱动对 CPU 工作状态进行管理,默认状态为 ondemand 模式,此时 CPU 会根据负载动态调节频率,以达到降功耗目的,用户可通过如下命令将 CPU 强制工作在 1.2GHz 最高频率下:
        sudo bash -c 'echo performance > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor' 

        开发板在系统中提供了超频功能,可将CPU最高频率从1.2GHz提升到1.5GHz,配置命令如下:

        sudo bash -c 'echo 1 > /sys/devices/system/cpu/cpufreq/boost'

        注意,CPU 超频可能会造成系统稳定性问题,如遇稳定性问题,需要关闭超频功能,命令如下:

        sudo bash -c 'echo 0 > /sys/devices/system/cpu/cpufreq/boost'

        特别声明: CPU 超频仅限于开发者 Geek 尝试使用,在做超频处理前,需要保证给芯片做好扇热措施,保证 CPU 长时间运行下,芯片结温能够保持在 95 摄氏度以下,避免因芯片在高温情况下长时间运行导致芯片故障。CPU 超频同时会导致一些目前还无法预知的芯片可靠性问题,请开发者谨慎操作。查看芯片当前的结温温度、CPU 运行频率、BPU 运行频率和 BPU 使用率的命令如下:

        sudo hrut_somstat

    蓝牙

      调用脚本完成初始化
      sudo startbt6212.sh

      脚本调用初始化完成了以下工作:

      • 复位蓝牙
      • 创建 messagebus 用户和用户组,dbus-daemon 程序运行时需要使用该用户
      • 运行 brcm_patchram_plus 完成蓝牙的驱动加载和固件加载
      • 循环检查 /sys/class/bluetooth/hci0 目录是否存在,确认蓝牙驱动已经正常运行
      • 出现 Done setting line discpline 表示蓝牙启用成功
      • 执行 hciconfig hci0 up 完成蓝牙的 Link Up
      • 执行 hciconfig hci0 piscan 进行蓝牙扫描,本步骤可以根据情况去掉
      • 如下图:

      Initialization.png

      • 执行成功后,确认以下进程是否正常运行:
      cd /usr/bin
      *ls #查看是否有dbus-daemon和brcm_patchram_plus文件
      *cd ..#返回上一级
      *cd lib/bluetooth #进入目录
      *ls #查看是否有bluetooth文件

      命令行操作

      进入交互模式下的蓝牙配置界面

      sudo bluetoothctl

      Bluetoothctl.png
      表示蓝牙已被识别
      输入show查看蓝牙详细信息
      Show.png
      注意蓝牙的Powered(上电)、Discovera(可被搜索到)的状态

      power on      使能蓝牙
      power off     关闭蓝牙
      discoverable on 使设备可以被检测到
      discoverable off 使设备无法被检测到
      scan on 开始扫描附近的蓝牙设备
      scan off 关闭扫描

      配对对应的蓝牙设备,注意根据提示输入 yes

      pair [targetMAC] 
      比如:pair 9C:5A:81:3E:97:4C

      配对成功后,使用指令下次自动连接

      trust [targetMAC]
      比如:trust 9C:5A:81:3E:97:4C

      Connect.png

      Bluetoothctl 命令扩展

      • exit :退出 bluetoothctl 交互界面
      • help :获取 bluetoothctl 支持的命令表
      • Connect :连接 BLE 设备,输入 connect BLE MAC 连接指定 BLE 设备,连接成功会提示 connect successfully, 第一次连接成功后,会把该 BLE 设备支持的属性都显示出来;无法搜索到指定设备,会提示 not available
      • disconnect :断开设备连接

      更多操作请访问 BlueZ 官网 :

      http://www.bluez.org/
      https://blog.csdn.net/zhuo_lee_new/article/details/106626680

      桌面软件操作

      选择右上角的图标或菜单栏对蓝牙进行操作
      Bluetooth-software1.png
      或者点击Application。
      Bluetooth-software2.png
      Bluetooth Adapters :用来配置本机蓝牙设置
      Bluetooth-software3.png
      tooth Manager :用来扫描蓝牙设备并连接
      Bluetooth-software4.png

      拓展

      查看是否识别蓝牙模块:
      hciconfig -a
      查看蓝牙模块的地址:
      hcitool dev
      激活蓝牙:
      sudo hciconfig hci0 up
      此次测试设置蓝牙模块为服务端且不需要配对码:
      hciconfig hci0 noauth

      编辑文件,开启蓝牙设备:

      sudo vi /etc/systemd/system/dbus-org.bluez.service

      找到ExecStart=/usr/lib/bluetooth/bluetoothd,更改并添加为:

      ExecStart=/usr/lib/bluetooth/bluetoothd -C
      ExecStartPost=/usr/bin/sdptool add SP

    文件传输

    samba

    操作方法
  • 打开终端,查询Linux版本号
    cat /etc/issue
    Linux Release.png
  • 更新当前软件
    sudo apt-get upgrade
    sudo apt-get update
    sudo apt-get dist-upgrade
  • 安装samba软件
    sudo apt-get install samba samba-common

    检查是否成功安装samba服务:

    samba -V   (如果出现下面的版本号说明已经安装了samba服务)

    Samba Release.png

  • 创建一个共享samba目录
    sudo mkdir /home/share
  • 给共享的目录设置权限
    sudo chmod 777 /home/sunrise
  • 添加samba访问账号和密码
    注意:这里需要和配置文件里的对应 添加samba用户用于其他人或设备认证,这里添加的用户需要在系统账号中存在,否则会添加失败
    sudo smbpasswd -a sunrise

    然后输入访问密码

  • 扩展
    创建用户名映射文件并配置(根据配置文件来定义)
    sudo vim /etc/samba/smbusers

    在文件中粘贴保存

    share= "network username"
  • smbpasswd命令的用法
    smbpasswd 命令的用法
    smbpasswd -a 增加用户(要增加的用户必须以是系统用户)
    smbpasswd -d 冻结用户,就是这个用户不能在登录了
    smbpasswd -e 恢复用户,解冻用户,让冻结的用户可以在使用
    smbpasswd -n 把用户的密码设置成空. 要在 global 中写入 null passwords -true
    smbpasswd -x 删除用户
    # 查看 samba 用户列表(需要 root 权限)
    pdbedit -L
    # 对 samba 用户进行管理(用户已经在系统中创建)(需要 root 权限)
    smbpasswd -h #查看支持的命令列表
    # 异常时可查看日志情况
    cat /var/log/samba/log.%m
    
  • 备份smb.conf配置文件
    sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
  • 配置 samba 的配置文件
    这里如果失误,可以使用之前备份的文件复原
    sudo vi /etc/samba/smb.conf

    在配置文件 smb.conf 的最后添加下面的内容:

    [global]
      workgroup = WORKGROUP
      unix charset = UTF-8
      dos charset = cp936
      guest ok = no
      security = user
      username map = /etc/Samba/smbusers

    [share]
      comment = Shared Folder with username and password
      path = /home/sunrise/
      public = no
      valid users = sunrise
      browsable = no
      create mask = 777
      directory mask = 777
      force user = sunrise
      force group = sunrise
      available = yes
      browseable = yes
      writable = yes

    上述操作的意义: [global] 创建工作组 设定 Samba Server 所要加入的工作组或者域

    workgroup = WORKGROUP
    

    为了防止出现中文目录乱码的情况。其中根据你的 local,UTF-8 有可能需要改成 cp936

    display charset = UTF-8
    unix charset = UTF-8
    dos charset = cp936
    

    是否允许 guest 用户访问

    guest ok = no
    

    注:如果 #security 存在就直接修改,不存在就创建

    security = user
    

    安全模式 我们设置用户安全级别

    security = user
    

    说明:用来定义用户名映射,比如可以将 root 换成 administrator、admin 等。不过要事先在 smbusers 文件中定义好。 比如:root = administrator admin,这样就可以用 administrator 或 admin 这两个用户来代替 root 登陆 Samba

    Server,更贴近 windows 用户的习惯。
    username map = /etc/Samba/smbusers
    

    共享名,该共享标签,该名字为在电脑上看到的共享名 注意网络映射的路径是这标签名字不是共享路径的名字 [share] 该共享描述

    comment = Shared Folder with username and password
    

    共享文件夹路径

    path = /home/sunrise/
    

    表示是否允许匿名访问该共享目录

    public = no
    

    配置的 Samba 访问账号 指明可以访问的用户

    valid users = sunrise
    

    表示是否可以在 Window Explorer 中显示该目录

    browsable = no
    

    指明新建立的文件的属性

    create mask = 777
    

    指明新建立的目录的属性

    directory mask = 777
    force group 和 force user 规定创建的文件或文件夹的拥有者和组拥有者是谁
    

    一般这两个值来空,则表示拥有者和组拥有者为创建文件者。 如设定值,如 force

    group=sunrise
    Force user=sunrise,则不管是谁创建的文件和文件夹,拥有者都为 sunrise 和 sunrise 组。
    force user 强制把建立文件的属主是谁。如果我有一个目录,让 guest 可以写,那么 guest就可以删除,
    

    如果我用force user=sunrise强制建立文件的属主是sunrise,同时限制create mask = 0755, 这样 guest 就不能删除了。

    force user = sunrise
    force group = sunrise
    available 用来指定该共享资源是否可用
    available = yes
    

    共享路径读权限 设置共享是否可浏览,如果 no 则表示隐藏,需要通过"//ip/共享目录"进行访问

    browseable = yes
    

    共享路径写权限

    writable = yes
  • 重启 samba 服务器
    sudo service smbd restart 或者 /etc/init.d/samba restart

    有的版本路径不是/etc/init.d/samba 可以尝试用:

    sudo /etc/init.d/samba restart
    #sudo /etc/init.d/samba-ad-dc restar
    
  • 在电脑上依次点击电脑文件资源管理器,网络,在地址栏输入旭日 X3 派的IP地址回车,便可以使用文件共享功能
    Share.png
    将共享路径映射到 win 磁盘(可选)

    若经常使用的共享,可直接映射为 Windows 的磁盘,不用每次都输 ip,但旭日 X3 派IP变了需要重新映射,所以建议不要经常修改IP,右键,选择映射网络驱动器。
    Map the network driver disk-1.png Map the network driver disk-2.png

    开启win 的 samba 客服端

    如果上述方法不可行,尝试以下方法:
    Win10 依次打开控制面板->程序->windows 功能启动或关闭->打开 smb 客户端,重启生效。
    Open SMB Client Portal.png


    官方资料

    软件

    示例程序

    FAQ

    技术支持


    联系人:张工
    邮箱:3004637648@qq.com
    QQ:3004637648
    微信:扫下方二维码添加
    QRCode SiminZhang.png

    说明:进行售后服务前,请准备好客户信息(定货单位、定货人等),以供验证