0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

樹(shù)莓派是什么?用樹(shù)莓派搭建一臺(tái)永久運(yùn)行的個(gè)人服務(wù)器

Android編程精選 ? 來(lái)源:彭小呆 ? 2023-07-22 09:19 ? 次閱讀

來(lái)源| 彭小呆

鏈接 |segmentfault.com/a/1190000021143144

No.1

樹(shù)莓派是什么?

Raspberry Pi(中文名為樹(shù)莓派,簡(jiǎn)寫(xiě)為 RPi,(或者 RasPi / RPI) 是為學(xué)習(xí)計(jì)算機(jī)編程教育而設(shè)計(jì)),只有信用卡大小的微型電腦,其系統(tǒng)基于 Linux。隨著 Windows 10 IoT 的發(fā)布,我們也將可以用上運(yùn)行 Windows 的樹(shù)莓派。
自問(wèn)世以來(lái),受眾多計(jì)算機(jī)發(fā)燒友和創(chuàng)客的追捧,曾經(jīng)一“派”難求。別看其外表“嬌小”,內(nèi)“心”卻很強(qiáng)大,視頻音頻等功能通通皆有,可謂是麻雀雖小,五臟俱全。

1. 用我的話(huà)理解

用我的話(huà)理解就是樹(shù)莓派就是一臺(tái)主機(jī),你可以外接顯示器,鍵盤(pán)鼠標(biāo),u盤(pán)等等外設(shè),因?yàn)樗w積很小,而且又有很多串口和外接的口,可以直接調(diào)用很多底層硬件。

2. 市面上的型號(hào)

市面上大多是 3 代 B+ 型,淘寶一搜樹(shù)莓派一大堆都是,價(jià)錢(qián)純主板(不要任何外設(shè))在 230+ 左右,有點(diǎn)小貴,超過(guò)我的預(yù)算,所以我繼續(xù)尋找廉價(jià)的,終于讓我發(fā)現(xiàn)了一款 100+ 的樹(shù)莓派。

3. 樹(shù)莓派 zero w

樹(shù)莓派 zero w 是一款 mini 的樹(shù)莓派,體質(zhì)只有 3b+ 的 1/3。實(shí)際到手后,你會(huì)發(fā)現(xiàn)它真的超級(jí)小,超級(jí)可愛(ài)。

你可以看到,最上面是一根普通的黑色簽字筆,接下來(lái)是一個(gè)即插即用型的外接 wifi 網(wǎng)卡,然后是一個(gè) USB 讀卡器,最底下的就是我們今天的主角 zero w。它真的超級(jí)小,有木有。真的是完美的詮釋了那句“麻雀雖小,五臟俱全”的話(huà)。 zero w這款樹(shù)莓派的主要參數(shù)如下:

? BCM2835 處理器,1GHz 主頻,512MB RAM

?BCM43438 WiFi / BT 芯片

?micro-USB 電源接口

?micro-USB OTG 接口

?miniHDMI 端口

?復(fù)合視頻和重置擴(kuò)展接口

?脆弱的 CSI 攝像頭接口

?micro-SD 卡座,存放操作系統(tǒng)

?40-pin GPIO 擴(kuò)展接口

?尺寸:65mm*30mm

你別看它的 cpu 只有 1 核,內(nèi)存只有 512MB,就覺(jué)得它可能什么都做不了,但是實(shí)際上它的性能還是很好的,用于跑一個(gè)網(wǎng)站真的是小 case。

4. 更多樹(shù)莓派

關(guān)于更多樹(shù)莓派型號(hào)或者使用教程你可以去樹(shù)莓派實(shí)驗(yàn)室這個(gè)網(wǎng)站,上面有豐富的資源。

No.2

樹(shù)莓派zero w安裝系統(tǒng)

1. 準(zhǔn)備

你可能提前需要準(zhǔn)備的東西如下:

?16GB or 32GB 的 SanDisk 內(nèi)存卡(注意是以前那種放在手機(jī)上,很小的哦)

