使用 dnsmasq 當 local 的 /etc/hosts

於 Linux 開發很常需要修改 /etc/hosts 檔,來將 Domain 指定到自己的開發 IP,但是 /etc/hosts 修改久了比較亂,而且如果多人都有各自的 /etc/hosts,要如何自動合併?

  • 註:/etc/hosts 沒有 /etc/hosts.d 的功能,現階段想要此功能,都是 cat ~/hosts.d/.conf > xxx 再 mv xxx /etc/hosts 蓋掉來達成。

閱讀全文〈使用 dnsmasq 當 local 的 /etc/hosts〉

「趴伏式」 CPR 的急救方式

一般傳統的CPR,都是讓患者躺平,雙手伸直,先做30下的胸部按壓,外加2次人工呼吸,這個在當兵時都有學到,但是真的遇到狀況,是否能記得或是太緊張怕做錯,就要看當時的情況了~

  • 先講「趴伏式」作法(這是我自己看影片後的理解):讓患者反過來趴著,然後雙手一樣伸直,直接由背部心臟的位置,一直持續按壓即可,不需要人工呼吸。

閱讀全文〈「趴伏式」 CPR 的急救方式〉

銀行定存 零存整付、整存整付、存本取息 的差別

銀行的定期存款(定存),主要的需求是這幾種:

  1. 一筆金額存款,到期後領取比較高的利息
  2. 固定時間扣款固定金額進入定存,到期後一次領回(強迫儲蓄)
  3. 若是想靠利息養老,也有每個月固定領息的功能

但是銀行在網路銀行要設定定存時,會看到三~四個名詞,如下述:

  • 整存整付
  • 零存整付
  • 整存零付
  • 存本取息

到底這四個名詞是什麼意思?

閱讀全文〈銀行定存 零存整付、整存整付、存本取息 的差別〉

MySQL InnoDB 遇到 ./ib_logfile0 is of different size 5242880 bytes 修復

MySQL 使用 Innobackupex 來做備份,詳見此篇:使用 Percona innobackupex 備份 與 還原 MySQL

執行下述命令:

  • $ sudo innobackupex --user=root --password=password /home/user/2017-01-01/

出現下述錯誤訊息:

InnoDB: Error: log file ./ib_logfile0 is of different size 5242880 bytes

註:原始 DB 是 Debian 預設的 MySQL

修復方式如下步驟:

  1. vi /etc/mysql/my.cnf # 增加 innodb_log_file_size 的參數即可
    [mysql]
    innodb_log_file_size=5M
  2. /etc/init.d/mysql reload
  3. 再來 innobackupex 就可以正常執行了

關掉 Pylint 一些特定 Warning 的檢查

依照此篇Syntastic:Vim 存檔自動做「語法檢查」的外掛套件設定完成 Python 的存檔自動檢查(使用 Pylint)。

但是 pylint 預設的檢查很多,在只有打算寫個三行的測試程式來說,會出現很多 warning(ex: 沒有 main().. 等等),這種檢查反而會造成麻煩,要如何將這些檢查關掉呢?

閱讀全文〈關掉 Pylint 一些特定 Warning 的檢查〉

Syntastic:Vim 存檔自動做「語法檢查」的外掛套件

每次在寫完部份段落的程式後,都會需要執行看看有沒有 syntax error,看有沒有漏了 {} 之類等等的問題。

Vim 想要在每次存檔時,自動執行 syntax check 可以使用 Syntastic 的外掛套件來達成。

註:此篇 Syntastic 的設定範例是使用 PHP 和 Python

閱讀全文〈Syntastic:Vim 存檔自動做「語法檢查」的外掛套件〉

Google 開源 Guetzli 對 JPEG 壓縮的演算法

Google 釋出新的對 JPEG 壓縮的演算法,比現有的壓縮在省下 35% 的容量,而且維持現有的清晰度。

註:缺點是壓縮需要的時間比較久 (我的測試最少要 3倍以上的時間)

閱讀全文〈Google 開源 Guetzli 對 JPEG 壓縮的演算法〉