對於 WSL (Windows Subsystem for Linux) 一直無法處理 Big5 字元這件事,對我來說就像在一片白牆上的一個污點,明知這面白牆很漂亮,但就是無法不注意牆上的那個污點,一直覺得不完美,直到昨天都還是解決不了。睡一覺之後,想到了一個新的關鍵字,找到了一個 luit 工具,這就是我昨天一直想要找到的工具!
... 繼續閱讀 ...
我每隔幾年我就會遇到一次 non-Unicode 的編碼問題,真的不常見,但這些年來也處理過無數次了,每次都被搞的很煩。最近在 Linux 環境又遇到棘手的編碼問題,檔案內容是從 ISO-8859-1
(Latin-1) 字集的 Sybase ASE 資料庫轉出,所以編碼是 ISO-8859-1
字集,但內容其實是 BIG5
字集,而我用 Windows Terminal + WSL 2 又只支援顯示 Unicode
字集的文字,所以文字無法正常在螢幕上顯示或複製。幾經嘗試後,我決定把這幾年累積的心得都寫下來,以免日後又要再花時間研究一次。
... 繼續閱讀 ...
前陣子我需要安裝一台 Sybase ASE 資料庫到 Linux 主機,當我拿到安裝檔的時候,其實是一個 Google Drive 共用的連結,檔案大小有 1.4GB 左右,我不想先下載到我的 Windows 主機再上傳到 Linux 主機,我想直接從 Linux 主機下載該檔案。上網找了許多解決方案,但是這些作法幾乎都已經失效,最後還是自己研究出了一個很棒的方法,有需要的人請繼續看下去。
... 繼續閱讀 ...
Linux 用了二十多年,從沒認真想過 Login Shell 載入的啟動檔順序為何,我們經常會看到 .bashrc
, .bash_profile
, .bash_login
, .profile
諸如此類的檔案,在安裝一些工具或系統的時候,也多多少少會需要設定這些檔案,加入一些環境變數或其他設定之類的。除了我常用的 Bash 以外,外面還有 Zsh 也很多人用,這時到底要編輯哪個檔案才是正確的呢?我將用這篇文章來好好釐清這個真相。
... 繼續閱讀 ...
Ubuntu 20.04 LTS 伺服器預設採用 Netplan 作為網路設定的工具,但是要變更網路介面設定實在是有點麻煩,沒找到有好用的 TUI (Terminal UI) 工具可以用。我想透過這篇文章記錄一下變更 IP 設定的過程。如果有不同的網路情境導致設定步驟不同,我會陸續補充到這篇文章裡。
... 繼續閱讀 ...
現在越來越多環境都跑在 Docker 環境下,但不知道你是否有遇過想要停止容器,但執行 docker stop
之後卻無法立即停止的狀況?這個問題會牽扯到我在 當 .NET Core 執行在 Linux 或 Docker 容器中如何優雅的結束 文章中提到的 訊號(Signal) 是如何傳送到容器的程序。這篇文章我將更深入的探討這個問題,以及提供解決方法。
... 繼續閱讀 ...
我今天遇到一個緊急事件,我有台 Linux 主機意外的被一個 Bug 吃光所有磁碟空間,導致服務中斷。我原本想將檔案搬移到另一個地方,但是這個資料夾檔案特別多,不但檔案多,資料夾也多,我先用 mv
搬到另一個地方,空出足夠的空間後,先終止搬移作業,打算先修復服務,然後就無法搬了!💥
... 繼續閱讀 ...
我之前有寫過一篇 如何使用 Certbot 命令列工具建立免費的 TLS/SSL 頂層網域憑證 文章,當時的情境是我的域名是 頂層網域 (naked domains)(Top-Level Domain)(TLD),必須用「手動」方式申請。今天這篇文章,我要示範如何「全自動」申請與更新憑證,並自動產生 Kestrel 所需的 *.pfx
(PKCS#12) 憑證。
... 繼續閱讀 ...
許多有在玩 Angular 前端框架的人都知道,目前的 Angular 官網的正體中文版(https://angular.tw)都是由我負責維護。該網站我目前架設於 Azure App Service 上,我原本想用 Azure 上目前免費的 App Service 受控憑證,可惜他並不支援「裸網域」(naked domains),因此我就必須要改申請免費的 Let's Encrypt 網站伺服器憑證。
... 繼續閱讀 ...