多年前的树莓派 B+ 重新工作

1. 前言

最近整理房间的时候,发现在一块大约在 2014 年购买的树莓派,看了下电路板,型号是 b+,看了下官网的参数:

  • CPU: ARM1176JZF-S 核心 700MHz 单核
  • RAM: 512MB

确实有点太弱了。

最近刚好想做一个家用的文件 Server。看了下树莓派官网的系统,发现还是支持 b+ 的,刚好使用。

2. 前置准备

有了 b+ 板子了,还需要:

  • microSD 卡:翻出了多年前的 8GB 的,刚好使用
  • 电源:5V 2A+(重要)
  • 电源线:一定能跑 2A+ 电流的优质线(重要)

电源和电源线都要保证 2A+,缺一不可,电源线的质量会限制电源的电流大小,直接导致板子供电不足。
对于 USB 外设,可以采用带有供电功能的 USB Hub。

3. 系统准备

首先开始安装系统。

3.1. 烧录软件 Win32 Disk Imager

在这里插入图片描述

Windows 平台用于将系统镜像烧录到 SD 卡中的工具。
下载地址:https://sourceforge.net/projects/win32diskimager/

3.2. 系统镜像下载

官方地址:https://www.raspberrypi.com/software/operating-systems/

根据适合自己硬件配置的操作系统去下载就可以。左侧会显示可安装的硬件版本:
在这里插入图片描述
针对 Raspberry Pi OS 有三个版本:

  • Raspberry Pi OS with desktop (推荐)
  • Raspberry Pi OS with desktop and recommended software
  • Raspberry Pi OS Lite

推荐 Raspberry Pi OS with desktop 版本(硬件支持,推荐使用 64 位的)。由于我这台机子过于老旧,虽然也可以安装这个桌面版,但毕竟硬件资源紧张,所以选择了 Lite 版。

如果从官网下载太慢,可以使用清华大学的镜像站 TUNA,国内速度很快:https://mirrors.tuna.tsinghua.edu.cn/raspberry-pi-os-images/。

下载目录如下:

  • raspios_arm64/:64 位桌面版
  • raspios_armhf/:32 位桌面版
  • raspios_full_arm64/:64 位完整桌面版
  • raspios_full_armhf/:32 位完整桌面版
  • raspios_lite_arm64/:64 位 Lite 版
  • raspios_lite_armhf/:32 位 Lite 版

如,我使用的是 32 位 Lite 版,所以完成在 TUNA 的下载地址就是:https://mirrors.tuna.tsinghua.edu.cn/raspberry-pi-os-images/raspios_lite_armhf/images/raspios_lite_armhf-2022-01-28/2022-01-28-raspios-bullseye-armhf-lite.zip

3.3. 烧录镜像

将刚下载的系统镜像解压。
在这里插入图片描述

打开 Win32 Disk Imager,选择 镜像 和 SD 卡后,进行写入即可。

烧录完成后,把 SD 卡插入 树莓派 中即可。

4. 环境配置

给 树莓派 插上电源线、网线,接上显示器,就可以开始了。

  • 默认用用户名:pi
  • 密码:raspberry

在这里插入图片描述

4.1. 开启 ssh

登录系统后,执行:sudo raspi-config 进行配置,如下配置:

  1. Interface Options
  2. SSH

在这里插入图片描述

进行开启。

然后就可以通过 ssh pi@ip 进行登录了。

4.2. 配置 apt 国内源

修改 /etc/apt/sources.list,配置为清华大学的源:

deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ bullseye main non-free contrib rpi

保留这一条就可以。

执行 sudo apt-get update 更新软解列表。

4.3. 安装 php

因为要做一个 php 的 server,所以这里直接使用了 php。

执行:

sudo apt install php

安装完成后,在浏览器打开 http://ip 就可以看到 apache 的 server 可用了。

在这里插入图片描述

4.4. 安装 node(可选)

这个步骤可选,如果你需要 node 就安装,不需要可以略过。

执行:

sudo apt install npm

安装 http-server:

 sudo npm --registry=https://registry.npmmirror.com -g i http-server

5. 安装 dashboard

下面都是基于 PHP 的。

5.1. 探针

可以使用 x-prober 的探针。

/var/www/html 目录下进行下载:

sudo wget https://api.inn-studio.com/download?id=xprober -O x.php

访问 http://ip/x.php 即可:

在这里插入图片描述

5.2. 文件管理

这里使用的是 tinyfilemanager,在 /var/www/html 目录下进行下载:

sudo wget https://github.com/prasathmani/tinyfilemanager/archive/refs/tags/2.4.3.zip -O tf.zip# OR 下载慢,可以使用 
sudo wget https://github.91chi.fun//https://github.com//prasathmani/tinyfilemanager/archive/refs/tags/2.4.3.zip -O tf.zipsudo unzip tf.zip
sudo mv tinyfilemanager-2.4.3 tf

浏览器访问:http://ip/tf/tinyfilemanager.php,默认用户/密码: admin/admin@123 :

在这里插入图片描述

这里要给目录加下权限,否则无法修改,这里直接简单粗暴设置一下:

sudo chmod a+rw -R /var/www/html

5.3 大文件分片上传

可以参考这个仓库:https://github.com/lecepin/multi-file-upload

6. 挂载移动硬盘

将移动硬盘插入 树莓派上,执行命令看下能否识别出来:

$ sudo fdisk -l | grep sda
Disk /dev/sda: 465.76 GiB, 500107862016 bytes, 976773168 sectors
/dev/sda1        2048 976769023 976766976 465.8G  7 HPFS/NTFS/exFAT

将硬盘挂载到 /mnt 中:

sudo mount /dev/sda1 /mnt

可以看到,已经挂载成功了:

$ sudo df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/root       7.1G  1.8G  5.0G  26% /
devtmpfs         87M     0   87M   0% /dev
tmpfs           215M     0  215M   0% /dev/shm
tmpfs            86M  648K   86M   1% /run
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
/dev/mmcblk0p1  253M   49M  204M  20% /boot
tmpfs            43M     0   43M   0% /run/user/1000
/dev/sda1       466G   75G  392G  17% /mnt

在 apache server 下建立一个软连接:

$ sudo ln -s /mnt /var/www/html/mnt

然后就可以直接访问了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/401596.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

create-react-app 使用代理做 mock

1. 背景 很多情况下,为了测试需要一些接口的 mock 场景,基于 create-react-app 生产的项目 好处在于它内置了这块代理的能力,给用户提供了很大的方便。 2. 代理方式 create-react-app 默认提供了两种方式,关联到 webpack-dev-s…

解决写文档对于图片边框的强迫症