?一根最普通不過(guò)的 usb 安卓數(shù)據(jù)線(xiàn)(not type-c

?u 盤(pán)格式化工具(推薦使用 SDFormatter)

?系統(tǒng)燒寫(xiě)工具(Win32DiskImager)

?樹(shù)莓派系統(tǒng)(可以去官網(wǎng)下載

我使用的是 Raspbian Stretch Lite 這個(gè)系統(tǒng)鏡像,這個(gè)系統(tǒng)是官方制作的,lite 是無(wú)桌面版的,只有黑漆漆的控制臺(tái),優(yōu)點(diǎn)是體積小,省性能和內(nèi)存。

名字帶有 desktop 的是有桌面 ui 的,對(duì)不熟悉 liunx 系統(tǒng)的朋友可能更友好,但是體積很大,占用的性能也會(huì)更高。

8299ce66-27ba-11ee-962d-dac502259ad0.jpg

2. 第一步下載系統(tǒng)鏡像

下載好你需要的系統(tǒng)鏡像后,如下圖

82d069da-27ba-11ee-962d-dac502259ad0.png

一開(kāi)始只有一個(gè) zip 的壓縮包,大小大概 360MB 左右,你需要把它解壓,得到上圖的文件夾。

82e8397a-27ba-11ee-962d-dac502259ad0.png ?

然后進(jìn)入文件夾可以看到一個(gè) img 的鏡像,大小為 1.7GB 左右。

ps:這個(gè)官方的 Raspbian 鏡像,如果是其他第三方的鏡像,可能下載后的壓縮包解壓后不是 img 鏡像,這種情況請(qǐng)另行百度解決。

3. 使用 Win32DiskImager 往內(nèi)存卡中寫(xiě)入鏡像

82fddd34-27ba-11ee-962d-dac502259ad0.png ?

把內(nèi)存卡插入讀卡器后,插入電腦。

打開(kāi) Win32DiskImager 軟件后,選擇 img 鏡像,設(shè)備選擇你的 U 盤(pán),然后點(diǎn)擊寫(xiě)入就可以了,寫(xiě)入完成后會(huì)彈出成功的提示框。

ps: 我上圖沒(méi)有選擇設(shè)備,因?yàn)榈臎](méi)插入讀卡器,僅僅是示范而已

4. 修改 boot 分區(qū)的文件

先別急著拔出讀卡器,此時(shí),我們電腦可以看到 u 盤(pán)中只有一個(gè)名為 boot 的分區(qū),大小可能只有 40MB 左右,不要著急,因?yàn)?window 不識(shí)別內(nèi)存卡中 liunx 系統(tǒng)的其他分區(qū)。

4.1 新建 ssh 文件

因?yàn)槲覀兊?zero w 有一個(gè) mini hdmi 的接口,但是我不需要屏幕,所以需要使用 ssh 連接到 zero w 中的系統(tǒng),所以需要在第一次開(kāi)機(jī)就能開(kāi)啟 ssh 功能。

我們進(jìn)入 boot 分區(qū)內(nèi),然后新建一個(gè)名為 ssh 的文件,注意不要后綴名?。。?!也不要往里面寫(xiě)任何東西??!

4.2 新建 wpa_supplicant.conf 文件

因?yàn)?ssh 連接是需要 ip 地址的,所以我們需要將 zero w 在第一次開(kāi)機(jī)自動(dòng)連接 wifi,使其和我們的電腦處于一個(gè)局域網(wǎng),這樣我們才可以通過(guò) ssh 連接到 zero w 的系統(tǒng)。

同樣的在 boot 分區(qū)內(nèi),新建一個(gè)名為 wpa_supplicant.conf 的文件,然后往里面寫(xiě)入如下內(nèi)容后保存:

country=CN
ctrl_interface=DIR=/var/run/wpa_supplicantGROUP=netdev
update_config=1

network={
ssid="你的wifi名字"
psk="你的wifi密碼"
}

5. 組裝我們的最小主機(jī)并連接

取出讀卡器中的內(nèi)存卡,然后插入到 zero w 中,使用一根 usb 安卓數(shù)據(jù)線(xiàn)連接電源(5V1A)即可。

等待幾分鐘,期間我們的 zero w 的指示燈會(huì)一直閃爍,很正常,等待指示燈常亮的時(shí)候,我們?nèi)ヂ酚善魃?,查看一下?shù)莓派的 ip 地址。
831c9b84-27ba-11ee-962d-dac502259ad0.jpg ?

可以看到我們 zero w 的 ip 為 192.168.0.104,然后使用 ssh 連接工具(推薦使用 putty)連接樹(shù)莓派,初始賬戶(hù)為 pi,密碼是 raspberry。

834cdd8a-27ba-11ee-962d-dac502259ad0.png ?

