阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

如何搭建树莓派的Net与NodeJS运行环境

424次阅读
没有评论

共计 8426 个字符,预计需要花费 22 分钟才能阅读完成。

树莓派是当前最火的嵌入计算平台没有之一,树莓派可以给我们无数的想象,树莓派的高性能、低功耗、低成本、可扩展性(最新的树莓派原生支持 WIFI 和蓝牙,这功能太赞了)深受大家的喜爱。虽然树莓派到目前为止已经很好安装系统了。但是要想方便的使用和部署开发的软件还是比较麻烦的。

  安装环境的话,你的有树莓派硬件如何搭建树莓派的 Net 与 NodeJS 运行环境(此图为:树莓派 3 Model B),你还得需要一个支持 HDMI 显示器(电视机也可以) 如何搭建树莓派的 Net 与 NodeJS 运行环境 、HDMI 线如何搭建树莓派的 Net 与 NodeJS 运行环境、MicroSD 卡(8G+,Class10+ 级别) 如何搭建树莓派的 Net 与 NodeJS 运行环境 、电源适配器(5V、2A+、MicroUSB 接口)如何搭建树莓派的 Net 与 NodeJS 运行环境、读卡器(支持 MicroSD 卡) 如何搭建树莓派的 Net 与 NodeJS 运行环境 ,至于还有键盘、鼠标、散热片、风扇、保护壳等。

本文相关软件工具 到 Linux 公社 1 号 FTP 服务器下载

—————————————— 分割线 ——————————————

FTP 地址:ftp://ftp1.linuxidc.com

用户名:ftp1.linuxidc.com

密码:www.linuxidc.com

在 2016 年 LinuxIDC.com\12 月 \ 如何搭建树莓派的 Net 与 NodeJS 运行环境 \

下载方法见 http://www.linuxidc.com/Linux/2013-10/91140.htm

—————————————— 分割线 —————————————— 

  有了这些东西就可以开始搭建环境,下面的例子以树莓派 3 Model B 为硬件搭建。

  1. 安装系统

  在官网下载 NOOBS,NOOBS 相当 PC 的 BIOS,手机的 Recovery。用于引导和配置系统硬件环境,这里我下载的是 NOOBS 带 Raspbian 桌面环境的版本。

如何搭建树莓派的 Net 与 NodeJS 运行环境

如何搭建树莓派的 Net 与 NodeJS 运行环境

准备 MicroSD,并用工具格式化 SDFormatter,选择待格式化的盘符,点击进行格式化(下载见 Linux 公社 1 号 FTP 服务器)。

如何搭建树莓派的 Net 与 NodeJS 运行环境

  解压 NOOBS,拷贝 NOOBS_XXX 解压文件夹下面的文件与文件夹到 MicroSD 的根目录。

如何搭建树莓派的 Net 与 NodeJS 运行环境

将 MicroSD 插入树莓派,接上显示器与电源、鼠标、键盘。(树莓派电路自身是裸露的,千万不要直接与金属表面接触,注意释放手上静电)。

如何搭建树莓派的 Net 与 NodeJS 运行环境

  开机出现彩色封面表示正常启动,系统即将出现引导界面,点击“Shift”键指导进入安装界面。

如何搭建树莓派的 Net 与 NodeJS 运行环境

如何搭建树莓派的 Net 与 NodeJS 运行环境

  进入一下界面,表示大功告成,选择 Raspbian,点击 Install,进行安装系统。

如何搭建树莓派的 Net 与 NodeJS 运行环境

如何搭建树莓派的 Net 与 NodeJS 运行环境

如何搭建树莓派的 Net 与 NodeJS 运行环境

  如何进行分辨率适配?在 NOOBS 的管理界面中找到“EditConfig”,进入编辑框,找到 hdmi_group 和 hdmi_mode 的值对应想要调整的分辨率,其他分辨率可自行谷歌、百度。

如何搭建树莓派的 Net 与 NodeJS 运行环境

以下是计算机显示器使用的分辨率。这些分辨率的 hdmi_group=2

hdmi_mode=1    640×350  85Hz

hdmi_mode=2    640×400  85Hz

hdmi_mode=3    720×400  85Hz

hdmi_mode=4    640×480  60Hz

hdmi_mode=5    640×480  72Hz

