solomonxie / blog-in-the-issues

A personalised tech-blog, notebook, diary, presentation and introduction.
https://solomonxie.github.io
68 stars 12 forks source link

RPi & Hardware Engineering 树莓派及硬件工程师 #26

Open solomonxie opened 6 years ago

solomonxie commented 6 years ago

这里只记录树莓派独有的问题。如果是Linux或网络相关的通用问题,应跳转到Linux专题Network专题

涉及领域

solomonxie commented 6 years ago

树莓派各型号对比

image

怎么查看硬件信息

查看树莓派硬件型号:

$ cat /sys/firmware/devicetree/base/model
>> Raspberry Pi 3 Model B Rev 1.2

#或
$ cat /proc/device-tree/model
>> Raspberry Pi 3 Model B Rev 1.2

查看全部硬件信息:

$ sudo apt-get install lshw

$ sudo lshw

image

solomonxie commented 6 years ago

树莓派修改Wifi和密码

参考文章。 参考文章2。

简单说,只需要改两个文件即可,甚至改一个文件即可。

抛开Linux系统问题,光树莓派的话,只需要打开/etc/wpa_supplicant/wpa_supplicant.conf这个文件编辑,里面会有明文显示wifi的登录名和密码,如果想改的话直接在这里改好保存退出就ok了。如下图:

image

图中我配置了两个Wifi的登录信息,这样的话,一个连不上可以自动连第二个。 在文中,很明显就可以找到登录名和密码的位置,增删改都不用多说。如果要增加一个WIFI信息,那就把整个network={...}复制出来一个改改就好了。

更高级设置

一般Linux系统都不是直接改上面那个文件的,实际上WIFI登录密码是直接写在/etc/network/interfaces这个文件里的。 但是树莓派默认不会在这个文件直接写wifi信息,而是让它读取额外的一个文件来找到wifi信息。 interfaces这个文件内容非常少非常简单,一看就明了,下图是这个文件的全部内容(忽略掉注释内容):

image

如图注

solomonxie commented 6 years ago

通过VNC远程连接树莓派桌面

在已经成功用ssh连接到树莓派到话,如果连接树莓派桌面,需要在树莓派中安装一个叫tightvncservervnc服务。

操作如下:

终端中输入sudo apt-get install tightvncserver

安装好后,输入tightvncserver回车,启动vnc服务。

然后就可以连接了。

Mac中,在文件夹Finder的菜单中,打开Go下的连接服务器,然后输入vnc://树莓派IP地址:5901。其中5901是默认的端口。 Windows上可能需要安装个软件来连接,可以自己查一查。

image

image

VNC中无法连接互联网

通过vnc连接到了树莓派桌面后,无论是浏览器还是桌面中打开的终端,皆无法连接到互联网。 但是SSH连接树莓派时,在命令行里均可以正常连接网络。 那么问题在于vnc了。目前暂没有找到解决方案。

solomonxie commented 6 years ago

树莓派命令行找不到ifconfig命令

command not found: ifconfig

参考回答。

可以用sudo ifconfig,或直接指定位置/sbin/ifconfig,或者先设置别名alias ifconfig="/sbin/ifconfg,然后再正常使用。

solomonxie commented 6 years ago

树莓派用HDMI连接电视显示"无信号"问题

试了很多次,用HDMI线把树莓派连接电视机,但每次都显示“无信号”。所以搜索了一圈,下面是解决方案。

参考树莓派官网论坛:HDMI monitors says NO SIGNAL (solved)

The Pi outputs a relatively weak HDMI signal. Some devices may not immediately notice the Pi's HDMI or may not do the negotiation. Setting the hdmi_force_hotplug=1 makes sure the Pi believes the monitor/TV is really there. You might also need to set config_hdmi_boost=4 or even higher (up to 9) if your display needs a stronger signal. If the display is a computer monitor, use hdmi_group=1 and if it is an older TV, try hdmi_group=2. Do not set hdmi_safe=1 as that overrides many of the previous options. Using a shorter or better quality HDMI cable might help. Make sure your Pi's power supply delivers 1A and not 500mA. If you see a problem with the red colour - either absent, or interference - then try a boost. However it might simply be that the display requires a stronger signal than the Pi can give.

主要方法是:

image

如果还是有问题,那么可以试着这么操作(不推荐):

