Android 刷機包(卡刷) 中 system.new.dat 的 re-pack工具: rimg2sdat

2013年鸚鵡買了人生第一隻 Android 手機:小米2S 32GB
新機入手就開始刷機和ROOT,從 JLB15.0 玩到 JLB21.0 時就開始動手改卡刷包

就這樣一路改一路玩到了換小米5
搶到陶瓷尊享版後很開心的下載官方卡刷包準備動刀,點開卡刷包時卻矇了

沒有 system 資料夾! 沒有 system 資料夾! 沒有 system 資料夾!

看了一下檔名和檔案大小,大概就是它了: system.new.dat
經過 Google 大神介紹到 xda 論壇拜碼頭,找到了這篇文章 Unpack/re-pack android DAT files
馬上下載工具並安裝 Python ,終於順利的 unpack 了一個 raw image

mount 起來修修改改完準備 re-pack 的時候卡關了
要先用 img2simg 將 raw image 轉換成 Android sparse image 之後才能再轉成 system.new.dat
又不想 git 一堆 andorid source 回來編譯,只為了取得 img2simg 這工具

心想,既然 system.new.dat 可以直接轉 raw image,那直接反向轉回去就好啦!?

完全沒接觸過 Python 還是把 sdat2img.py 開起來,只是閱讀起來異常艱澀
邊看邊對照 unpack 時輸出的資訊,大概抓到原理後就用 PHP 開始土砲

閱讀全文〈Android 刷機包(卡刷) 中 system.new.dat 的 re-pack工具: rimg2sdat〉

在 CentOS 7 幫 Apache 2.4.6 加上 Brotli 網頁壓縮技術(mod_brotli)

最近終於接觸到 Google 釋出的 Brotli 壓縮技術
於是動念想幫 apache 也加上 brotli 的支援,因為現在各大瀏覽器也都已經支援

但因為微軟的 IE (Internet Explorer) 全系列都沒有支援
所以作法就變成增加 mod_brotli 的支援且優先使用,而不是取代 mod_deflate 或 mod_gzip

閱讀全文〈在 CentOS 7 幫 Apache 2.4.6 加上 Brotli 網頁壓縮技術(mod_brotli)〉

設定 DNS CAA 紀錄,保護自己的 SSL/TLS 憑證

目前全球簽發 SSL/TLS 憑證的機構已超過百個
要避免這些機構在某些情況下錯誤簽發憑證 (WoSign曾發生過)
就需要在簽發憑證前做一些檢查動作

在 RFC 6844 中定義了 DNS CAA Record
透過 DNS 的 CAA 紀錄,申明網域授權哪些機構可以簽發該網域的憑證
如果沒有設定 CAA 紀錄,則代表任何機構都可以簽發該網域的憑證
2013年1月 CA可以決定是否檢查該記錄,非強制性
2017年3月 CA/Browser 論壇決議 2017年9月起強制所有憑證發行機構在簽發憑證前必須檢查 DNS CAA 紀錄

閱讀全文〈設定 DNS CAA 紀錄,保護自己的 SSL/TLS 憑證〉

幫 MySQL / MaridDB 補上 timezone 相關資料

鸚鵡在安裝 Cacti 過程中,被要求資料庫需要滿足 timezone 的需求
而 MySQL 及 MaridDB 安裝後
在 mysql 資料庫中的 time_zone 相關資料表都是空的

安裝了 MySQL / MariaDB 後,系統中會有一個測試用的 sql 檔案
路徑:/usr/share/mysql/mysql_test_data_timezone.sql
這個檔案提供了一些測試用的相關資料,但只是幾個時區的測試資料

想要幫 time_zone 相關資料表補上完整資料的話

SQL 檔案導入的方式

 

在 Windows 10 安裝 BDE,讓 SQL 2000 的資料庫繼續工作

最近遇到一台老舊的主機,主機板已經出狀況隨時可能徹底掛掉
而主機上的會計系統依然還在使用,對方也打算繼續用
硬體設備的問題只剩更新一途,那 OS 和相關的環境也只能被迫更新
礙於現在的硬體都無法支援舊的作業系統,花了一點時間找到解決的方法

原有環境
Windows Server 2000 + SQL Server 2000
會計系統是 Delphi + BDE 的搭配
而 BDE Database Alias 的 Type 是 MSSQL

新電腦的配置大概如下

  • OS: Windows 10 x64
  • SQL: SQL Server 2008 x64
  • 資料庫檔案: 不以備份還原的方式處理,而是使用 卸離和附加 的方式處理

閱讀全文〈在 Windows 10 安裝 BDE,讓 SQL 2000 的資料庫繼續工作〉

設定 WebBrowser 控制項在執行階段模擬的 IE(Internet Explorer) 版本

Microsoft Virtual Studio 中的 WebBrowser 在使用上有蠻多的應用方式

然而有時候開啟某些網站時,卻會提示更換使用較新瀏覽器版本
即使已將 IE 更新的提示較新的版本,透過 WebBrowser 開啟依舊還是跳出提示,這點還真是讓人有點困擾

WebBrowser控制項 在執行階段中預設套用的IE版本,是系統上的註冊機碼定義的
這個註冊機碼的預設值會受到 安裝的系統、IE版本 和 .NET Framework 版本 所影響

閱讀全文〈設定 WebBrowser 控制項在執行階段模擬的 IE(Internet Explorer) 版本〉

愛奇藝 下載影片(QSV檔案) 轉檔工具(2018.11.15更新)

前陣子花錢買了大陸愛奇藝的VIP,下載了許多電影想假日再來慢慢看
發現愛奇藝下載的離線檔案的檔案格式是封閉式的專用格式(QSV檔案)
只能在電腦上使用愛奇藝的撥放器來觀看,或是在手機安裝愛奇藝來觀看
想要在客廳的大螢幕(電視)上觀看,只能用手機無線顯示到電視上 或 使用電腦的 HDMI Port 輸出

在電視上安裝 愛奇藝TV APP只能線上看,又會遇到不流暢的問題
也有試過安裝大陸的 银河奇异果 搭配愛奇藝來做投屏播放,一樣會有不流暢的問題

最後開始在網路上搜尋 QSV轉檔工具
找到了一個 V3.1  的工具是可以轉檔,但是會有影片時間軸錯誤的問題,必須要再使用其他工具修復過
而且對檔案較大的 720P或是 1080P 的電影都會顯示記憶體不足而無法轉檔
估計是為了之後的收費版本做的限制,故意不給轉 (後來發現該作者確實推出收費版本)

之後又找到其他的轉檔工具,不是藏木馬就是要依賴很舊版本的愛奇藝主程式

所以,乾脆自己寫工具吧!

閱讀全文〈愛奇藝 下載影片(QSV檔案) 轉檔工具(2018.11.15更新)〉