樹莓網誌伺服器 1. 硬體安裝 @ FreelimbO | Friday, Aug 6, 2021 | 4 minutes read | Update at Friday, Aug 6, 2021

設備: Raspberry Pi 4B 8GB, 120GB SSD, 16GB micro-SD card, micro-HDMI cable, Geekworm Aluminum Case, CananKit 5V-3A power adapter, CanaKit PiSwitch.

最近購入了最新一代的樹莓派(4B),據說用它播放1080p影片還是有困難,但如果是拿來架設靜態部落格伺服器,四核心ARMv7處理器還是頂得住的(如果不要一天到晚萬人湧入的話啦)。

從樹莓派官網(Raspberry Pi OS)下載了imager之後,Operating System選擇1.2GB的32bit版本就寫入16GB記憶卡。(先前已經做了功課,如果能把作業系統安裝在SSD上就可以得到飛快的運行速度,但無奈的是官方的這個imager在我的Ubuntu18上無法直接把Pi OS寫進SSD。)

我嘗試了兩種網路上把作業系統安裝到SSD並且開機的辦法,但是後來發現只需要一張記憶卡的方法就足夠了。有人說要先把USB bootloader寫入記憶卡開機一次,再把作業系統寫入記憶卡然後開機,我因為手邊只有一張記憶卡,這個重複寫入記憶卡的操作相當浪費生命,其實直接把作業系統寫入記憶卡並且開機之後再操作就行了。

強烈建議樹莓派新手一定要準備一條micro-HDMI cable,畢竟有些操作要使用命令行來完成無頭安裝(headless)是有點挑戰性了,秉持著最懶惰的原則,我們能看畫面、動動滑鼠就解決問題的話,還是別省這點錢了。

歷經幾年Arduino以及眾多嵌入式控制器的苦難磨練,我理解到要玩這類小裝置,準備一個電源開關可以大大的增加摸索初期的便利性,所以這裡我也購入了一個電源開關可以切斷USB-C電源。

PiSwitch power_adapter
CanaKit PiSwitch 5V-3A power adapter

通電開機之前,記得把micro-HDMI插入樹莓派的HDMI0 port(比較靠近USB-C電源孔的那個),然後插入記憶卡,開機。

HDMI0
HDMI0(red) is the one close to the USB-C(black) port.

通常到達這一步就能看到類似DOS的開機畫面,第一次開機會需要做些硬體偵測與自動設定,需要等幾分鐘才能看到桌面。

DOS-like welcome
DOS-like starting Pi OS Desktop

接著要設定顯示記憶體與開機順序,Ctrl+Alt+t開啟命令列並且輸入
$ sudo raspi-config

顯示記憶體在Performance裡,我的樹莓派有8GB記憶體,所以這裡我輸入2048,單位是MB。雖然我之後會讓他以headless的狀態長期運作,但是偶爾也需要在遠端SSH的時候開啟檔案總管(pcmanfm)或者備份軟體(deja-dup)進行設定,仍然希望它的圖形處理能力不要太差。開機順序則是在Advenced設定裡,選擇USB優先。這裡選擇了USB為第一修先,但是如果偵測不到USB硬碟,仍然可以使用記憶卡開機。退出raspi-config之後應該會重新開機並且自動安裝USB bootloader。安裝完後因為目前還沒插入USB SSD硬碟,所以系統會自動使用還插著的記憶卡開機。

重新回到桌面之後插入USB SSD硬碟到USB 3.0插孔(必須是3.0),接著就能從左上方的選單選擇Accessary -> SD Card Copier,把記憶卡上的作業系統拷貝到SSD裡。這個過程大概要20分鐘左右,需要耐心等待。但是帶賽的我在這裡重複了三次才成功,後來才知道我的硬碟外接盒太耗電,樹莓派的USB供電似乎不能穩定支撐我的硬碟外接盒,導致前兩次寫入到最後失敗,搞了一個多小時才想到要換個外接盒試試看,我想寫個慘字。

完成全系統拷貝之後,關機,拔除記憶卡,只留SSD連接著樹莓派。開機,看到桌面就能收工了。

才怪,開機之後接上乙太網路線,進preference,開啟SSH。開啟命令行,設定ip位址,輸入
$ sudo vi /etc/dhcpd.conf
在檔案末尾加入四行:

interface <internet interface>
static ip_addres=<the designated LAN ip>
static routers=<your router ip>
static domain_name_servers=<your router ip> 8.8.8.8

其中,<internet interface>, <your router ip> 可以透過指令$ ifconfig先查看,通常會是eth0與192.168.0.1。至於<the designated LAN ip> 就指派一個相同子網域但是不與其他設備衝突的ip就可以啦。

再來使用另外一台電腦的命令行輸入
$ ssh pi@<the designated LAN ip>
樹莓派預設密碼是raspberry。應該要能順利遠端登入。

回到樹莓派桌面,進preference選擇boot to cli,讓以後headless開機不產生桌面。關機後拔除螢幕線、滑鼠、鍵盤。往後的操作都將使用SSH遠端登入。

© 2016 - 2025 努力不一定會成功,但是不努力就會很輕鬆

Powered by Hugo with theme Dream.

 總瀏覽
關於 FreelimbO

FreelimbO是個奉行一時開箱一時爽,一直開箱一直爽的3C愛好者,同時也是喜歡折騰自己的自虐者,明知有簡單的方法可以花錢了事,但卻偏偏喜歡走土法炮製路線。

這個網誌開始是作者想要在樹莓派上架站寫網誌紀錄在樹莓派上架站寫網誌,但是之後也會持續分享開箱心得、讀書心得、人工智能相關論文閱讀心得、遊戲心得、還有最慘無人道的各種踩坑排雷心得。敬請加入你的書籤,持續關注最新文章,謝謝。

Social Links
The copyright of the content in this site is protected by DMCA. 本站著作權受美國千禧年法案保護。