透過 XRDP 服務,Windows 和 macOS 系統可以使用內建的 RDP 客戶端連線到 Raspberry Pi 的圖形桌面。macOS 系統也可以透過 Netatalk 服務,在 Finder 中直接瀏覽 Raspberry Pi 的檔案系統。此外,Samba 服務允許將 Raspberry Pi 設定成簡易的 NAS 伺服器,讓 Windows、macOS 和 Linux 系統都能存取連線的 USB 儲存裝置。設定 Samba 時,需要編輯設定檔並設定使用者許可權,確保資料安全和存取控制。

使用Microsoft Remote Desktop Protocol (RDP)遠端存取Raspberry Pi

您想要從PC或macOS使用Microsoft Remote Desktop Protocol (RDP)存取Raspberry Pi的完整Raspbian圖形桌面。

解決方案

在Raspberry Pi上安裝XRDP軟體:

$ sudo apt-get update
$ sudo apt-get install xrdp

安裝完成後,xrdp服務將自動啟動,並確保在Raspberry Pi重新啟動時自動啟動。

如果您使用Windows 7或更新版本,則已經包含RDP客戶端,可以用於連線到您的Raspberry Pi。要存取它,請在開始選單中點選「所有程式」,然後選擇「配件」,然後點選「遠端桌面連線」。對於舊版本的Windows,您可以從ModMyPi下載客戶端。

macOS使用者可以從App Store(免費)下載Microsoft RDP客戶端。

當您啟動RDP客戶端時,您需要新增新的連線。輸入Raspberry Pi的IP地址以及您的使用者名稱和密碼(與您的通常Raspberry Pi登入相同,即使用者名稱為「pi」和密碼為「raspberry」,除非您已經更改)。

您可能還需要選擇解析度並清除「在全螢幕模式下啟動工作階段」的選項。

討論

RDP與VNC具有相同的功能,但工作效率更高,因此螢幕內容更新更流暢。

參考

參見配方2.8。

在Mac網路上分享檔案

問題

您想要讓Raspberry Pi出現在macOS Finder的電腦列表中,以便您可以連線到它並使用Finder瀏覽檔案系統。

解決方案

macOS作業系統包含內建的網路檔案瀏覽支援(圖2-18)。但是,您需要在Raspberry Pi上進行一些組態變更,以便macOS可以檢視網路上的檔案。

您需要知道Raspberry Pi的IP地址(配方2.2)。

在Raspberry Pi上安裝netatalk:

$ sudo apt-get update
$ sudo apt-get install netatalk

回到您的Mac,在Finder選單中選擇「前往」,然後點選「連線到伺服器」,然後輸入 afp://192.168.1.210 作為伺服器地址(使用Raspberry Pi的IP地址)。然後,點選「連線」。您將被提示登入(圖2-19)。

使用名稱「pi」和您的密碼(除非您已經更改,否則為「raspberry」)登入。Finder應該顯示Raspberry Pi上的家目錄內容。

還有幾個組態變更需要在Raspberry Pi上進行,這將自動將Raspberry Pi掛載到Mac的檔案系統:

$ sudo apt-get update
$ sudo apt-get install avahi-daemon

內容解密

  • 安裝XRDP軟體: $ sudo apt-get update$ sudo apt-get install xrdp
  • 組態RDP客戶端:輸入Raspberry Pi的IP地址、使用者名稱和密碼
  • 安裝netatalk: $ sudo apt-get update$ sudo apt-get install netatalk
  • 組態Mac Finder:輸入 afp://192.168.1.210 作為伺服器地址並登入

圖表翻譯

  flowchart TD
    A[安裝XRDP] --> B[組態RDP客戶端]
    B --> C[安裝netatalk]
    C --> D[組態Mac Finder]
    D --> E[掛載Raspberry Pi]

此圖表顯示了遠端存取Raspberry Pi和分享檔案的步驟。

使用 Avahi 服務讓 Raspberry Pi 在 Mac 上顯示

為了讓 Raspberry Pi 在 Mac 上顯示,我們需要使用 Avahi 服務。首先,更新 Avahi 服務的啟動設定:

sudo update-rc.d avahi-daemon defaults

接下來,編輯 Avahi 服務的設定檔:

sudo nano /etc/avahi/services/afpd.service

將以下程式碼貼入檔案中:

<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
  <name replace-wildcards="yes">%h</name>
  <service>
    <type>_afpovertcp._tcp</type>
    <port>548</port>
  </service>
</service-group>

儲存並關閉檔案。然後,重新啟動 Avahi 服務:

sudo /etc/init.d/avahi-daemon restart

回到 Mac,現在你應該可以在 Finder 中看到你的 Raspberry Pi。

討論

能夠輕鬆地在 Mac 和 Raspberry Pi 之間移動檔案非常有用。這意味著你可以使用 Pi 上的檔案,而不需要連線獨立的鍵盤、滑鼠和監視器。你也可以像在 Mac 上一樣開啟 Pi 上的檔案,並使用你喜歡的 macOS 文字編輯器編輯它們。

另請參考

這些指示來自於這個教程,它參照了 Matt Richardson 和 Shawn Wallace 的書《Getting Started with Raspberry Pi》(O’Reilly)作為原始來源。

使用 Raspberry Pi 作為網路附加儲存 (NAS)

問題

你想要使用你的 Raspberry Pi 作為網路附加儲存 (NAS)。

解決方案

解決方案是安裝和設定 Samba。首先,更新套件列表並安裝 Samba:

sudo apt-get update
sudo apt-get install samba
sudo apt-get install samba-common-bin