hdmi_mode=6    640×480  75Hz

hdmi_mode=7    640×480  85Hz

hdmi_mode=8    800×600  56Hz

hdmi_mode=9    800×600  60Hz

hdmi_mode=10  800×600  72Hz

hdmi_mode=11  800×600  75Hz

hdmi_mode=12  800×600  85Hz

hdmi_mode=13  800×600  120Hz

hdmi_mode=14  848×480  60Hz

hdmi_mode=15  1024×768  43Hz  DO NOT USE

hdmi_mode=16  1024×768  60Hz

hdmi_mode=17  1024×768  70Hz

hdmi_mode=18  1024×768  75Hz

hdmi_mode=19  1024×768  85Hz

hdmi_mode=20  1024×768  120Hz

hdmi_mode=21  1152×864  75Hz

hdmi_mode=22  1280×768        reduced blanking

hdmi_mode=23  1280×768  60Hz

hdmi_mode=24  1280×768  75Hz

hdmi_mode=25  1280×768  85Hz

hdmi_mode=26  1280×768  120Hz reduced blanking

hdmi_mode=27  1280×800        reduced blanking

hdmi_mode=28  1280×800  60Hz

hdmi_mode=29  1280×800  75Hz

hdmi_mode=30  1280×800  85Hz

hdmi_mode=31  1280×800  120Hz reduced blanking

hdmi_mode=32  1280×960  60Hz

hdmi_mode=33  1280×960  85Hz

hdmi_mode=34  1280×960  120Hz reduced blanking

hdmi_mode=35  1280×1024 60Hz

hdmi_mode=36  1280×1024 75Hz

hdmi_mode=37  1280×1024 85Hz

hdmi_mode=38  1280×1024 120Hz reduced blanking

hdmi_mode=39  1360×768  60Hz

hdmi_mode=40  1360×768  120Hz reduced blanking

hdmi_mode=41  1400×1050      reduced blanking

hdmi_mode=42  1400×1050 60Hz

hdmi_mode=43  1400×1050 75Hz

hdmi_mode=44  1400×1050 85Hz

hdmi_mode=45  1400×1050 120Hz reduced blanking

hdmi_mode=46  1440×900        reduced blanking

hdmi_mode=47  1440×900  60Hz

hdmi_mode=48  1440×900  75Hz

hdmi_mode=49  1440×900  85Hz

hdmi_mode=50  1440×900  120Hz reduced blanking

hdmi_mode=51  1600×1200 60Hz

hdmi_mode=52  1600×1200 65Hz

hdmi_mode=53  1600×1200 70Hz

hdmi_mode=54  1600×1200 75Hz

hdmi_mode=55  1600×1200 85Hz

hdmi_mode=56  1600×1200 120Hz reduced blanking

hdmi_mode=57  1680×1050      reduced blanking

hdmi_mode=58  1680×1050 60Hz

hdmi_mode=59  1680×1050 75Hz

hdmi_mode=60  1680×1050 85Hz

hdmi_mode=61  1680×1050 120Hz reduced blanking

hdmi_mode=62  1792×1344 60Hz

hdmi_mode=63  1792×1344 75Hz

hdmi_mode=64  1792×1344 120Hz reduced blanking

hdmi_mode=65  1856×1392 60Hz

hdmi_mode=66  1856×1392 75Hz

hdmi_mode=67  1856×1392 120Hz reduced blanking

hdmi_mode=68  1920×1200      reduced blanking

hdmi_mode=69  1920×1200 60Hz

hdmi_mode=70  1920×1200 75Hz

hdmi_mode=71  1920×1200 85Hz

hdmi_mode=72  1920×1200 120Hz reduced blanking

hdmi_mode=73  1920×1440 60Hz

hdmi_mode=74  1920×1440 75Hz

hdmi_mode=75  1920×1440 120Hz reduced blanking

hdmi_mode=76  2560×1600      reduced blanking

hdmi_mode=77  2560×1600 60Hz

hdmi_mode=78  2560×1600 75Hz

hdmi_mode=79  2560×1600 85Hz

hdmi_mode=80  2560×1600 120Hz reduced blanking

hdmi_mode=81  1366×768  60Hz

hdmi_mode=82  1080p    60Hz

