發表文章

目前顯示的是有「Ubuntu」標籤的文章

現代 IT 人一定要知道的 Ansible 自動化組態技巧 (3/e)

圖片
上上周 (2017/03/14) 參加完 Weithenn 前輩分享的 打造 Infrastructure Agility Mode 2 的基石 – Docker / Container 後,凍仁便於上周 (2017/03/21) 的 Tossug 分享些 Ansible 基礎入門,長年待在南部的凍仁可說是第一次站上 Tossug 和摩茲工寮的舞台呢! ▲ Automate with Ansible (Basic), 3/e

如何只更換特定鍵盤的 Ctrl 和 Caps Lock 鍵位? on Ubuntu 16.04

四年前,凍仁找到了對調 Ctrl 和 Caps Lock 的方法,並紀錄於「 對調 Ctrl 和 Caps Lock 鍵位 」一文,但使用 setxkbmap 指令操作時,會連外接不需更換鍵位的 HHKB Pro 2 也一併生效,害得凍仁每次都得重新插拔 USB 線來排除此問題;而現在我們只需透過 -device 參數即可對特定鍵盤進行操作。

如何將 Slack 的資料匯到 Rocket.Chat?

圖片
Rocket.Chat 是一套基於 Meteor.js 開發的開放源始碼 Chat 專案,有著 Slack like 的別名。在建置 Rocket.Chat server 的部份,凍仁曾試著用 Heroku 的方式建置,但只要一匯入 Slack 的資料 (data) 就會炸掉。最後是參考了文件中的 AWS / 7. Set up Docker Containers 的方式才可順利匯入資料。 回到主題,以下就讓凍仁介紹怎麼用 Slack 的 友站搬家工具 把資料搬到 Rocket.Chat 上吧!

現代 IT 人一定要知道的 Ansible 自動化組態技巧 Ⅱ - Roles & Windows

圖片
今年,凍仁有幸接獲 Netman 前輩邀請,並擔任 SA 2016 群英會 的講者。想想凍仁也在 SA 1 學到了不少技術,總算可以報恩了! 這次凍仁是接續 sakana 前輩的 淺談 Ansible 自動化管理工具 之後分享 Ansible Role 和 Windows Support 。 ▲ My sildes of Automate with Ansible (Advanced) - Roles & Windows

現代 IT 人一定要知道的 Ansible 自動化組態技巧

圖片
愛上 Ansible 自動化組態的凍仁聽到五月份有 KaLUG 聚會 ,便自告奮勇說要分享 Ansible 的主題,這是凍仁自從報完 大學專題 後第二次在 KaLUG 分享 topic。 ▲ My sildes of Automate with Ansible (Basic)

使用 Vim 和 Vi Mode

對於一位熱愛 Vim 的 Vimmer 而言,可以在各個地方使用 Vim 是一件很幸福又可以增進產能的事,以下是凍仁常用的 Vim 小技巧。更多相關資訊請參考 Vim 系列相關文章。 我在高雄市 (台灣) 獲得了 Vim 餅乾的小禮物! I get the gift of ' #Vim biscuit' at #Kaohsiung City, #Taiwan . #VimTaiwan pic.twitter.com/CaPII8ibLf — 凍仁翔 (@chusiang_lai) February 7, 2016

於 Ubuntu 14.04 安裝 Docker 1.9.1+

圖片
Docker 是近幾年來很火紅的開放源始碼虛擬技術,雖說 Ubuntu 14.04 已有內建 Docker,但 v1.6.3 的 docker.io 似乎對私有的 (private) docker-regisrty 有些不相容,凍仁在此附上 Docker v1.9.1 的裝法。 圖片來源: Aurora Solutions 。

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。

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

在使用 Linux 架設服務 (service) 時常會依各種需求而更改設定檔 (configure),可往往這些修改的過程是難以被記錄的,更別說是在多人共同管理的情況下,除了養成手動備份的習慣外,其實我們還可以藉由 etckeeper 來輔助追蹤和記錄其版次的。 etckeeper 是一個藉由版本控制系統 (Version Control System, VCS) 來儲存和蒐集 /etc 設定檔的工具。有了它我們就可以在修改 configure 時附上簡短的敘述以便於後續追蹤,而它同時也整合了套件管理員,我們在進行套件的新增、修改、刪除時也會進行追蹤。以下將以凍仁較慣用 Git 版本控制系統進行示範。

在 Cron Job, Jenkins 或其它程式中使用 GPG

