系統管理 | The Will Will Web

The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

Windows 10 同時有兩個應用程式 LISTEN Port 7777 之靈異事件整理

昨天同事問我一個關於如何在 nginx 設定 Reverse Proxy 的問題,我在跟他說明作法之後,想說也來驗證一下,結果卻意外遇到一個網路相關的靈異事件,瞬間讓我陷入一個抓鬼情緒,花了大概一個小時左右才釐清問題。今天這篇文章我打算來說說這個狀況,相信你也會覺得毛骨聳然的。

... 繼續閱讀 ...

關於查詢 MAC 位址與 ARP 位址解析協定的兩三事

今天得知公司同事在上周向客戶申請開通的 MAC 位址是錯誤的,同事誤把「公司電腦」的 MAC 位址傳給客戶申請,但是入廠的時候卻是帶自己的筆電過去使用,實在是瞎爆了。接著我好奇問了全公司所有工程師知不知道什麼叫 MAC 位址,想不到也有 1/10 的人不知道這是什麼,這著實讓我非常驚訝。這篇文章我試圖用比較淺顯的文句,帶大家瞭解 MAC address 是個什麼玩意。

... 繼續閱讀 ...

如何透過 PowerShell 自動寫入執行檔路徑到 PATH 使用者環境變數

今天看到微軟推出 Azure Developer CLI 工具 (預覽版) 的消息,便立即安裝起來玩看看,而在安裝的過程中有發現他有用 PowerShell 寫入 PATH 環境變數,我就把安裝程式解析了一下,發現有一段 Code Snippet 相當實用,以後寫安裝程式的時候就可以直接沿用了。

... 繼續閱讀 ...

如何透過 PowerShell 快速建立 Hyper-V 伺服器中的虛擬機器

我現在已經很少在公司內部部署測試機的 VM 了,我通常都直接在 Azure 上面部署測試機,用完就砍掉,透過 Azure CLI 基本上兩分鐘就可以搞定一台,非常方便。不過,我們有個專案的測試機所需的負載比較大,開在雲端比較燒錢,所以還是在內部部署比較划算,但設定的步驟都快忘光了。這篇文章我打算記錄一下這個過程,提供日後參考之用。

... 繼續閱讀 ...

PowerShell 如何判斷 Cmdlet 或 Function 回傳資料的筆數 (0, 1, >1)

老實說,我在寫 PowerShell 的時候,偶爾會遇到一些非常葩的設計,很多時候不深入探究,根本就無法理解。以我今天要寫的這篇文章為例,當你執行一個 Cmdlet 並回傳資料時,當你可能拿到 0 筆、1 筆、超過 1 筆的情況時,正常人應該會覺得我們應該會得到一個「陣列」,但是你知道嗎,在 PowerShell 竟然可能會用到三種不同的處理方式,超怪的。因為這個問題實在遇到太多次了,這次我終於有空寫成文章,希望可以給遇到相同問題的人一些指引。

... 繼續閱讀 ...

如何在 Windows Server 2022 使用 containerd 執行 Windows Containers

其實 Windows Containers 都是以 Windows Server 為基礎的 base image 來運行的,但從 2021 年 9 月微軟發佈了 Updates to the Windows Container Runtime support 文章,預告了未來將不再使用 DockerMsftProvider API 來安裝 Docker EE (企業版) 軟體,之後預計會全部移轉到開源的 containerdMoby 或即將轉付費方案的 Mirantis Container Runtime 等等。這幾天我就想說來研究一下如何用 containerd 來執行 Windows Container,結果根本就是在玩踩地雷,我研究了足足三天才搞定完整可成功運行 Windows Containers 的 containerd 容器環境!這篇文章我將分享我在 Windows Server 2022 實作的完整過程。

... 繼續閱讀 ...

如何有效清空 PowerShell 中 PSReadline 的所有歷史紀錄

我的 如何打造一個華麗又實用的 PowerShell 命令輸入環境 文章 (影片在此) 幫助了不少人調整他手中的 PowerShell 命令列環境,其中有個功能是在打字的時候可以提示你先前打過的所有命令,非常方便且實用。但上周有同事問了我一個問題,他曾經在 PowerShell 中輸入過一些敏感資料,但是又找不到清除歷史紀錄的方法,問我該怎麼辦才好。這篇文章我將分享解決之道!

... 繼續閱讀 ...

在不同的作業系統下如何設定包含小數點的環境變數名稱

一般來說,我們極少會在環境變數上使用小數點( . )當成環境變數名稱來使用,但是在特定應用程式的條件下,可能被迫需要做出這樣的設定。像透過環境變數設定 .NET 應用程式的 LogLevel 就很可能會用到小數點來進行設定,本篇文章我將說明不同作業系統下的設定方式與潛在問題。

... 繼續閱讀 ...

使用 Windows PowerShell 輸出多行文字應注意的斷行陷阱

我今天遇到了一個棘手問題,原本想透過 PowerShell 寫入一個多行的文字,並放入 Azure Pipelines 執行。這樣的需求我寫過很多次了,不過當下的我突然想不起來確切的語法,所以上網 Google 找到了 PowerShell Multiline String 這篇文章,看到了一個解決方案,當下沒有多想,複製貼上就套用了,而且測試過確實有效,接著就是一連串的鬼打牆,浪費了寶貴的半小時生命。

... 繼續閱讀 ...