連接成功,如上圖所示。這樣我們的系統(tǒng)就正確無(wú)誤的安裝好了。

ps: 如果是手機(jī)開(kāi)啟熱點(diǎn)當(dāng)做一個(gè)路由器的話(huà),咱們手機(jī)下載一個(gè)名叫 android terminal 的 app,然后輸入 ip neigh 指令,就可以查到連接到手機(jī)的設(shè)備的 ip 信息了。

6. 優(yōu)化咱們樹(shù)莓派的系統(tǒng)

6.1 修改源

因?yàn)閲?guó)外的源,咱們?cè)趪?guó)內(nèi)的連接過(guò)去網(wǎng)速很慢,所以我們需要修改為國(guó)內(nèi)的源,我修改的是中科大的源。

6.1.1 修改 sources.list 文件

sudonano/etc/apt/sources.list
--注釋其他內(nèi)容,添加以下:
debhttp://mirrors.ustc.edu.cn/raspbian/raspbian/raspbianstretchmaincontribnon-freerpi

6.1.2 修改 raspi.list 文件

sudonano/etc/apt/sources.list.d/raspi.list
--注釋其他內(nèi)容,添加以下:
debhttp://mirrors.ustc.edu.cn/archive.raspberrypi.org/debianstretchmainui

 6.1.3 執(zhí)行更新 
sudoapt-getupdate
sudoapt-getupgrade

6.2 修改時(shí)區(qū)

sudodpkg-reconfiguretzdata
找到亞洲 Asia,然后選擇 shanghai 就可以了。

6.3 開(kāi)機(jī)自啟 ssh

第一種:

sudoraspi-config
進(jìn)入選擇找到 interfacing option 選擇,然后找到 ssh,按回車(chē)使能 enable 就可以了。

第二種:

在終端命令行中啟動(dòng) SSH 服務(wù)后,如果系統(tǒng)重啟或關(guān)機(jī)后啟動(dòng),SSH 服務(wù)默認(rèn)是關(guān)閉的,依然需要手動(dòng)啟動(dòng),為了方便可以設(shè)置 SSH 服務(wù)開(kāi)機(jī)自動(dòng)啟動(dòng),打開(kāi) /etc/rc.local 文件,在語(yǔ)句 exit 0 之前加入:/etc/init.d/ssh start

建議都試試,反之我的是可以了。

7. 安裝 nginx

#安裝
sudoapt-getinstallnginx
#啟動(dòng)
sudo/etc/init.d/nginxstart
#重啟
sudo/etc/init.d/nginxrestart
#停止
sudo/etc/init.d/nginxstop
打開(kāi)瀏覽器訪(fǎng)問(wèn) 192.168.0.104(你的樹(shù)莓派 ip 地址),可以看到 nginx 的頁(yè)面,說(shuō)明安裝好了。

我這邊上傳了我的博客,如下圖

837f99dc-27ba-11ee-962d-dac502259ad0.png ?

可以正常的看到頁(yè)面了,但是這樣只能在內(nèi)網(wǎng)(局域網(wǎng)中)看到,我想讓所有人都可以訪(fǎng)問(wèn)怎么辦?

8. 內(nèi)網(wǎng)穿透

內(nèi)網(wǎng)穿透,意思就是將內(nèi)網(wǎng)(本地)的 web 應(yīng)用通過(guò) nat 穿透到公網(wǎng)上,從而讓別人可以訪(fǎng)問(wèn)到。

內(nèi)網(wǎng)穿透目前主要由 ngrok 和 frp 兩種,都非常好用,國(guó)內(nèi) ngrok 免費(fèi)的有 ittun、sunny 和 natapp,這三個(gè)都是免費(fèi)的,前面兩個(gè)可以自定義域名,后面的需要 vip 版本才可以自定義域名。

我這三種都試過(guò),我發(fā)現(xiàn) sunny 的 arm 版本的 ngrok 客戶(hù)端在我的樹(shù)莓派運(yùn)行不了,ittun 的和 natpp 的 ngrok 都可以,由于需要自定義域名,我使用的是 ittun 的 ngrok_arm 版本的。

使用方法這三者官網(wǎng)都有詳細(xì)說(shuō)明,大家自行查看。

這是正常運(yùn)行時(shí)的截圖,

83a7e374-27ba-11ee-962d-dac502259ad0.png83c32076-27ba-11ee-962d-dac502259ad0.png