用HDMI插上电视后,就连声音都有啦!(不用插音频线,HDMI自带音频传输)

solomonxie commented 6 years ago

树莓派控制风扇自动开启关闭

树莓派风扇一直开着确实很吵,所以即使会对cpu造成负担,我也不愿意插上风扇。 偶然看到了这篇文章,解决了这个大问题: 《让树莓派根据温度自动控制散热风扇的启停》WuSiYu Blog

solomonxie commented 6 years ago

❖ 树莓派连接USB摄像头

手头有一个闲置的USB摄像头,插在自己的笔记本上,能够正常使用,且不用装驱动。 然后想把它插在树莓派上试试。

参考:树莓派基于motion的usb摄像头监控

方法如下:

然后会看到浏览器一直在刷新显示这个小图像(分辨率不高)▼:

image

经过测试,只要这个motion一直开着,就支持热插拔,随时插上随时都有(需要刷新浏览器)。

关闭motion的daemon:

$ sudo killall -TERM motion

修改分辨率

默认的显示大小是320*240的,非常小,不清楚。所以我们可以把它改大。

还是到motion的配置文件里,找到widthheight,改成800600,如下: image

然后关闭重启motion

$ sudo killall -TERM motion
$ sudo motion

就会看到改大了的显示了:

image

注意,每次修改如果不显示,或者不成功。可能需要重启下树莓派,或者你的设置比例有问题。

solomonxie commented 6 years ago
solomonxie commented 6 years ago
solomonxie commented 6 years ago
solomonxie commented 6 years ago
solomonxie commented 6 years ago
solomonxie commented 6 years ago

❖ 小蚁1080P智能摄像机2 固件破解

这一款的英文名叫Yi 1080p Home

这个摄像头非常好用,所以想到要破解,在上面安装SSH和流媒体直播功能。

主要使用了Gihutb上的一个破解。 参考Github:shadow-1/yi-hack-v3 参考Home Assistant的中文说明:小蚁摄像头Hack

image

方法:

这是拔掉电源,再插上电源,重启摄像头。 然后进入正常的Wifi输入环节(如果以前输入过就略过)。 正常连上Wifi后,“想办法”找到这个摄像头的局域网IP。

我的方法最简单,就是直接到路由器后台查看连接的设备。比如我的是192.168.1.110。 那么就在浏览器里输入: 192.168.1.110 回车后就看到经典的刚刚刷进去的后台管理页面

image

设置方法:

安装后添加的特性:

solomonxie commented 6 years ago

树莓派更新国内源

更多源,请参考:树莓派—raspbian软件源(全)

需要修改两个文件:

然后运行更新:

$ sudo apt-get update
solomonxie commented 6 years ago

树莓派无法升级Ruby或安装Jekyll

我对Ruby没什么需求,主要是想在树莓派上安装Jekyll,而Jekyll依赖Ruby。

结果安装Jekyll报错:

image

根据Jekyll官方声明,Ruby必须2.2.5以上,可以本地树莓派最高只能升级到2.1.5。

以下是通过各种尝试找到的解决方案:

solomonxie commented 6 years ago

树莓派安装Docker

参考之前笔记:https://github.com/solomonxie/solomonxie.github.io/issues/27#issuecomment-422244201

solomonxie commented 6 years ago

树莓派修改GPU显存

树莓派上的内存是分一些给CPU用,分一些给GPU用的。GPU占用的默认是64M。 如果我们不用树莓派的桌面的话,没必要分那么多,可以把它降到最低:16M。 反过来,如果你用树莓派做视频播放、浏览网页,那么就要多分一点:最起码256M或512M。

参考:增加你的树莓派GPU显存(raspi-config)

方法一:在SD卡上修改根目录的配置文件/boot/config.txt

gpu_mem=16

image

方法二:运行raspi-config: Advanced Options -> Memory Split -> 输入GPU占用显存(如16M或512M)

image

修改后重启就可以了。

solomonxie commented 6 years ago

树莓派config.txt详解

solomonxie commented 6 years ago

❖ 树莓派各种系统试用 [DRAFT]

Raspbian

▶ 树莓派官方资源:所有Distros的历史版本

Raspbian Stretch

包括:

不稳定,速度慢。很多软件安装不了,缺乏依赖。比如最简单的ifstat都无法安装:

snip20180918_3 image