hdmi_mode=83  1600×900        reduced blanking

hdmi_mode=84  2048×1152      reduced blanking

hdmi_mode=85  720p      60Hz

hdmi_mode=86  1366×768        reduced blanking

修改系统默认密码、位置、时区、键盘、WiFi 地区。

如何搭建树莓派的 Net 与 NodeJS 运行环境

如何搭建树莓派的 Net 与 NodeJS 运行环境

  开启 VNC,SSH 方面远程无屏管理。

如何搭建树莓派的 Net 与 NodeJS 运行环境

  修改系统用户密码。

如何搭建树莓派的 Net 与 NodeJS 运行环境

  获取 ROOT 权限打开命令终端(Ctrl + Alt + T),输入以下内容(“sudo”是临时使用最高权限执行命令的意思)。

sudo passwd root
执行此命令后系统会提示输入两遍的 root 密码,输入你想设的密码即可,然后在执行
sudo passwd –unlock root

  修改软件中心镜像地址提高下载速度,镜像地址可以自行谷歌、百度。

su #(如果已经是 root 账户登录,即可跳过此步骤)
cd /etc/apt/&&mv sources.list sources.list.bak #(备份现有的源文件)
sudo nano /etc/apt/sources.list #(添加新配置文件)
=================
deb http://mirrors.cqu.edu.cn/Raspbian/raspbian/ wheezy main contrib non-free rpi #(添加重庆大学的镜像)
#Ctrl + O、Enter、Ctrl + X #保存退出
=================
sudo apt-get update && apt-get upgrade #(测试更新)

文件授权,注意不要滥用。

sudo chmod 777 /xxx  #目录为 Everyone
sudo chmod -R 777 /xxx  #目录以及子文件全部为 Everyone

  输入法管理器与输入法安装,我这里选择 iBus(因为符合国人的操作习惯,设置也比较人性化点点,同时内置拼音。但是不能和 PC 的国产输入法比较。���实还有 fcitx 输入法管理器)

sudo apt-get install ibus ibus-pinyin

如何搭建树莓派的 Net 与 NodeJS 运行环境

配置开机自动启动方面使用,默认下每次开机需要手动启动。

# 添加自启动脚本
cd /home/pi
cd .config
mkdir autostart
cd autostart
# 添加脚本文件(可以写入多个脚本文件,用于配置不同分辨率连接)
nano input.desktop
# 添加脚本
[Desktop Entry]
Type=Application
Name=InputManger
Exec=ibus-daemon –xim
StartupNotify=false
#Ctrl + O、Enter、Ctrl + X #保存退出

设置桌面样式

如何搭建树莓派的 Net 与 NodeJS 运行环境

如何搭建树莓派的 Net 与 NodeJS 运行环境

  永久挂载新分区

df -h #查看未使用的分区
sudo umount /dev/xxxx #对应分区卸载,记住你的这个分区路径
sudo mkdir /xxx #创建自定义的挂载位置,将卸载的分区挂载到自己的目录
 
# 临时挂载
sudo mount /dev/xxx /xxx #将分区挂载到自己创建的目录
 
