發表文章

目前顯示的是 7月, 2025的文章

在Windows 2003 server裡備份檔案, 使用ShadowSpawn + robocopy (考古文)

 時光來到2025, 還在用Windows 2003 server, 大家就知道我的年資不少了。反正, 基於各種原因, 就是要用Windows 2003就對了。而且有備份檔案的需求, 上網找了一下可能的方案, 發現robocopy有不少愛好者, 評價很好。所以就想用, 而robocopy在windows 2003是透過resource kit提供。沒想到微軟的網站上, 已經找不到這個resource kit了, 所幸在Archive網站仍然可以找到。 Windows 2003 Resource Kit x86 Internet Archive的連結 注意一下, 似乎只支援x86, 還好的是我使用的那台機器是x86。安裝方法很簡單, 下載下來的 rktools.exe檔直接執行, 然後一直下一步就可以了。預設會在C:\Program Files\Windows Resource Kits\Tools目錄下安裝許多工具程式, 其中也包括robocopy。 Robocopy的使用方法, 可以參考這個網站:  Robocopy使用詳例 ********************************************************** 接著, 我發現了一件事: 有些檔案因為被鎖定, 所以一直沒有被robocopy備份到! 才想到要做Shadow copy! 又研究了一下, 發現ShadowSpawn的評價不錯, 它的網址:  Candera/shadowspawn  是GitHub的一個公開專案, 可是專案owner Candera說已經十多年沒認真使用Windows平台了, 目前也沒心力再支援這個專案了, 也希望有心人可以fork它的專案來接手維護。而且, 之前的已編譯好的可執行程式目錄也不見了。所以只能自己編譯了(還好有source code), 但我試了一下, 發現我編出來的程式, 沒辦法在Windows 2003上面跑, 因為使用的微軟開發環境太新了!  所幸, Candera有指出明路:  關於可在Windows 2003執行的ShadowSpawn可以在那裡找的討論文 , 所以下載這支程式, 不用安裝, 直接放到HD, 再安裝vcredist-2010_x86.exe (如果原本沒裝過的話...

在Ubuntu 24.04上使用nsd安裝一台Authoritative DNS Server

 我發現安裝Ubuntu 24.04 Server後預設會有systemd-resolved service在跑, 使用netstat -l指令查看, 會看到127.0.0.53之類的socket出現, 還有使用ls -l /etc/resolv.conf, 會發現這個檔案變成軟連結。問了Copilot, 它說: "127.0.0.53 是 Linux 系統(特別是使用 systemd 的發行版,如 Ubuntu)中 systemd-resolved 的本地 DNS stub resolver。它的作用是作為本機 DNS 中介,將應用程式的查詢轉發給實際的上游 DNS 伺服器。"而systemd-resolved的上遊是那台DNS server呢? 應該是放在 /etc/systemd/resolved.conf 這個設定檔, 這個檔可以如下設定: [Resolve] DNS=8.8.8.8 FallbackDNS=1.1.1.1 然後, 下指令: sudo systemctl restart systemd-resolved 重啓systemd-resolved, 應該就可以正常的ping的到主機名稱了。  問題是, 我要安裝nsd時, 會發現port 53已經被佔用, 不能安裝了。所以第一個動作, 我必須先禁用systemd-resolved, 改回使用原本的/etc/resolv.conf檔的老方法。Copilot告訴我的詳細作法: ------------------------------------------------------------------------------------------------------- 關閉 systemd-resolved 的完整步驟: - 停止並禁用服務 sudo systemctl disable --now systemd-resolved - 移除 /etc/resolv.conf 的符號連結(symbolic link) 預設這個檔案其實是連到 /run/systemd/resolve/stub-resolv.conf sudo rm /etc/resolv.conf - 建立一份你自己的 resolv.conf 檔案 你可以手動指定 DNS,例如使用 Google DNS: ...