1. 写文档的困扰 在写文档进行配图时,很多时候图片是白色背景的,会导致文章中的图片区域附近有大量空白的感觉,强迫症患者很难受。 目前语雀做的是很好的,可以给图片加边框或者阴影,而一些文档博客平台(C…

实现图片本地化 ServiceWorker + IndexedDB

1. 背景 在一些安全场景,或者一些本地化的场景(如本地化的 Markdown 记事本),如果有图片上传并需要查看的场景,在不上传到服务器的情况下,实现这个效果,通常是把图片 Base64 化,但编…

XState Viz 可视化和调试状态机

1. 前言 状态机的一大好处就是可以可视化状态,降低业务的理解成本和相互间的沟通成本。 目前 XState 官方提供的可视化工具已经做的很不错了,但用起来偏重,国内访问也比较慢。这边我再原基础上进行了优化,并增加了部分新功能&am…

国内高速前端 Unpkg CDN 替代方案

1. 背景 目前国内有很多 NPM 的 CDN,可以高速支持相关包文件的访问下载,如: BootCDN: www.bootcdn.cn七牛云: www.staticfile.org360: cdn.baomitu.com字节跳动: cdn.bytedance.com 但这些 CDN 并不全,很多 NPM 上的包 在这些 …

小米 12S Utra 莱卡水印生成在线工具

前言 最近看到小米 12S Utra 的发布,看了下详情页面,发现演示的照片都好看的,包含了品牌、设备、镜头、位置等信息,如下图所示: 作为一个摄影爱好者,也希望把自己的照片也输出这些信息。 但目前此类水印…

解决 Rust Tauri 1.0 构建时下载 WiX失败

Rust 啥都好,就是构建太慢太慢。用我的 M1 构建 Mac 应用 10 分钟内还能拿下,但其它普通配置的就太慢了,即便用 Github Actions 大约也近 30 分钟才能构建完: 找一台高配置的 Windows 主机,结果经历了长时间的编译之后…

Rust Wasm 图片转 ASCII 艺术

有一些隐藏在代码中的 ASCII 有意思的图片,如: /*__ooOoo_o8888888o88" . "88(| -_- |)O\ /O____/---\____. \\| |// ./ \\||| : |||// \/ _||||| -:- |||||_ \| | \\\ - /| | || \_| \---// |_/ |\ .-\__ -. -__/-.…

我的新书《PWA入门与实践》上市了

前言 我初接触PWA是在2017年年初,当时参加了一个前端分享会,其中一个主题就是与PWA相关的,介绍了PWA的Service Worker和安装到桌面的能力,以及这门技术未来的发展趋势,听完这个分享后,我就为PWA的一些能力…

Linux网络编程组播测试代码

Linux网络编程组播测试代码 (转载)组播客户端代码如下&#xff1a; #include <sys/types.h>#include <sys/socket.h>#include <arpa/inet.h>#include <stdio.h>#include <stdlib.h>#include <string.h>#define BUFLEN 255int main(int arg…

ubuntu下搭建tftp服务器

1.1 搭建tftp服务器TFTP&#xff08;Trivial File Transfer Protocol&#xff0c;简单文件传输协议&#xff09;&#xff0c;是一个基于UDP协议实现的用于在客户机和服务器之间进行简单文件传输的协议&#xff0c;适合于开销不大、不复杂的应用场合。TFTP协议专门为小文件传输而…

ubuntu 10.10 修改下载源的方法

打开Ubuntu的终端,输入sudo gedit /etc/apt/sources.list在最后加上如下源&#xff1a;deb http://mirror.lupaworld.com/ubuntu maverick main restricted universe multiversedeb http://mirror.lupaworld.com/ubuntu maverick-security main restricted universe multiverse…

Linux ARM交叉编译工具链制作过程

一、下载源文件 源代码文件及其版本与下载地址&#xff1a; Binutils-2.19.tar.bz2 http://ftp.gnu.org/gnu/binutils/ gcc-4.4.4.tar.bz2 http://mirrors.kernel.org/gnu/gcc/gcc-4.4.4/ Glibc-2.11.2.tar.bz2 Glibc-ports-2.11.tar.bz2 http://ftp.gnu.org/gnu/glibc/ Gmp-4.…

ARM开发板上iconv_open(utf-8, gb2312) 调用失败的解决方法(转)

ARM开发板上iconv_open("utf-8", "gb2312") 调用失败的解决方法 应用程序代码如下&#xff1a;static int code_convert(char* from_charset, char* to_charset, char* inbuf, size_t inlen, char* outbuf, size_t outlen){ iconv_t cd; char…

linux c语言获取时间

在程序中&#xff0c;经常需要输出系统的当前时间、计算程序的执行时间、使用计时器等。 一、时间的类型 1.格林威治标准时间 coordinated universal time(UTC)是世界标准时间&#xff0c;即常说的格林威治标准时间(greenwich mean time,GMT). 2.日历时间 日历时间(calendar ti…

source insight快捷键及使用技巧

source insight快捷键及使用技巧 退出程序 : AltF4 重画屏幕 : CtrlAltSpace 完成语法 : CtrlE 复制一行 : CtrlK 恰好复制该位置右边的该行的字符 :…

Crosstool-ng制作交叉编译工具链

Crosstool-ng制作交叉编译工具链 交叉编译器可以用现成的&#xff0c;比如CodeSourcery制作的交叉编译器&#xff0c;也可以自己制作&#xff0c;一般是用kernelgccglibcbinutils的源码包来编译安装&#xff0c;后来由于这个太麻烦于是就有类似crosstool这样的自动化配置工具。…

数学建模之聚类模型详解

聚类模型 引言 “物以类聚&#xff0c;人以群分”&#xff0c;所谓的聚类&#xff0c;就是将样本划分为由类似的对象组成的多个类的过程。聚类后&#xff0c;我们可以更加准确的在每个类中单独使用统计模型进行估计、分析或预测&#xff1b;也可以探究不同类之间的相关性和主…

嵌入式Linux启动过程中的问题积累

嵌入式Linux启动过程中的问题积累 Dongas 07-12-19 1.Bad Magic Number ## Booting image at 33000000 ... Bad Magic Number OMAP5912 OSK # &#xff08;tftp下载好kernel的uImage后就停止在这&#xff0c;不能启动kernel&#xff09; 问题原因&#xff1a;启动参数设置错误,…

使用BusyBox制作嵌入式Linux根文件系统

STEP 1&#xff1a;构建目录结构 创建根文件系统目录&#xff0c;主要包括以下目录/dev /etc /lib /usr /var /proc /tmp /home /root /mnt /bin /sbin /sys #mkdir /home/rootfs#cd /home/rootfs #mkdir dev etc lib usr var proc tmp home root …