尝试了很多种方法,都不能解决这些依赖问题。

后面还试了很多常用程序,都是依赖问题无法解决。

放弃。

Raspbian Jessie

包括:

2017版的Jessie是最稳定最好用的版本。 无论是桌面、速度、安装程序等等,都没遇到什么大问题。

主要的限制有:

Raspbian Jessie 2015-09-28

这是Jessie面世的第一版。此前是Wheezy。

测试,在Rpi-3b 上无法正常使用,无法自动开启SSH和连接Wifi。

Raspbian Lite

Ubuntu Mate

以下版本都是Ubuntu Mate官网下载的。

ubuntu-mate-18.04-desktop-i386

这个版本连SD卡的boot分区都不给访问,所以不可能达到headless setup。

ubuntu-mate-16.04-desktop-armhf-raspberry-pi

这个版本有一个boot分区给你访问,但是没用。连上屏幕后发现,系统是完全未安装状态的,需要在屏幕上手动一步一步点下一步安装,非常慢,也非常麻烦。而且发现输入了密码也连不上wifi。

问题太多,不值得多花时间去解决问题。

其它OS

还有很多支持或可能支持树莓派的系统,如Pidora(Fedora), Arch Linux ARM, Kali Linux等等。 但是你如果想把它当一个家庭小服务器用,那根本没好用的。 最大安装量贡献量的Raspbian和Ubuntu mate都很多程序不支持,更别说学习成本和出问题网上不好找了。

所以如果不是为了实现特定的项目,没必要安装别的了。

solomonxie commented 6 years ago
solomonxie commented 6 years ago

树莓派查看U盘等外置存储的UUID

$ ls -l /dev/disk/by-uuid/
>>> lrwxrwxrwx 1 root root 10  6月 27 16:24 0000678400004823 -> ../../sdb1

image

solomonxie commented 6 years ago

❖ 树莓派添加打印机

打印机主要用的是苹果出的cups程序,几乎在所有平台适配所有打印机。

大概步骤:

参考:树莓派搭建网络打印机 扫描仪服务器

安装:

    sudo apt-get install cups -y
    sudo usermod -aG lpadmin $USER
    sudo cupsctl --remote-any
    # Process to this url to manage printers:
    # https://ServerIP:631/

安装好后访问地址:https://ServerIP:631

image

客户端连接局域网内打印机

Mac上,在系统设置里添加打印机,如果是在局域网内的,这里会直接显示出来打印机,添加即可。 image

Windows上,控制面板>设备和打印机>添加打印机>无线打印机 image

IOS上,直接在任何页面,点击Share分享,选择Print打印,就会自动检测局域网内的打印机,然后打印。 image

IOS上打印PDF等文件,就麻烦一点,因为点share后没有print的选项。 目前下载第三方app的支持都不是很好。几经尝试后发现,唯一的方法是:点击share -> 保存到iCloud -> 打开iCloud -> share -> 打印。这样就不用装第三方软件了,只是步骤多了一些。

客户端连接远程打印机

默认打印机只能在局域网共享,很多客户端原生情况下也不支持远程打印机共享。 一般的解决方案是让客户端(手机或电脑)联入打印机所在的VPN,假装成局域网内设备,再打印。

问题:树莓派cups版本太低 不支持一些打印机

基于树莓派ARM架构的原因,很多软件都不能一键安装,或者是版本长期不更新。 比如CUPS的现在版本是2.1以上,但是Raspbian上的CUPS版本最高只有1.7。 另外gutenprint的版本也是很重要的因素。

基于这几项,都很有必要删除旧版本,然后编译安装新版本。(没有一键安装,当然只能自己编译了)

参考请直接跳到CUPS的Github官网:https://github.com/apple/cups

~以下编译不成功,编译很难成功!~

# 首先卸载本地的旧版本
$ sudo apt-get remove --purge cups

# 安装编译所需依赖
sudo apt-get install autoconf build-essential libavahi-client-dev \
     libgnutls28-dev libkrb5-dev libnss-mdns libpam-dev \
     libsystemd-dev libusb-1.0-0-dev zlib1g-dev -y

# 下载源文件
git clone https://github.com/apple/cups.git

# 自动配置
cd cups
./configure

# 如果没有错误产生,则开始编译
make

遇到编译错误:

Making all in cups...
Compiling tls.c...
In file included from tls.c:39:0:
tls-gnutls.c: In function ‘httpCredentialsAreValidForName’:
tls-gnutls.c:397:56: error: conversion to ‘int’ from ‘unsigned int’ may change the sign of the result [-Werror=sign-conversion]
           if (!gnutls_x509_crl_get_crt_serial(tls_crl, (unsigned)i, rserial, &rserial_size, NULL) && cserial_size == rserial_size && !memcmp(cserial, rserial, rserial_size))
                                                        ^
In file included from tls.c:39:0:
tls-gnutls.c: In function ‘httpLoadCredentials’:
tls-gnutls.c:784:17: error: conversion to ‘int’ from ‘size_t’ may change the sign of the result [-Werror=sign-conversion]
       decoded = alloc_data - num_data;
                 ^
tls-gnutls.c: In function ‘http_gnutls_load_crl’:
tls-gnutls.c:1027:14: error: conversion to ‘int’ from ‘size_t’ may change the sign of the result [-Werror=sign-conversion]
    decoded = alloc_data - num_data;
              ^
cc1: all warnings being treated as errors
../Makedefs:266: recipe for target 'tls.o' failed
make[1]: *** [tls.o] Error 1
Makefile:180: recipe for target 'install-data' failed
make: *** [install-data] Error 2

更新:编译安装gutenprint

一般都说不用更新cups,如果打印机驱动不支持或没有,则安装更新gutenprint即可。因为cups本身是没有驱动包的,它是依赖gutenprint集成的各个打印机驱动。

首先到gutenprint官网下载最新版的打印机驱动源代码:http://gimp-print.sourceforge.net/

找到合适版本点击下载后得到一个tar包,比如gutenprint-5.2.14.tar.bz2。 以下以此包来编译安装。

sudo apt-get install automake autopoint openjade jade sgmltools-lite byacc docbook-utils flex libcups2-dev libcupsimage2-dev libusb-dev

wget https://jaist.dl.sourceforge.net/project/gimp-print/gutenprint-5.2/5.2.14/gutenprint-5.2.14.tar.bz2
tar -xvf gutenprint-5.2.14.tar.bz2
cd gutenprint*

sudo ./configure
sudo make clean
sudo make
sudo make install

安装好后,不用重启,直接到cups网页里,add printer添加打印机,就能看到比以前多了很多很多种型号,这时候应该就有你想要的打印机驱动了。

更新:printer-driver-splix

sudo apt-get install printer-driver-splix -y

会直接添加很多驱动,还会更新现有驱动。

solomonxie commented 6 years ago

❖ RAID硬盘阵列入门

参考:Linux就该这么学 第7章 使用RAID与LVM磁盘阵列技术

学习RAID

参考:RAID 0+1硬盘阵列组建图解及RAID 0+1和1+0的区别

RAID全称为Redundant Array of Inexpensive Disks.

既然是Array阵列,那么也就存在这种array的排列方式。一般大家讨论最多的,也是采用哪种排列方式。

常用RAID阵列方式:

RAID 0一开始发明,是为了提高性能和吞吐量的,但是完全没有。。。 image

RAID 1. image

RAID 5. image

RAID 10. image

开始组建RAID阵列

Prerequisite:

solomonxie commented 6 years ago

❖ 树莓派添加扫描仪

扫描仪主要用的是sane程序,但是不支持网络共享,只是安装驱动让树莓派能使用扫描仪。

扫描仪主要用的sane程序。树莓派和Ubuntu系的都是原生自带的,无需安装,命令为scanimage -L

以下是基本命令:

# 如果本机没有,就安装以下
$ sudo apt-get install sane