接下來,將 USB 硬碟連線到 Raspberry Pi。它會自動掛載在 /media/pi 目錄中。檢查它是否存在:

cd /media/pi

內容解密:

上述程式碼使用 apt-get 更新套件列表並安裝 Samba 和相關套件。然後,將 USB 硬碟連線到 Raspberry Pi,並檢查它是否存在於 /media/pi 目錄中。

圖表翻譯:

  flowchart TD
    A[更新套件列表] --> B[安裝 Samba]
    B --> C[掛載 USB 硬碟]
    C --> D[檢查硬碟是否存在]

這個流程圖顯示了更新套件列表、安裝 Samba、掛載 USB 硬碟和檢查硬碟是否存在的步驟。

設定 Raspberry Pi 的 Samba 伺服器

為了讓 Raspberry Pi 上的硬碟可以被其他電腦存取,需要設定 Samba 伺服器。以下是設定步驟:

步驟 1:安裝 Samba

首先,需要安裝 Samba 伺服器。可以使用以下命令安裝:

sudo apt-get install samba

步驟 2:設定 Samba 使用者

接下來,需要設定 Samba 使用者。可以使用以下命令新增使用者:

sudo smbpasswd -a pi

然後,輸入密碼和確認密碼。

步驟 3:設定 Samba 設定檔

然後,需要設定 Samba 設定檔。可以使用以下命令編輯設定檔:

sudo nano /etc/samba/smb.conf

在設定檔中,需要找到以下幾行:

workgroup = WORKGROUP

這行設定的是工作群組的名稱。如果需要連線到 Windows 電腦,需要將這行設定為 Windows 工作群組的名稱。

另外,需要找到以下幾行:

# security = user

並將 # 符號移除,以啟用安全性設定。

最後,需要在設定檔的末尾新增以下幾行:

[USB]
path = /media/pi/NAS
comment = NAS Drive
valid users = pi
writeable = yes
browseable = yes
create mask = 0777

這些設定是用來設定分享硬碟的路徑、註解、有效使用者、寫入許可權、瀏覽許可權和建立檔案的許可權。

步驟 4:重新啟動 Samba 伺服器

設定完成後,需要重新啟動 Samba 伺服器。可以使用以下命令重新啟動:

sudo service samba restart

步驟 5:測試 Samba 伺服器

最後,需要測試 Samba 伺服器是否正常運作。可以使用以下命令測試:

sudo smbclient -L localhost

如果設定正確,應該可以看到分享硬碟的列表。

圖表翻譯:

  graph LR
    A[安裝 Samba] --> B[設定 Samba 使用者]
    B --> C[設定 Samba 設定檔]
    C --> D[重新啟動 Samba 伺服器]
    D --> E[測試 Samba 伺服器]

這個圖表顯示了設定 Samba 伺服器的步驟。從安裝 Samba 到測試 Samba 伺服器,每一步都很重要,以確保 Samba 伺服器正常運作。

使用Samba分享USB驅動器

步驟1:安裝Samba

首先,需要在Raspberry Pi上安裝Samba。這可以透過以下命令完成:

sudo apt-get update
sudo apt-get install samba

步驟2:設定Samba

安裝完成後,需要設定Samba。這可以透過編輯Samba組態檔案完成:

sudo nano /etc/samba/smb.conf

在檔案中新增以下內容:

[USB]
path = /media/USB
browseable = yes
writable = yes
only guest = no
create mask = 0777
directory mask = 0777
public = yes

步驟3:重啟Samba

設定完成後,需要重啟Samba服務:

sudo /etc/init.d/samba restart

步驟4:連線到分享驅動器

現在,可以從其他裝置連線到分享驅動器了。

在macOS上連線:

  1. 選擇「前往」>「連線到伺服器」
  2. 在伺服器位址列位中輸入:smb://raspberrypi/USB
  3. 登入對話方塊中,輸入使用者名稱pi

在Windows上連線:

  1. 開啟檔案總管
  2. 在位址列位中輸入:\\\\raspberrypi\\USB
  3. 登入對話方塊中,輸入使用者名稱pi

在Linux上連線:

  1. 執行以下命令:
sudo mkdir /pishare
sudo smbmount -o username=pi,password=raspberry //192.168.1.16/USB /pishare

步驟5:測試連線

現在,可以測試連線了。開啟檔案總管,導航到分享驅動器,確認可以正常存取。

從使用者經驗視角來看,讓 Raspberry Pi 與其他裝置無縫銜接,分享檔案及遠端桌面,是提升其應用價值的關鍵。本文探討了使用 RDP、VNC、Netatalk 和 Samba 等多種協定實作此目標的具體方法,並詳細說明瞭設定步驟,涵蓋 Windows、macOS 和 Linux 等主流作業系統。分析比較這些方案可以發現,RDP 在遠端桌面連線方面效率更高,提供更流暢的體驗;而 Netatalk 和 Samba 則分別適用於 macOS 和跨平臺的檔案分享。然而,這些方案都存在潛在的安全風險,例如預設密碼和開放的網路埠,需要使用者額外設定加強安全性。展望未來,隨著物聯網和邊緣運算的發展,更安全、更高效的遠端存取和檔案分享方案將持續演進,例如根據 Web 的遠端桌面和 P2P 檔案同步技術。對於注重安全性和跨平臺相容性的使用者,建議優先考慮設定 SSH 隧道並搭配 Samba 或 NFS 等協定,以確保資料傳輸的安全性。更進一步地,探索 ZeroTier 等虛擬區域網路技術,可以構建更安全且易於管理的私有網路環境,為 Raspberry Pi 的遠端存取和檔案分享提供更穩健的解決方案。