2015-12-18

openSUSE Asia Summit 2015 - 臺北求學之旅

openSUSE Asia Summit 2015 看似是場屬於 openSUSE 社群的 conference,但對凍仁而言它同時也是一年一度的 Study Area (酷學園,以下將簡稱為 SA) 群英會 [註1],除了來自各地的 SUSE 講者外,還有一整軌 SA 的議程。從 openSUSE 的 HA 實作、gTLD (網域名稱)、機房建置、災難救援外,還有 GNU/Linux 最新的 systemctl 發展現況等介紹。

▲ openSUSE Asia Summit 2015 大合照 (感謝 Daniel J. Lee 拍攝)。

2015-11-28

Bash 自動補齊 on Mac OSX 10.11.1

曾有人問起凍仁是怎麼熟記各個 GNU/Linux 指令的?成千上萬個指令記也記不完,更別說還有 Mac OSX (以下簡稱 OSX)、Windows 跟各式的網路設備。除了常用、把指令融入生活外,凍仁還會在 Bash 開啟自動補齊 (completion) 功能來輔助操作。

自動補齊 (completion) 說穿了就是一直在 Bash 裡按 Tab 來取得指令和檔案結構的提示,這點也適用 OSX 上的 Shell 喔!

▲ Bash 自動補齊火力展示。

2015-11-13

MOPCON 2015 - 議程與伍長

從 2012 年開始,凍仁每年除了 COSCUP 外還會參加 MOPCON。從借用友人的名義、文字記錄、場控兼機動到組長,這一路上要感謝的人太多太多了!有默默支持的家人、願意給我自我成長的長輩,賞臉前來的講者、超配合的組員及各個社群的伙伴 …。

去年,因一些突發狀況差點當不成工作人員,打亂了大會的步調,從主持人變成了議程組的後備人員 (簡而言之就是一人要支援三軌議程、workshop 再兼一下場控),還要處理其它大大小小的事。

▲ 議程組小合照。(圖片來源:MOPCON 2015 - Kang-Min Wang | Flickr)

2015-08-23

COSCUP 2015 - 10 週年慶典

從 2008 年開始參 COSCUP 至今已經七年了,凍仁也從歡樂的會眾到成為工作人員多年。雖說沒法像核心成員那般為 COSCUP 貢獻,但每年還是會空下時間來幫忙。在往年,身為行銷組一員的凍仁會機動性的支援報到和場務 (曾被人誤認成場務組過),而今年則是待在大會攤位 (不是服務台的那個) 迎接前來闖關的會眾或回娘家的舊朋友,這對喜好滿場跑的凍仁倒是有些不習慣。
▲ 行銷組小合照。(圖片來源:COSCUP 2015 Day1 | Flickr)

2015-08-01

比 SM 更美觀的 Alfred2 Large Type 大字報 on Mac OSX 10.10.4

續前文 (SM 大字報 on Mac OSX 10.10.4),凍仁為了要在 Mac OS X 擁有類似 Windows7, Ubuntu (Unity) 的 Window + 1, 2, 3, ... 9 一鍵開啟/切換特定程式快捷鍵買了 Alfred 2 的 Powerpack (好比 VF-25 的武裝背包) 來 hacking。

買完才知道可以用 Powerpack 裡的 Workflows 來替代快速輸入常用字的 aText;更沒想到它還包了比 SM 更美觀的 Large Type,真的是三個願望一次滿足!相信喜愛高度客制化的伙伴都會捨得花這點小錢!

▲ [圖1] Alfred 家的 Large Type 大字報截圖。

2015-07-30

SM 大字報 on Mac OSX 10.10.4

SM 是個可以讓 PC 一秒變大字報的好物,也是凍仁在 GNU/Linux (Debian, Ubuntu) 裡必裝的套件!雖然 Mac OS X 沒有原生支援,但我們還是可以透過作者撰寫的 sm.py 和 X11 來跑 SM。

▲ SM on Mac OS X 10.10.4.

2015-07-27

藉由 JNLP 設置 Mac OS X 的 Jenkins Slave

近來凍仁用 Jenkins CI 幫公司整合了些工作流程 (例如網站的 codebase 升版降版、私有 GitBook 文件網站 …),在前公司時更拿它來編 Android ROM。

接下來凍仁想用它來編 iOS Apps 或進行些自動化測試工作;但在這之前還需先把 Mac OS X (以下簡稱為 OSX) 納入版圖才行!

▲ 凍仁目前是拿 Mac mini 當 Mac OSX 的 Jenkins Slave。 (圖片來源: CNET)

2015-07-02

找回 GNU/Linux 的 Calendar on Mac OSX 10.10