因?yàn)樾枰?ngrok 在后臺(tái)運(yùn)行,所以我用的是 screen 會(huì)話(huà)使其可以在后臺(tái)運(yùn)行。但是開(kāi)啟自啟,還沒(méi)有實(shí)現(xiàn),萬(wàn)一斷電或者斷網(wǎng)了,我必須手動(dòng)去運(yùn)行一下 ngrok,這是目前沒(méi)有解決的痛點(diǎn)。

9. 更多

樹(shù)莓派不僅僅只是可以用于運(yùn)行一個(gè)網(wǎng)站,還有很多很多的功能等待你的開(kāi)發(fā),可以多去看看樹(shù)莓派實(shí)驗(yàn)室里面,很多大神都寫(xiě)了很多實(shí)用的教程。

這個(gè)zero w 狀態(tài)信息如下:

83e0d0a8-27ba-11ee-962d-dac502259ad0.png

在上面開(kāi)啟了一個(gè) nginx 和 ngrok 服務(wù),內(nèi)存剩余還有 250MB,還是很舒服的,cpu 溫度也不算高,運(yùn)行兩天了,基本在 37-39 之間。





審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 顯示器
    +關(guān)注

    關(guān)注

    21

    文章

    4980

    瀏覽量

    140001
  • USB接口
    +關(guān)注

    關(guān)注

    9

    文章

    701

    瀏覽量

    55653
  • 讀卡器
    +關(guān)注

    關(guān)注

    2

    文章

    413

    瀏覽量

    39376
  • 樹(shù)莓派
    +關(guān)注

    關(guān)注

    116

    文章

    1707

    瀏覽量

    105653
  • RaspberryPi
    +關(guān)注

    關(guān)注

    1

    文章

    40

    瀏覽量

    9094

原文標(biāo)題:如何用樹(shù)莓派搭建一臺(tái)永久運(yùn)行的個(gè)人服務(wù)器?