凍仁於 Jenkins CI 的 build script 中使用到的 GPG 指令時,出現了 gpg: cannot open `/dev/tty\': No such device or address 的錯誤訊息。 查了一下才得知 GPG 在正常情狀下預設是會將結果輸出至具有互動的終端機 (Terminal, tty) 底下,但如果今天我們是藉由 Cron Job, 自行撰寫的程式或是 Jenkins 來操作時則會有以上的錯誤訊息, 這時我們只需加上「 --no-tty 」的選項即可避開之。

停用 Ubuntu 擾人的更新和升級通知

圖片
更新管理員 (update manager) 是 Ubuntu 內建的軟體更新套件,它就如同 Windows 一般會在背景 偷偷 運作並跳出 善意的 通知,讓我們知道可以進行更新 (Update) 和升級 (Upgrade)。 這對哥倆還有個共同的特色,那就是它們都會跳出 煩人的 對話視窗來打斷我們的思緒,對於喜愛使用指令 (command) 進行 GNU/Linux 更新和升級的凍仁而言是個很擾人的存在,幸好在 Ubuntu 上我們還可以手動關閉它,以下分別為圖形化介面 (GUI)和終端機介面 (Console) 的設定方法。

iPad mini 2 透過「USB 連線」分享 4G LTE 網路 on Ubuntu 14.04

圖片
趕流行的凍仁趁著門號快到齊時請了三年約的中華 4G LTE (以下簡稱 4G) 來應付工作上的需求,居於種種考量凍仁選擇了 搭載 iOS 7, Wi-Fi + Cellular 和 Retina 螢幕的 iPad mini 做為 4G 的載體。 凍仁於 2014 年 6, 7 月間試過 Debian 7 (Wheezy), Debian 8 (Jessie), Ubuntu 12.04 (Precise) 和 Ubuntu 14.04 (Trusty) 後發現只有 Ubuntu 14.04 支援 iOS 7 的 USB 連線 的個人熱點,(也就是 Android 上的 USB 數據連線 ),真的挺令人捥惜的。 ▲ Speedtest with CHT 4G LTE。

Vim: Move line(s) up or down

先前在同事 Amin 火力展示 Emacs 時得知他的「Move line(s) up or down 」快捷鍵 Alt + Up / Down 是從 Eclipse 抄來的,索性移植到 Vim 上,這對臨時要更動某一行的位置時超好用的呢! 註:這是個用 Alt + Down/Up 來上下移動當前行的 mapping。

[完全用 GNU/Linux 工作] 30. 銷毀資料 - Shred

過去在 GNU/Linux 裡,凍仁會使用 dd (1) ,此指令會將資料填零而達到抹除磁碟的功用,但就算這樣還是有被專業人士還原的風險;現在凍仁都改用 shred (2) 指令來完成這項任務,此指令是專門用來 撕碎 資料的。

[完全用 GNU/Linux 工作] 28. 使用 Live CD 修復 Debian/Ubuntu 系統

圖片
承上文 ( 27. Ubuntu 系統版本升級 ),如今日不幸於系統升級時當機,最嚴重將導致系統無法開啟,這時可以透過 Live CD 進行修復。

[完全用 GNU/Linux 工作] 27. Ubuntu 系統版本升級

Ubuntu 是個每六個月會釋出新版的 GNU/Linux 發行版本。它會不時提醒使用者可以進行升級版本的動作,還擁有圖形化的升級介面,是個很貼心的 Linux 系統!但凍仁曾因此中過招,於是都直接於 tty1 ( Ctrl + Alt + F1 ) 使用 Ubuntu Server 的方式升級,就再也不曾出事了。 試想,今日在圖形介面下升級時,若恰巧遇到 X Window 被重啟 (或換掉) 所導致的升級失敗,到頭來還是得回 tty1 下進行救援,那我們一開始不如就直接於 tty1 下使用指令升級不就得了。

[完全用 GNU/Linux 工作] 26. 使用 Clonezilla 打造不死的作業系統

圖片
早期凍仁使用 Ubuntu 做為主要工作環境時,常因為系統升級失敗而不得不走上重灌一途;現在除了會額外安裝備用的系統以外 (先前於 01. 前言 一文提過),平時還會使用 再生龍 (Clonezilla) 進行系統層面的備份,以備不時之須。

[完全用 GNU/Linux 工作] 25. 視窗管理及工作區 (下)

圖片
2.2. 桌面 (Desktop) ▲ 圖 5: Desktop 分類的設定。

[完全用 GNU/Linux 工作] 24. 視窗管理及工作區 (上)

圖片
自從 2007 年開始接觸 Ubuntu 7.04 以後,凍仁於 x86 電腦上的使用習慣有了大大的改變。與 Windows 相比,除了有更多可以操控視窗的快捷鍵外,更多了工作區的概念。這讓生活在視窗之海的凍仁解了套,也想說一句「我回不去了」,再也不想回到綁手綁腳的 Windows 上了。 ▲ 圖 1: 2 x 2 的工作區。

[完全用 GNU/Linux 工作] 22. 密碼管理員 - FPM2

圖片
Figaro's Password Manager 2 (fpm2) 是個基於 Figaro's Password Manager 並使用 GTK+ 2.0 改寫的密碼管理員。它除了會將各個數值使用 AES-256 演算法 (algorithm) 加密以外,還可與特定檔案進行二次加密,兼具安全性與便利性,是凍仁工作上的好幫手。