在 Mac OSX 10.10 雖有內建 cal 這個指令,但還是與 GNU/Linux 上的 cal 有些差別,由下圖可以很輕易的看出右方的 gcal 會標示現在的日期,這對已經使用 GNU/Linux 生活多年的凍仁而言可是很重要的呢!
▲ 左:OSX 內建的 cal 指令 (BSD License);右:使用 homebrew 安裝的 gcal (GNU License),且有當日標示。

2015-06-26

vimari - Safari 上的 vimium 附加元件

vimari 是作者 guyht 把 Chrome 上的 Vimium 移植到 Safari 上附加元件 (Extension)。預設要發動它需先按下 Ctrl,接下來就可以開心的用 H J K L 捲動頁面 (Scroll)、f 快速開啟連結 ... 等快捷鍵來操作 Safari 了!

vimari 截圖。

2015-05-08

手殘救星 - Git & GitHub

大約在 2015 年 3 月中旬,凍仁接到 mtchang 前輩來訊,並希望在下能至 NSYSUCM 自由軟體社群分享跟 GitGitHub 有關的主題,於是「手殘救星 - Git & GitHub 」問世了!

2015-04-11

sort - 排序指令

sort 是個很強大很的排序工具,而且通常還會搭配 sed, awk, head, tail, uniq 等工具來使用,話說 sort 本身可以做到依欄位排列的功能!相信透過各種參數的組合運用,可以讓攻程師們少寫幾行 code。

[ jonny@yosemite ~ ]
$ history | awk '{print $2}' | sort | uniq -c | sort -nr | nl | less 
 1 1346 ls
 2  726 cd
 3  688 git
 4  224 sdcv
 5  219 vi
 6  219 ssh
 7  158 mv
 8  154 cat
 9   98 brew
10  92 host 
▲ 透過以上指令,可以得知凍仁近來最常用的指令是 ls。

2015-03-15

透過 Zabbix 監控 VPN (PPPoE) 狀態

    於某新公司重新出發的凍仁開始接手維護一套名為 ZabbixGPL 網路監控系統 (詳情請參考 維基百科)。既然與 Nagios 同是網路監控系統,相信它也可以用來監控某工作站上的 VPN 連線狀態。內行人都知道 VPN 這玩意會斷線是家常便飯的

    從剛接觸 Zabbix 到完成此任務凍仁花了兩天的時間,繞了一大圈後總算是對 Zabbix 的架構流程有些了解。以下為凍仁對 VPN (PPPoE) trigger 的筆記,相信能讓大家少走些冤枉路。

2015-03-07

《Google 建議的 Python 風格指南》懶人包

Google Python 風格指南-命名規則, Main, 編後語 一文,凍仁把《[翻譯] Google 建議的 Python 風格指南》該系列其餘的文章連結也整理了,相信多個目錄會更便於大家學習 Python。

2015-02-15

Happy Valentine's day 2015 !

2015 情人節快樂!今年的情人節真的過的很開心,除了一早看到在下掛名了 @be_vimmer_tw 的共同開發者外,還跟老婆見習了手工巧克力的製作過程。

為表誠意凍仁就在此附上自製的巧克力 HJKL 鍵照片給大家,希望各位喜愛 Vim 的伙伴都能有個美好的情人節。:)

自製巧克力之 HJKL

2015-01-31

Google Python 風格指南-命名規則, Main, 編後語

為某紅色的海公司服務的凍仁,近來研究了 藉由 DRBL/Clonezilla SE 來大量部署 OS 的 solution,也使用了 Python 和 shell-script 來撰寫批次更換主機名稱 (hostname)、IP ... 等的差異化程式。這中間牽址到磁碟分割、DHCP、網路架構、PXE 網路開機、系統權限 … 等技術,其系統架構凍仁在此就不多詳加述,有興趣的伙伴可至官網詳讀。

因公司培訓的關係,凍仁現在很注重程式碼的品質,更找到了這篇在介紹 Python coding style 的好文,就在此與大家分享了。

2015-01-18

etckeeper - 追蹤記錄 /etc 下設定檔的好工具

在使用 Linux 架設服務 (service) 時常會依各種需求而更改設定檔 (configure),可往往這些修改的過程是難以被記錄的,更別說是在多人共同管理的情況下,除了養成手動備份的習慣外,其實我們還可以藉由 etckeeper 來輔助追蹤和記錄其版次的。

etckeeper 是一個藉由版本控制系統 (Version Control System, VCS) 來儲存和蒐集 /etc 設定檔的工具。有了它我們就可以在修改 configure 時附上簡短的敘述以便於後續追蹤,而它同時也整合了套件管理員,我們在進行套件的新增、修改、刪除時也會進行追蹤。以下將以凍仁較慣用 Git 版本控制系統進行示範。