SSH和Telnet的差異
1.ssh和telnet是CLI遠端常用的方式,主要利用網路(乙太網路線和wifi)作為傳輸介質。
2.相較於telnet,ssh是相對安全的連線方式。
事前工作:
1.假設交換譏為新設備,同時須準備一條console線(兩端接頭分別為USB和RJ45接頭)
2.將USB接頭接在PC端,將RJ45接頭接在cisco的console接孔。
3.以ssh連線需求,進行下列設定。
Learn & Share由H-Y Chou 和 Books and Pencil 共筆,藉由這個平台紀錄著實用工具和好書閱讀,同時也分享著教育學習與思維概念等等多元化的主題。
1.ssh和telnet是CLI遠端常用的方式,主要利用網路(乙太網路線和wifi)作為傳輸介質。
2.相較於telnet,ssh是相對安全的連線方式。
1.假設交換譏為新設備,同時須準備一條console線(兩端接頭分別為USB和RJ45接頭)
2.將USB接頭接在PC端,將RJ45接頭接在cisco的console接孔。
3.以ssh連線需求,進行下列設定。
在當今由大型語言模型(LLM)驅動知識和工具的時代,如何讓LLM能夠有效地結合外部工具和API溝通,成為了自動化流程中的關鍵一環。n8n作為一個強大的開源工作流自動化平台,提供了無限的可能性,只待創作者的創意和想像力了。有別於利用n8n中的MCP Server節點(MCP Server Trigger node )來串接應用服務,本文主要說明如何透過python搭配uv自建一個輕量級的MCP Server,使其串接和風天氣(qweather)應用服務,同時藉由n8n AI agent工作流中的MCP Client節點(MCP Client Tool node)來調用該自建的MCP Server,等同為本地端n8n開了外掛(Plugin),賦予工作流中的AI Agent根據使用者提問自行判斷是否調用外部工具的能力,如本文影片所演示。
Apache Superset 是一款 Apache 基金會的開源資料視覺化與商業智慧(Business Intelligence, BI)平台。其設計目標是提供一個輕量級、可擴展、易於部署的資料探索與儀表板工具,讓使用者能透過簡單直觀的操作來分析與呈現各種數據。其核心是基於 Python 與 Flask Web 框架構建,並支援連接各種 SQL 資料庫,如 MySQL、PostgreSQL、Oracle、SQLite、Snowflake、BigQuery 等。前端則採用 React.js 與 Apache ECharts 進行互動式圖表與儀表板渲染,提供高度可自訂的視覺化能力。另外,其能與 Docker、Kubernetes 等容器化平台整合,具備水平擴展能力,方便企業在既有基礎架構中導入。
認識到python的uv套件得由當初學習Cline的MCP服務端(server)配置說起。Cline是一款VSCode的插件,可視為MCP客戶端(client),同時可讓開發者快速且方便地在VSCode環境中配置MCP server,並藉由與AI大語言模型搭配來訪問各款MCP server,以完成開發者的需求。若要體驗和進一步了解MCP的功效,Cline是一款快速上手的入門插件,使用方式可參考官網資料。
自從將Ubuntu Server 24.04 LTS作業系統建置在VM上後,逐漸導入一些容器和微服務器並使可由其他Client端來連接使用,其中包含AIGC模型和自動化工作流等服務,例如Open-WebUI和n8n。然而,若VM重新開機或路由器因故斷電等等狀態,區網IP位址可能因DHCP機制而變動,進而導致上述容器和微服務器的連結位址也隨著變動,設置靜態IP位址應該是一勞永逸的方式。
在自動化運維工作中,利用工具主動發出事務處理結果的mail是一項必備工作,例如資料庫的自動備份工作是否已順利完成,某個微服務重新啟動原因的log日誌等等。而在配置郵件工具中,相較於之前使用的mailx,這次使用的mailutils較為完整,除了內建了完整的 POP3 和 IMAP收信功能,其也內建 SMTP 發信功能,包含自動配置Postfix(內建MTA),配置過程簡化許多。(OS: 說到底就是解決一個重要症狀,"懶")

