• 在rockpis上安装node-red 1.2.7


    node-red 1.0.x 的时候重新安装过。上篇里有错误描述的地方,以此篇中改正。

    rockpis是一款低功耗的小板子,arm-cortex a35架构,4核心。不到1瓦的功耗中,有线网卡占了一半。某宝上购买,建议买不带存储的型号,70元的价位。

    树莓派则是功耗高,发烫。

    恩智浦的 i.mx6ull 是上一代低功耗架构 A7的芯片,老了,太慢。米家网关(第二款)用过这个芯片。

    系统的准备。用balenaEtcher-Portable 将官方提供的系统镜像烧写到卡里。用 rock 作为用户名和密码登录。

    登陆后显示 Welcome to Ubuntu 18.04 LTS (GNU/Linux 4.4.143-55-rockchip-g6b7accbc999b aarch64 

    修改为root登录,密码设为 rock 吧。

    rock@rockpis:~$ sudo passwd root
    Enter new UNIX password: rock
    Retype new UNIX password: rock
    passwd: password updated successfully

    修改sshd(不是ssh)配置文件,允许root登录。

    rock@rockpis:~$ su root
    Password: rock

    root@rockpis:~# vi /etc/ssh/sshd_config
    按下 insert 键,添加下行内容。
    PermitRootLogin yes
    按 esc键,输入  :wq  (冒号 wq)保存和退出

    apt update -y
    apt clean

    这里不是 apt upgrade。显示内存卡容量和内容容量如下。

    root@rockpis:/usr/local# df -hT
    Filesystem Type Size Used Avail Use% Mounted on
    udev devtmpfs 210M 0 210M 0% /dev
    tmpfs tmpfs 43M 304K 43M 1% /run
    /dev/mmcblk0p2 ext4 15G 541M 14G 4% /
    tmpfs tmpfs 213M 0 213M 0% /dev/shm
    tmpfs tmpfs 5.0M 0 5.0M 0% /run/lock
    tmpfs tmpfs 213M 0 213M 0% /sys/fs/cgroup
    tmpfs tmpfs 43M 0 43M 0% /run/user/0


    root@rockpis:/usr/local# free -h
              total  used    free   shared   buff/cache   available
    Mem: 425M   36M   166M   304K   222M   378M
    Swap: 0B   0B   0B

    安装解压缩算法。

    node-v14.15.4-linux-arm64.tar.xz

    用 winSCP将 node-v14.15.4-linux-arm64.tar.xz 上传到 /usr/local/目录下(非必须)

    回到命令行,cd /usr/local,运行

    node-v14.15.4-linux-arm64.tar.xz

    mv node-v14.15.4-linux-arm64 ./node

    rm -f node-v14.15.4-linux-arm64.tar.xz

    ln -s /usr/local/node/bin/node /usr/bin/node
    ln -s /usr/local/node/lib/node_modules/npm/bin/npm-cli.js /usr/bin/npm
    ln -s /usr/local/node/lib/node_modules/npm/bin/npx-cli.js /usr/bin/npx

    这里没有在修改环境变量path。在systemd中path不好用,所以用软连方式。启动脚本red.js里,path也不好用。

    不用重启,也不用source变量。查看下

    root@rockpis:/usr/local# npm -v
    6.14.10
    root@rockpis:/usr/local# node -v
    v14.15.4
    root@rockpis:/usr/local# npx -v
    6.14.10

    root@rockpis:/usr/local# mkdir nodered
    root@rockpis:/usr/local# cd nodered
    建目录,存放nodered的程序。先完善编译环境。

    root@rockpis:/usr/local/nodered# apt install gcc g++ make -y
    root@rockpis:/usr/local/nodered# apt install python3 -y

    npm install --save node-pre-gyp --registry=https://registry.npm.taobao.org

    nodejs中已经内置了 node-gyp,这个算是是编译的管理方式。

    npm install --save node-pre-gyp --registry=https://registry.npm.taobao.org

    剩下的各项,基本上是上一篇中的内容。

    这次,串口似乎没有问题了,不用单独安装了。(安装 modbus就行)

    安装完成,启动后,占用空间如下

    root@rockpis:~# df -h
    Filesystem Size Used Avail Use% Mounted on
    udev 210M 0 210M 0% /dev
    tmpfs 43M 300K 43M 1% /run
    /dev/mmcblk0p2 15G 1.2G 13G 9% /
    tmpfs 213M 0 213M 0% /dev/shm
    tmpfs 5.0M 0 5.0M 0% /run/lock
    tmpfs 213M 0 213M 0% /sys/fs/cgroup
    tmpfs 43M 0 43M 0% /run/user/0


    root@rockpis:~# free -h
    total used free shared buff/cache available
    Mem: 425M 122M 105M 300K 197M 292M
    Swap: 0B 0B 0B

    systemd的脚本 nodered.service,内容如下

    [Unit]
    Description=Node-RED graphical event wiring tool
    Wants=network.target
    Documentation=http://nodered.org/docs/hardware/raspberrypi.html

    [Service]
    Type=simple
    User=root
    Group=root
    WorkingDirectory=/var/nodered/

    Nice=5
    Environment="NODE_OPTIONS=--max_old_space_size=256"
    ExecStart=/usr/local/nodered/node_modules/node-red/red.js
    # Use SIGINT to stop
    KillSignal=SIGINT
    # Auto restart on crash
    Restart=on-failure
    # Tag things in the log
    SyslogIdentifier=Node-RED
    #StandardOutput=syslog

    [Install]
    WantedBy=multi-user.target

  • 相关阅读:
    Microsoft Word 段前距设置和页眉设置
    JavaScript 跨域小总结
    JavaScript 闭包系列二(匿名函数及函数的闭包)

    JavaScript 变量作用域
    JavaScript 闭包系列一
    JavaScript 继承
    JavaScript 对象的创建
    MySQL(2): 窗口函数备份与恢复性能优化权限管理
    组建LAN
  • 原文地址:https://www.cnblogs.com/htsky/p/14326120.html
Copyright © 2020-2023  润新知