文章出處:【微信號(hào):AndroidPush,微信公眾號(hào):Android編程精選】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    樹(shù)莓媒體服務(wù)器——MiniDLNA

    成為可能。在這個(gè)教程我將向你展示如何用MiniDLNA做個(gè)樹(shù)莓媒體服務(wù)器,讓你的照片、音樂(lè)和視頻在網(wǎng)絡(luò)流動(dòng)。這里直接跳過(guò)樹(shù)莓
    發(fā)表于 01-19 14:35

    樹(shù)莓打造我的世界服務(wù)器

    。小小的樹(shù)莓耗電非常少,你可以不間斷地開(kāi)著服務(wù)器,年的電費(fèi)也不過(guò)幾塊錢(qián)而已。只要個(gè)樹(shù)莓
    發(fā)表于 02-26 16:37

    【Raspberry Pi 3申請(qǐng)】基于樹(shù)莓3的個(gè)人服務(wù)器主機(jī)

    屏;3.跑樹(shù)莓以前的例程,總結(jié)下這次樹(shù)莓3的性能提升效果;4.使用GPIO控制ledH
    發(fā)表于 04-05 13:50

    【Raspberry Pi 3申請(qǐng)】基于樹(shù)莓3的多項(xiàng)服務(wù)搭建與使用

    ,創(chuàng)龍C6748,整個(gè)試用階段我大部分時(shí)間也都和論壇的人積極探討,按時(shí)完成任務(wù),現(xiàn)在都已經(jīng)提交結(jié)項(xiàng)報(bào)告。樹(shù)莓本身就是塊讓我們折騰的微型電腦,所以我覺(jué)得完成基本的服務(wù)
    發(fā)表于 04-14 14:35

    【3.5寸電阻屏申請(qǐng)】基于樹(shù)莓的多種服務(wù)搭建與使用

    ,現(xiàn)在已經(jīng)截止,提交結(jié)項(xiàng)報(bào)告。項(xiàng)目描述:樹(shù)莓的價(jià)值就在于玩,所以我準(zhǔn)備嘗試搭建不同種類(lèi)的服務(wù): 首先最基本的是,通過(guò)USB攝像頭采集數(shù)據(jù),與人臉識(shí)別分類(lèi)
    發(fā)表于 04-14 14:35

    教你怎么樹(shù)莓構(gòu)建外網(wǎng)可訪(fǎng)問(wèn)的微型服務(wù)器

    。第四,搭建樹(shù)莓的WEB服務(wù)器由于我不懂如何做網(wǎng)站,所以只好套用大牛的方法,建立了個(gè)監(jiān)控樹(shù)莓
    發(fā)表于 05-16 10:44

    如何外網(wǎng)直接訪(fǎng)問(wèn)樹(shù)莓派上搭建服務(wù)器?

    我在我的樹(shù)莓派上flask搭建個(gè)服務(wù)器,放上了自己的網(wǎng)頁(yè),開(kāi)放在80端口。但是我樹(shù)莓
    發(fā)表于 07-04 17:55

    樹(shù)莓什么語(yǔ)言編程_樹(shù)莓python編程詳解

    樹(shù)莓個(gè)非常廉價(jià)的、只有手掌大小的完全可編程的計(jì)算機(jī)。雖然樹(shù)莓的體積小,但是它的潛力無(wú)限。你可以像使用常規(guī)臺(tái)式計(jì)算機(jī)
    發(fā)表于 01-15 17:00 ?3.9w次閱讀

    樹(shù)莓python來(lái)進(jìn)行編程的優(yōu)點(diǎn)以及編程詳解

    樹(shù)莓個(gè)非常廉價(jià)的、只有手掌大小的完全可編程的計(jì)算機(jī)。雖然樹(shù)莓的體積小,但是它的潛力無(wú)限。你可以像使用常規(guī)臺(tái)式計(jì)算機(jī)
    的頭像 發(fā)表于 01-17 14:10 ?2.2w次閱讀

    樹(shù)莓怎么

    連接樹(shù)莓和電腦.網(wǎng)線(xiàn)直連電腦,不經(jīng)過(guò)路由。這個(gè)方法最大的特點(diǎn)最少的工具玩樹(shù)莓
    的頭像 發(fā)表于 11-07 16:21 ?2.4w次閱讀

    如何使用樹(shù)莓DIY個(gè)NAS存儲(chǔ)服務(wù)器

    樹(shù)莓就像一臺(tái)微型的電腦,麻雀雖小五臟俱全。利用它可以開(kāi)發(fā)出各種各樣的功能,其中就包括搭建一臺(tái)迷你號(hào)的NAS網(wǎng)絡(luò)存儲(chǔ)
    的頭像 發(fā)表于 04-06 12:44 ?1w次閱讀

    如何將樹(shù)莓網(wǎng)關(guān)與外網(wǎng)連接——手把手教你如何將樹(shù)莓網(wǎng)關(guān)連接到服務(wù)器之第三篇

    本文為系列文章手把手教你如何將樹(shù)莓網(wǎng)關(guān)連接到服務(wù)器之第三篇,涉及最后個(gè)步驟,即步驟三:如何將樹(shù)莓
    發(fā)表于 04-16 14:57 ?2464次閱讀

    怎么樹(shù)莓自己制作個(gè)服務(wù)器

    / RPI) 是為學(xué)習(xí)計(jì)算機(jī)編程教育而設(shè)計(jì)) ,只有信用卡大小的微型電腦,其系統(tǒng)基于 Linux。隨著 Windows 10 IoT 的發(fā)布,我們也將可以用上運(yùn)行 Windows 的樹(shù)莓。 自問(wèn)世以來(lái)
    的頭像 發(fā)表于 10-12 09:12 ?3391次閱讀
    怎么<b class='flag-5'>用</b><b class='flag-5'>樹(shù)莓</b><b class='flag-5'>派</b>自己制作<b class='flag-5'>一</b>個(gè)<b class='flag-5'>服務(wù)器</b>

    如何用樹(shù)莓搭建一臺(tái)永久運(yùn)行個(gè)人服務(wù)器

    No.1 樹(shù)莓是什么? 1. 我的話(huà)理解 2. 市面上的型號(hào) 3. 樹(shù)莓 zero w 4. 更多
    的頭像 發(fā)表于 10-11 17:52 ?2018次閱讀

    樹(shù)莓-搭建邊緣計(jì)算云平臺(tái)

    基于樹(shù)莓搭建邊緣計(jì)算云平臺(tái)
    的頭像 發(fā)表于 12-03 00:17 ?1610次閱讀
    <b class='flag-5'>樹(shù)莓</b><b class='flag-5'>派</b>-<b class='flag-5'>搭建</b>邊緣計(jì)算云平臺(tái)