# 列出当前本机已连接的扫描仪和名称
$ scanimage -L
>> device `pixma:04A91780_13F3F7' is a CANON Canon PIXMA MG2900 Series multi-function peripheral

# 扫描: 按TIFF格式输出为sample.tiff文件
$  scanimage -d "设备名称" –-format=tiff > sample.tiff

但是,这只能让USB连接扫描仪的电脑正常使用,现在还不能共享到网络上(实际上共享扫描仪没什么意义,还是要手动把东西放进去扫描)

就算还是要做,那么比较流行的方案是用Dynamic Web TWAIN的API,还需要自己写代码生成实例。过程比较复杂。 参考Github:raspberrypi-document-scanning

其实一般直接SSH或者VNC远程桌面连到树莓派,在上面打印就行了,没必要真正共享出来。

错误:扫描仪无法识别扫描仪

使用scanimage -L时候显示错误:

[bjnp] create_broadcast_socket: ERROR - bind socket to local address failed - Cannot assign requested address

把sane的配置文件/etc/sane.d/dll.conf中注释掉没必要的型号,只保留我自己需要的canon后。这个错误消失。

但是还是不能发现扫描仪: image

试了试换个机器(不是树莓派而是普通的Ubuntu笔记本),发现完全正常使用! 那么这就是机器的问题了。 检查了下Sane的版本,树莓派的是1.0.24,而笔记本的是1.0.25。没差多少。

而且在打印机用自身不接住树莓派连接到局域网WIFI时,笔记本的SANE是可以自动检测到局域网内的扫描仪的,但树莓派没有,只会不断报错。

Canon MG2922打印扫描一体机的网络设置

佳能的打印扫描一体机是有WIFI网络的,但是要设置,就必须必须必须到Windows上通过官方软件把设置写入到机器中才可以,比如把家里、公司里的WIFI用户密码复制到打印机里,这样它就可以自己连接网络运行了。

具体方法是:

到CANON官网,找到自己的型号driver驱动,选择Windows的,最好选full最全的安装。

第一次安装,需要用USB连接电脑,以后就不用了。

安装好后,就会有Canon IJ Network Tool这个东西,所有设置都是通过它。

这个设置会遇到管理员密码这个东西,一般默认密码都是canon

连接局域网的WIFI,输入用户密码等。 在把网络设置好后,就可以设置打印机默认属性。 在Windows的设置面板里,找到打印机。添加打印机。右键打开首选项,里面会有一系列的管理方法:如保持不关机等。 这些设置都不是针对Windows,而是直接写入到打印机里面的,到时候就算没有USB连接,也可以保持。

扫描仪不借助外部自己连接WIFI的情况

在通过USB连接Windows上,使用官方软件写入WIFI设置后,打印机扫描仪一体机就能够自力更生了。 也就是说,第一次必须要用Windows电脑把设置写入进去才行,之后无论是Linux、树莓派、还是纯靠自己,都不需要设置了。

那么这种情况下还有很多好处:

solomonxie commented 6 years ago
solomonxie commented 6 years ago
solomonxie commented 6 years ago
solomonxie commented 5 years ago
solomonxie commented 5 years ago

树莓派查看CPU温度

无需安装工具即可查看:

cat /sys/class/thermal/thermal_zone0/temp
>>> 62838

显示数字为千分之一度。所以说,除以1000就是当前温度值。

可以设置watch实时观看:

watch -n 0.1 cat /sys/class/thermal/thermal_zone0/temp
solomonxie commented 5 years ago

树莓派安装python的lxml库失败问题

参考:https://kinegratii.github.io/2017/05/14/install-lxml-on-respberry-pi/

需要先安装开发依赖才能正确的通过pip编译安装:

sudo apt-get install libxml2-dev libxslt-dev python-dev -y
pip3 install lxml --user
solomonxie commented 5 years ago

迷你主机24小时家庭服务器选购及配置

英特尔 Intel NUC

英特尔官方出品的迷你主机,NUC的各种型号价位从1000~5000不等,非常适合个人家庭服务器。

image

比Mac mini小很多:

image

自制“一体机”:

image

参考京东主页:英特尔自营店 - 英特尔NUC7PJYH4

image

solomonxie commented 5 years ago

Mac Mini家庭24小时服务器选购及配置

目前的需求是,想要一台除了树莓派以外另一台基于X86或X64架构的电脑,用来运行Windows或MacOS上的许多软件和应用(比如百度网盘下载、同步等)。

但是单买一台PC机体积太大,迷你PC机又是良莠不齐。所以考虑到了直接买Mac Mini又便宜、构造又好又稳定,还能同时兼容Windows系统。所以是最优选项。实际上很多个人的家庭服务器也都是选用的这个。

由于对性能要求不高,只是需要体积小、能长期稳定不间断运行,所以采用二手Mac Mini。

参考选项:

Mac Mini的架构问题:

Mac Mini 2nd gen 2009 A1283

参数:

由于Mac Mini早期版本,除了CPU以外其它都可以轻松换,所以以上参数的其它选项都可以不用顾及。

参考淘宝链接:二手 Mac/苹果 Mac Mini A1283 苹果电脑主机 osX 酋长石10.11

image

image

Mac Mini安装Windows+MacOS双系统

Mac Mini 2009最高能兼容的MacOS是OSX 10.11,El Capitan。

solomonxie commented 5 years ago

打印机专业知识探索

image

输稿器:实现批量自动复印、批量自动扫描

要实现批量复印,即塞一大摞文档进去,它自己自动一页一页复印出来。

这必须要求打印机有输稿器(ADT)。输稿器是一个很大的“盖子”盖在整台打印机的表面上。现代商业打印机,几乎每款都有专门配置的ADT。

参考百科:自动输稿器

image

参考:京东 自动输稿器的功能

基本上现在的复印机大部分已经在出厂标配中含着ADF(自动输稿器)了。即使是那些简装版的机型,标配只有稿台盖板的,同样可以拆掉盖板加装ADF。就连中高端的A4幅面台上式多功能一体机很多都标配了ADF,只有少数便携式复印机是用不了ADF的。 但是如果像是hp的C8500之类的大型激光打印机,注意啊,是打印机,那类的机器是装不了ADF的,因为它没有设计图像读取的功能。

image

喷墨打印

连喷

循环连喷

激光打印

solomonxie commented 5 years ago

树莓派安装Samsung SCX 4521f 打印机驱动

Jessie无法升级cups到最新版本,也就是默认的driver很少,而最新版Raspbian的Stretch则连cups都安装不了。

image

唯一的成功的解决方案在这里: Refer to: https://www.raspberrypi.org/forums/viewtopic.php?t=99474

# Update drivers
$ sudo apt-get install printer-driver-splix

或参考:https://github.com/bendlas/splix/blob/master/ppd/scx4521f.ppd

$ wget https://raw.githubusercontent.com/bendlas/splix/master/ppd/scx4521f.ppd

然后就可以在Cups的admin页面正常添加了。

更新:printer-driver-splix

sudo apt-get install printer-driver-splix -y

会直接添加很多驱动,还会更新现有的驱动,包括三星等,非常全。

更新:ULD

参考:https://raspberrypi.stackexchange.com/questions/27496/samsung-multifunction-printer-with-cups-failing-to-print/38310#38310 参考:https://raspberrypi.stackexchange.com/questions/49422/cups-printer-failing-to-print-out-any-paper

下载好三星ULD驱动包后,解压,按照自己的CPU架构修改脚本,比如我的是armhf,然后执行sudo ./install.sh

$ vim uld/noarch/package_utils

然后搜索所有带arm字眼,把它改为自己的,比如armhf,或armv4armv6

solomonxie commented 5 years ago

300元的黑群晖:星际蜗牛挖矿机(NAS机)

这个机器的背景是:曾经因为比特币挖坑火热,市场上涌现了一大批廉价电脑,专门来24小时不停运行挖矿,俗称挖矿机。 由于这种特殊需求,电脑设计也和一般的DIY电脑不同:

这些廉价挖矿机里最著名的就是一个叫星际蜗牛的品牌了。 但是不知怎么,潮流过了很多人没用多久就卖掉了,所以淘宝上能买到大批量的这些机器,而且价格都在300以内。

人们发现这些机器不光可以用来挖矿,还能用来代替昂贵的群晖Synology来作NAS(贵十倍以上),因为有4个盘位,而且设计合理,随便安装什么OS系统,还能安装破解版的“黑群晖”,简直是最佳替代品。

参考:蜗牛星际:我集齐了ABCD款,折腾矿渣一个月的全记录! - 什么值得买 参考:300不到的4盘位NAS?蜗牛星际矿难NAS简测 参考:【BIGDONGDONG】#136 蜗牛星际翻车记丨不到300块的NAS主机 - Youtube 参考:【BIGDONGDONG】#138 史上最值的NAS主机 蜗牛星际矿渣复活记丨LEDE Openwrt&群晖的二合一安装

ABCD型号

星际蜗牛的性能配置都是完全一样的:

唯一不同的只有机箱设计,分为A/B/C/D四种:

image

区别如下:

image

简而言之:

网卡:单网口双网口

每种型号都有单网口双网口两种选择。可以根据自己需求选择:

可以选择的网卡的型号有:

现代100Mb/s带宽是不能忍的,怎么也要千兆。所以选购方案是:

焊接82583方法

主要有两种方法:

image

1U电源

服务器电源中,因为服务器机架都是有标准宽度的,所以服务器本身宽度也是固定的,服务器电源的宽度也就固定下来了。唯一不同的是厚度,根据需要不同,服务器和服务器电源厚度(高度)也不一样,但是可以用U这个"标准服务器厚度"单位来指定,而不是按厘米。 1U指的就是一个标准服务器厚度,2U就是两个厚度了。

买电源时,只要搜索1U 电源,那么型号就不会错了。

买时需要考虑的只有两点:

1U电源的品牌一般有两个比较常见的选择:

image

(mini) ITX机箱

机箱的尺寸也是有标准的,但是标准是以主板尺寸标准为命名的:而ITX是标准主板中最小的一种。一般用于NAS机。

参考知乎:ITX主机入坑指南和配置推荐

image

主板

推荐绿色的主板,遇到坑的机率小。黑色主板都是搭载82583网卡的,需要自己焊接达到千兆的那个。

A款机箱主板分为三种:

solomonxie commented 4 years ago

树莓派连接屏幕设置

所有设置都需要编辑这个文件:/boot/config.txt,然后重启。

通用显示设置

参考:https://www.jianshu.com/p/a7657245293f

# 插线接口:1->HDMI
hdmi_group = 1

# 屏幕分辨率
hdmi_mode=22

连接HDMI显示器

# 屏幕旋转:0->不旋转,1->90度, 2->180度, 3->270度。竖屏的话选3
display_rotate=0

连接触摸屏

# 屏幕旋转:0->不旋转,1->90度, 2->180度, 3->270度。竖屏的话选3
lcd_rotate = 0
solomonxie commented 4 years ago

树莓派GPIO第一步:点亮LED

参考:https://blog.csdn.net/LeasonQ/article/details/51531311

image

image

脚本:

#!/usr/bin/env python

import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BOARD)
GPIO.setup(12,GPIO.OUT)
while True:

     GPIO.output(12,True)

     time.sleep(1)
     GPIO.output(12,False)
     time.sleep(1)
solomonxie commented 4 years ago

蜗牛星际NAS安装系统

为什么蜗牛星级要单独讲安装系统?因为太麻烦! 要不就是主板上的UEFI坏了,要不就是UEFI本身安装就很麻烦,所以才出这么多幺蛾子。

硬件配置

最好拔掉自带MSATA卡,鸡肋,而且容易混淆视听,无论是安装系统、BIOS启动顺序,总是被它混淆。 推荐用两块SSD固态硬盘装两种系统,这样维护起来更简单,换系统只需要插拔两下就好了。作为长期开机的NAS,作为没有显示器在角落被远程的服务器,没有一个硬盘装两个系统的需求—— 因为没有显示器,没有鼠标键盘,没法开机的时候选择系统!!!

安装Windows

安装Linux (Ubuntu)

参考:https://www.gitmemory.com/issue/solomonxie/solomonxie.github.io/33/506933418 参考:https://www.youtube.com/watch?v=BwXRtJ6eC7I 参考:https://post.smzdm.com/p/a83dp8l0/

先下载个Ubuntu的官方镜像,然后把它刻录到任意U盘上:

刻录完成后就可以插上U盘启动系统了,这里的尝试是:先把BIOS的boot顺序改为U盘优先,这样才能进去U盘的临时系统。

安装重点:

solomonxie commented 4 years ago

关于磁盘挂载的一切 [DRAFT]

四部分:

查看已连接磁盘

磁盘格式化

mount 临时挂载磁盘

fstab 持久化磁盘挂载配置

Refer to: https://help.ubuntu.com/community/Fstab

solomonxie commented 4 years ago

百度影棒2s+ 变砖刷机

最近因为电视盒子进入系统后不断闪屏,什么操作都动不了,所以要想办法救回来。下面是尝试过的几种方案:

恢复出厂设置

image

开机前,先把遥控准备好。通电开机的一瞬间,狂按遥控←方向左键,不是常按,是快速狂按,知道画面出现Android恢复出厂设置中...

刷机

如果恢复出厂设置行不通,那么只能下载固件,放到U盘里查到电视盒子上。开启刷机流程。