看門狗(WatchDog)服務常應用於連網的嵌入式邊緣設備等IOT裝置和實體伺服器,主要是若這些連網裝置分散在各個應用環境中執行對應任務,例如感測物理數據,監控影像數據或執行各式Docker服務,當連網裝置因故異常,同時又處於無人值守而無法手動重啟的狀態下,此時看門狗(WatchDog)服務可根據設定條件,協助連網裝置自動重啟並恢復到執行對應任務的狀態。
看門狗(WatchDog)的運作原理是一個計時器(timer),若連網裝置的系統運行符合設定條件,即表示系統運行正常,守護程序則定期復位該計時器,使系統持續運作不重啟,俗稱"餵狗";反之,若系統運作不正常而超時,則系統重啟。另外,看門狗服務分為軟體式和硬體式,相較於軟體式看門狗,硬體式看門狗指的是有一個獨立硬體模組嵌入在裝置的晶片中,實現當系統完全死當時,也可自動重啟的功能。本文將利用樹莓派已具備看門狗硬體模組,在Ubuntu作業系統中設定和運行看門狗(WatchDog)服務。
Flask 是一個輕量級的Web框架,主要用於建立基於Python的Web應用和API。它可搭建webhook本地服務器,同時提供靈活的URL路由和HTTP請求處理方式,允許開發者快速啟動並測試應用功能。由於其結構簡單,開發者常用其作為建立和測試 MVP(最小可行性產品),同時其也非常適合新手作為入門學習Web開發的工具之一。
本文利用樹莓派4B搭建Flask和Ngrok來實現簡易的LINE Bot功能,其中Ngrok的安裝和建置可參考此篇文章,本篇主要著重在Flask環境建置和程式碼的部分。
Ngrok 是一款輕量、功能強大的反向代理工具,可快速且安全地將本機開發環境暴露於公網。它主要透過建立安全隧道(tunnel),讓外部使用者或服務能夠存取本地的 HTTP、HTTPS 或 TCP 應用,而無需進行複雜的網路設定(如port映射設定,或防火牆規則設置),因此其相當適合用於測試需要外網訪問剛開發好的本地端程式。兩個常見的使用情境如下:
在Linux中,shell腳本(shell script)常用於運行各種自動化的流程,包含API串接,設置和啟動應用服務等等,腳本語法也相對易學易讀,因此頗受大部分使用者的喜愛。但若需要讓shell腳本能長期穩定運行,則建議將shell腳本轉換到系統管理服務器(systemd service)來運行,將有下列幾個優點,使得該服務的運作可有效被systemd管理。
上述影片即是一個實際案例,其利用shell腳本將樹莓派的溫度和電壓數值以固定週期傳到influxdb中,同時若溫度過高或電壓過低,則會藉由line notify發出提醒訊息,期望藉由該服務長期監控樹莓派的運作是否穩定,若有異常進程導致溫度過高或電壓過低,則可立刻查閱日誌並及時處理。話不多說,一起來看看如何將該shell腳本轉換到systemd service中。
SQLitebrowser是一個輕量級、嵌入式的SQL資料庫引擎,有別於MySQL等等中大型資料庫,其不需要一個獨立的伺服器程序或作業系統,而是可將所有資料、配置和索引都儲存在單一檔案(.sqlite),易於嵌入到應用程式中使用,很適合在嵌入式裝置和移動應用程式中使用,通訊軟體 微信的資料庫即是使用SQLite。
近期因在ubuntu server中架設一些應用服務,其中有些應用服務採用SQLite作為資料庫,為了查看SQLite中的數據,除了可在終端機安裝sqlite3並直接以命令指令調閱數據之外,尚可利用瀏覽器來查看,其中利用docker安裝SQLitebrowser即是一個可利用瀏覽器查看數據的方式。
延續<[Python]如何在Ubuntu中建置python venv虛擬環境,並安裝TensorFlow和OpenCV函式庫?>文章,當建置 TensorFlow (2.10.0) 和 OpenCV (4.9.0) 的 Python 虛擬環境後,接續進一步安裝 YOLOv5 的相關套件,並在 Raspberry Pi 4B 上完成物件辨識功能,步驟如下。
為了在樹莓派上實現物件影像辨識功能,同時不影響樹莓派原來的python運行環境,選擇建置python虛擬環境[Note1]是一個好方式,其可避免版本衝突和不同運行環境的問題。另外,一併在該虛擬環境中安裝TensorFlow[Note2]和OpenCV[Note3]等等函式庫,並確認版本是否符合需求。
建置python虛擬環境有venv, virtualenv, conda等方式,其中venv最為簡單易用,也符合此影像辨識的項目需求,建置步驟如下:
無意間,翻了一本關於樹莓派的書籍,除了樹莓派的簡介和應用外,也包含初階和高階的Linux運作邏輯,書籍結構相當完整,也因此需要花時間細細體會其內容。其在樹莓派的應用內容,提及一款開源影像監視軟體motioneye,motioneye具備運動偵測,即時拍攝照片和錄影,以及發送警報通知等功能,同時其可在瀏覽器上直接設定和管理攝像頭,相當方便。
利用docker將motioneye安裝在Ubuntu作業系統的樹莓派上,並搭配一個USB Camera,就是一個簡易型的家用監控設備。
這個需求來自於配置open-webui的docker image。經測試不同版本的open-webui後,其中0.1.121版本open-webui的使用體驗較佳,但該版本已無法重新dock pull拉取,因此就興起檔案複製貼上的想法,由另一台已配置0.1.121版本的A主機來轉移到需要配置的B主機。(OS: AGI真的是好物,依著需求並跟著AGI實作,總會學到很多~~)
Uptime-kuma 是一個基於Node.js的開軟軟體,同時也是一套應用於網路監控的開源軟體,其利用瀏覽器呈現直觀的使用者介面,如圖一所示,其讓使用者可監控各種網路服務的性能和狀態,例如http(s), Ping, MQTT和SQL等服務,如圖二所示。同時也提供警報和通知功能,例如郵件或Line通知,以便在發生故障或問題時及時通知用戶,可參考圖三。
Node-red是一個建立在Node.js上的視覺化程式設計工具,其常見的應用情境為建置或轉換各項硬體之間的通信協定的物聯網或工聯網場域,其可藉由設置來安裝第三方應用模組來建置多樣的通信協定節點,包含modbus in/out, mqtt in/out, websocket in/out等等通訊協定,以及解析常見的數據格式,包含csv, JSON等等,進而組建具備控制硬體設備,傳輸和運算數據等功能的物聯網架構。