# 永久挂载
sudo nano /etc/fstab #进入系统的磁盘分区的配置表,系统开机会进行分区映射
# 添加一行,将分区挂载到自定义的位置
======================================================
/dev/xxx  /xxx    auto    defaults          0      0
======================================================
#Ctrl + O、Enter、Ctrl + X #保存退出

  制作系统镜像

  镜像是个非常方便的东西,可以将系统打包。如果运行的系统损坏或不想要了,可以用备份的镜像文件将其恢复。通过 Win32DiskImager 进行备份和还原,平时备份可以将镜像压缩,可以节约空间。(下载见 Linux 公社 1 号 FTP 服务器

如何搭建树莓派的 Net 与 NodeJS 运行环境

第一次如何恢复根分区容量

# 运行命令终端

sudo raspi-config #进入系统配置

如何搭建树莓派的 Net 与 NodeJS 运行环境

  2. 远程桌面的安装

  最新的 Raspbian 内置 VNCServer 工具,所以就不需要在单独安装 VNCServer 工具了,上一步已经启动的 VNC 功能,同时需要注意的是用户名,密码。VNC 可以添加多个不同名称的端口

如何搭建树莓派的 Net 与 NodeJS 运行环境

如何搭建树莓派的 Net 与 NodeJS 运行环境

# 添加自启动脚本
cd /home/pi
cd .config
mkdir autostart
cd autostart
# 添加脚本文件(可以写入多个脚本文件,用于配置不同分辨率连接)
nano vnc.desktop #脚本名称
# 添加脚本
[Desktop Entry]
Type=Application
Name=VNC #名称
Exec=vncserver -geometry 1920×1080 :1 #设置分辨率 1920×1080, 以及 VNC 端口为 1
StartupNotify=false
#Ctrl + O、Enter、Ctrl + X #保存退出

使用 VNCViewer 进行远程连接,VNCViewer 支持多平台版本可以到官网下载。(下载见 Linux 公社 1 号 FTP 服务器

3. 安装 NodeJS

  在 NodeJS 官网下载安装包或在线安装,注意安装 ARM 版本。(下载见 Linux 公社 1 号 FTP 服务器

# 命令终端
cd /home/pi
 
# 离线安装
# 拷入 node-v6.9.1-linux-armv7l.tar.gz 到 /home/pi
 
# 在线安装
wget https://nodejs.org/dist/v6.9.1/node-v6.9.1-linux-armv7l.tar.gz
 
# 命令终端
tar zxvf node-v6.9.1-linux-armv7l.tar.gz 
sudo mv node-v6.9.1-linux-armv7l  /usr/local/bin
sudo ln /usr/local/bin/node-v6.9.1-linux-armv7l/bin/node /usr/local/bin/node
sudo ln -s /usr/local/bin/node-v6.9.1-linux-armv7l/lib/node_modules/npm/bin/npm /usr/local/bin/npm

NodeJSARM 版 NPM 存在路径问题,需要以下方式解决

尝试 npm - v 发现出错了,原因是路径问题,修改相对路径(注意查看脚本中的相对路径),跳转到 /usr/local/bin 目录。
打开文本 npm
贴上修改后的文件内容:
#!/bin/sh
(set -o igncr) 2>/dev/null && set -o igncr; # cygwin encoding fix
 
basedir=$(dirname `readlink -f $0`)
cd $basedir
 
case `uname` in
    *CYGWIN*) basedir=`cygpath -w “$basedir”`;;
esac
 
NODE_EXE=”$basedir/node.exe”
if ! [-x “$NODE_EXE”]; then
  NODE_EXE=node
fi
 
NPM_CLI_JS=”$basedir/node-v6.9.1-linux-armv7l/lib/node_modules/npm/bin/npm-cli.js”
if ! [-x “$NPM_CLI_JS”]; then
  NPM_CLI_JS=npm-cli.js
fi
 
case `uname` in
  *CYGWIN*)
    NPM_PREFIX=`”$NODE_EXE” “$NPM_CLI_JS” prefix -g`
    NPM_PREFIX_NPM_CLI_JS=”$NPM_PREFIX/node-v6.9.1-linux-armv7l/lib/node_modules/npm/bin/npm-cli.js”
    if [-f “$NPM_PREFIX_NPM_CLI_JS”]; then
      NPM_CLI_JS=”$NPM_PREFIX_NPM_CLI_JS”
    fi
    ;;
esac
 
“$NODE_EXE” “$NPM_CLI_JS” “$@”

4. 安装 Net 环境

  这里使用的是 Mono,而非 Net Core,因为 Net Core 坑太多了,不适合跨平台移植软件。还有做跨平台软件需要注意外部文件路径问题,通过 Path.DirectorySeparatorChar 获取平台路径特征与通过 AppDomain.CurrentDomain.BaseDirectory 获取运行程序的绝对根目录,同时,win32 的类库目前是不能被 Mono 运行的。Net 的类库是完全可运行,需要注意的是 Windows 下有些原生类库在 Mono 里面没有集成,需要设置生成时复制到输出目录。(下载见 Linux 公社 1 号 FTP 服务器

  首先下载 Mono 官方的源代码,然后在树莓派上进行编译,编译时间过长,清耐心等待数小时。安装过程中会出现依赖的软件未安装,导致安装停止,需要一步一步的进行安装依赖通过“sudo apt-get xxx”或“sudo apt-get xxx=xxx.xxx.xxx”来解决。

# 这里是案例,可以下载最新版进行编译,安装
# 下载官方源码包
wget http://download.mono-project.com/sources/mono/mono-4.0.1.44.tar.bz2
# 解压
tar -xvf mono-4.0.1.44.tar.bz2
# 切换路径
cd mono-4.0.1
# 配置编译安装路径
./configure –prefix=/usr/local
# 编译
make
# 安装
make install
 
# 注意安装 libgdiplus 类库,方便图像程序的运行,如:WinForm 等图像库相关的软件的使用

耐心等待数小时后,安装完成,可以用 C# 写个 HelloWorld 试试还有 WinForm 等,看看惊喜。如果还需要 AspNet 程序的运行,则需要安装 Jexus Web 服务器,用于支持 AspNet 程序的运行。以下是 Jexus 安装。(下载见 Linux 公社 1 号 FTP 服务器

# 安装
cd /tmp
wget linuxdot.net/down/jexus-5.6.5.tar.gz
tar -zxvf jexus-5.6.5.tar.gz
cd jexus-5.6.5
sudo ./install
 
# 更新
cd /tmp
sudo /usr/jexus/jws stop
wget http://linuxdot.net/down/jws-v5.6.4-arm.zip
tar -zxvf jws-v5.6.4-arm.zip
cd jws-v5.6.4-arm
sudo ./upgrade
sudo /usr/jexus/jws regsvr
sudo /usr/jexus/jws restart
 
=== 测试 /var/www/default/index.aspx=======
<%@Page Language=”C#”%>
<%=DateTime.Now.ToString()%>
==============================
 
# 添加自启动脚本
cd /home/pi
cd .config
mkdir autostart
cd autostart
# 添加脚本文件(可以写入多个脚本文件,用于配置不同分辨率连接)
nano webserver.desktop
# 添加脚本
[Desktop Entry]
Type=Application
Name=WebServer
Exec=sudo /usr/jexus/jws start
StartupNotify=false
#Ctrl + O、Enter、Ctrl + X #保存退出

以上是基本安装方式,随着版本更新,可能存在出入。

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-12/138070.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计8426字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19351
评论数
4
阅读量
7994051
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站 - 手机博物馆 -CHAZ 3D Experience 一句话介绍:一个用 3D 方式重温...
告别Notion焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁”

告别Notion焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁”

  告别 Notion 焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁” 引言 在数字笔记工...
如何安装2026年最强个人助理ClawdBot、完整安装教程

如何安装2026年最强个人助理ClawdBot、完整安装教程

如何安装 2026 年最强个人助理 ClawdBot、完整安装教程 一、前言 学不完,根本学不完!近期,一款名...
把小米云笔记搬回家:飞牛 NAS 一键部署,小米云笔记自动同步到本地

把小米云笔记搬回家:飞牛 NAS 一键部署,小米云笔记自动同步到本地

把小米云笔记搬回家:飞牛 NAS 一键部署,小米云笔记自动同步到本地 大家好,我是星哥,今天教大家在飞牛 NA...
4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

  4 盘位、4K 输出、J3455、遥控,NAS 硬件入门性价比之王 开篇 在 NAS 市场中,威...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
把小米云笔记搬回家:飞牛 NAS 一键部署,小米云笔记自动同步到本地

把小米云笔记搬回家:飞牛 NAS 一键部署,小米云笔记自动同步到本地

把小米云笔记搬回家:飞牛 NAS 一键部署,小米云笔记自动同步到本地 大家好,我是星哥,今天教大家在飞牛 NA...
星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛 NAS 硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话? 前言 在选择 NAS 用预...
支付宝、淘宝、闲鱼又双叕崩了,Cloudflare也瘫了连监控都挂,根因藏在哪?

支付宝、淘宝、闲鱼又双叕崩了,Cloudflare也瘫了连监控都挂,根因藏在哪?

支付宝、淘宝、闲鱼又双叕崩了,Cloudflare 也瘫了连监控都挂,根因藏在哪? 最近两天的互联网堪称“故障...
让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级 大家好,我是星哥,之前写了一篇文章 自己手撸一...
4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

  4 盘位、4K 输出、J3455、遥控,NAS 硬件入门性价比之王 开篇 在 NAS 市场中,威...