發表文章

目前顯示的是有「CentOS/Fedora/RHEL」標籤的文章

Enabling the InnoDB File-Per-Table tablespaces and migrate the MySQL database for Zabbix 3.2.6 on CentOS 7

As the Zabbix Ops , we want to split the large ibdata1 file , so than we can reduce the obsolete data like history_uint table . [ jonny @zabbix-server ~ ] $ ls -lh /var/lib/mysql/ [Enter] total 16G -rw-rw---- 1 mysql mysql 16K Aug 15 10:36 aria_log.00000001 -rw-rw---- 1 mysql mysql 52 Aug 15 10:36 aria_log_control -rw-rw---- 1 mysql mysql 15G Aug 15 12:45 ibdata1 -rw-rw---- 1 mysql mysql 5.0M Aug 15 12:45 ib_logfile0 -rw-rw---- 1 mysql mysql 5.0M Aug 15 12:45 ib_logfile1 drwx------ 2 mysql mysql 4.0K Aug 15 10:36 mysql srwxrwxrwx 1 mysql mysql 0 Aug 15 10:44 mysql.sock drwx------ 2 mysql mysql 4.0K Aug 15 10:36 performance_schema drwx------ 2 mysql mysql 6 Aug 15 10:36 test drwx------ 2 mysql mysql 8.0K Aug 15 13:59 zabbix ▲ We can see the ibdata1 filesize is very large.

簡單易用的 Zabbix 監控服務

圖片
上週六 (05/26),是 DevOps Taiwan 的社群日。這次「 Monitoring Tools 大亂鬥 」一共邀請了 11 位講者,從 雲端運算 (Cloud Computing) 的 AWS , Azure , GCP ,和 自由軟體 (Free Software) 的 Consul , ELK , Nagios , Prometheus , Zabbix 等各種監控工具來探討 CALMS 的 監控 、 量測 和 建立回饋機制 等關鍵議題。 感謝益師益友 Cheng-Wei Chen 的邀請,讓凍仁能代表 Zabbix 上台分享。這 15 分鐘的分享,主要以 Zabbix 的基礎觀念、系統架構等入門知識為主,然後用 Dockerize 的 Zabbix 進行簡單的 demo,最後補充些實戰經驗。 ▲ 凍仁於 05/26 DevOps Taiwan 分享的 Zabbix 入門簡報。由於 Zabbix 現在就如同凍仁的 眼 ,無時無刻幫團隊的大家看照數百的伺服器,故這次選了 eyes 的 cowsay 意像圖。

Install the Vim 8.0 and YouCompleteMe with Make on CentOS 7.3

圖片
As a vimmer , I want to complete and install the Vim 7.4.1578+ at ~/.local , so than I can use the YouCompleteMe plugin on CentOS 7.3 . ▲ The Vim 8.0.1522 on CentOS 7.3.1611.

firewalld - CentOS 7 的動態防火牆

如同先前在 [完全用 GNU/Linux 工作] 07. 簡易的防火牆 一文提到,Ubuntu 從 8.04 LTS 開始多了 ufw 這個簡單的防火牆,CentOS 也在 7.0 導入可以動態管理防火牆的 firewalld 。Weithenn 前輩的 CentOS 7.3 基礎設定 (10) - 調整 Firewalld 防火牆規則 一文很好的解說了 firewalld 與 iptables 的差異,想深入了解的伙伴不妨參考一下。 firewalld 還有個跟 Windows 7 類似的 網路共用設定 機制,在官方文件中是使用 界域 1 (zone) 來敘述這項依據不同環境所設計的網路區域功能。我們可以藉由在各種不同的 zone 進行設置,來達到公開網域 (public network zone) 不開 ssh 埠口,而內部網域 (internal network zone) 則允許等較複雜的信任等級配置。這部份凍仁還未深入研究,在此就不多加說明。

如何在 CentOS 7 解決 glibc 的 yum 套件相依性問題

這週凍仁接到一個需要幫 CentOS 7 部署 OpenLDAP client 的任務。過程中,總是有一兩台 server 會遇到 glibc 相依性問題,並為此煩惱。如果是所有的 server 都有同樣的問題還好解決,最麻煩的就是遇上這種時好時壞的情形。 [ jonny @centos7 ~ ] $ sudo yum install nss-pam-ldapd [Enter] ... 1 --> Finished Dependency Resolution 2 Error: Package: glibc-2.17-157.el7_3.1.i686 (internel-upadte) 3 Requires: glibc-common = 2.17-157.el7_3.1 4 Installed: glibc-common-2.17-157.el7_3.2.x86_64 (@updates) 5 glibc-common = 2.17-157.el7_3.2 5 Available: glibc-common-2.17-105.el7.x86_64 (internel-base) 6 glibc-common = 2.17-105.el7 7 Available: glibc-common-2.17-106.el7_2.1.x86_64 (internel-upadte) 8 glibc-common = 2.17-106.el7_2.1 9 Available: glibc-common-2.17-106.el7_2.4.x86_64 (internel-upadte) 10 glibc-common = 2.17-106.el7_2.4 11 Available: glibc-common-2.17-106.el7_2.6.x86_64 (internel-upadte) 12 glibc-common = 2.17-106.el7_2.6 13 Available: glibc-common-2.17-106.el7_2.8.x86_64 (internel-upadte) 14 glibc-co

使用 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

screenfetch - 命令列 (cli) 裡的檢視系統工具

圖片
screenfetch 是個可以讓我們在 *nix 的命令列 (command line interface, 簡稱 cli) 裡檢視系統資訊的小工具。它除了會用 ASCII 繪出該發行版本 (distribution) 的圖示,還會列出各式的系統資訊。 screenfetch 最棒地方是連 Mac OS X 和 Windows 都有它的蹤影,是個非常經典的小工具呢! ▲ screenfetch on Debian 7.9.

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。

透過 Zabbix 監控 VPN (PPPoE) 狀態

圖片
    於某新公司重新出發的凍仁開始接手維護一套名為 Zabbix 的 GPL 網路監控系統 (詳情請參考 維基百科 )。既然與 Nagios 同是網路監控系統,相信它也可以用來監控某工作站上的 VPN 連線狀態。 內行人都知道 VPN 這玩意會斷線是家常便飯的 。     從剛接觸 Zabbix 到完成此任務凍仁花了兩天的時間,繞了一大圈後總算是對 Zabbix 的架構流程有些了解。以下為凍仁對 VPN (PPPoE) trigger 的筆記,相信能讓大家少走些冤枉路。

[完全用 GNU/Linux 工作] 20. 增進 SSH 使用效率 - ssh_config

SSH 可說是每台 GNU/Linux 必裝的服務之一,我們可以藉由它,在遠端進行一切的操作。為避免被怪客 (cracker) 入侵,會於提供該服務的機器加上限制,以提高安全性,例如:更改埠口 (Port)、限制 IP 登入或只使用金鑰登入 ... 等。 隨著機器數量及限制增加的同時,使用上的繁瑣及不便也會隨之增加。這時,我們可事先設定各個主機,以便日後的使用。Windows 上的 PieTTY , Xshell 皆有此功能,而在 Linux 裡凍仁則習慣直接編修 openssh-client 的設定檔 $HOME/.ssh/config 。

[完全用 GNU/Linux 工作] 16. 於 Vim 裡使用 sdcv

圖片
撰寫上文 ( 15. 文字界面的字典 sdcv ) 時找到 Yunt 的 在 Vim 裡使用 sdcv 的 plugin ,凍仁現在只需使用 \ w 即可快查單字,連原先輸入的動作都省了,這下就可以得到有選字取詞功能的 sdcv 了 (詳情請參考 vim-sdcv )。 ▲ 可選字取詞的 Vim。

[完全用 GNU/Linux 工作] 15. 文字界面的字典 - sdcv

圖片
sdcv 可以說是文字界面的 星際譯王 (StarDict) ,它能使用星際譯王的字典詞庫,所以不用怕哪天沒人維護 StarDict,與其開啟圖形介面來查個單字,不如直接開終端機來的迅速。以下凍仁就列出幾項優缺點: 優點: 可於各種 terminator 使用,搭配 Guake 有加分效果。 可使用相同的字典詞庫。 可與純文字的工具搭配使用。 缺點: 需自備字典詞庫 無法選字取詞。 無法使用網路辭典。

[完全用 GNU/Linux 工作] 14. 色碼擷取器 - Gpick, Gcolor2

圖片
在開發網頁時多少會自訂些顏色來符合網站整體的風格,這時凍仁會先透過「色碼擷取器」來挑選適合的顏色。在 GNU/Linux 裡我們可以使用 Gpick 及 Gcolor2 來擷取它們。 Gpick 是個基於 C++ 及 GTK+ 所開發的進階色碼擷取器,完整度比 Gcolor2 高上不少。前者除了色碼擷取 (Color picker) 跟色碼產生器 (Scheme generation) 以外,更多了協助色碼擷取的貼心放大鏡以及版面預覽 (Layout preview) 功能。 ▲ Gpick 截圖。

[完全用 GNU/Linux 工作] 11. Hacking Vim

圖片
Vim 是功能完整且強大的文字編輯器 (Text Editor,以下簡稱 Editor),相信接觸過 GNU/Linux 的伙伴都曾接觸過。相信不少人對於它的印象就如同 COSCUP 2011 的經典名句「 第一次用 vi 時進的去出不來 」一樣,不過凍仁相信,只要事先做過些功課,便可習得第一成的功力,待大成後,其帶來的便利性是其他的 Editor 難以取代的! ▲ 使用 markdown 語法撰寫鐵人賽文章的截圖。 視窗切割及 CtrlP 火力展示,其怖景主題為 fu 。

[完全用 GNU/Linux 工作] 09. Hacking Bash

圖片
真要說 GNU/Linux 有哪裡吸引人,那就是 bash 裡的純文字世界了 (它可是比 Windows 上的 命令提示字元 還強大呢!),只要我們熟知各種指令及純文字編輯器,就可以完全駕馭電腦,當電腦的主人。但 Bash 的博大精深凍仁很難用一篇文章來解釋,這裡只能簡述些凍仁平時常用的部份,相信 《鳥哥的 Linux 私房菜》 上面會寫的比凍仁更詳細。 ▲ 原生的 Bash (on CentOS)。

[完全用 GNU/Linux 工作] 05. 套件庫及鏡像站

圖片
每個 GNU/Linux 都有屬於它的哲學及用途,以下就讓凍仁簡述一下自己的看法。 Debian : 堅守 自由軟體 精神,擁有嚴謹的非營利組織團隊,支援眾多平台,例如 NOKIA N900 及 Raspberry Pi 。主要分成穩定版 (stable)、測試版 (testing)、及不穩定版 (unstable)。 Ubuntu : Debian 的不穩定版分支,其設計目的為使用者導向,易上手且驅動支援較完整,主要分成桌面版 (desktop) 及 伺服器版 (server),並於每兩年發布長期支援版本 (LTS)。 RHEL : 由 Red Hat 公司釋出,其主要對象為追求穩定的公司行號。 CentOS : 依照 開放原始碼 所釋出的 RHEL,也可說是社群版的 RHEL,但不包含一些封閉的軟體。

[完全用 GNU/Linux 工作] 04. 套件管理

有了網路我們就可以開始安裝套件,但要怎麼安裝套件也是門大學問,而且在不同的 GNU/Linux 發行版本 (Distribution) 中所使用的 套件管理系統 (Package Management System) 也不同。Debian 血統上常用的有 dpkg, apt 和 aptitude,Red Hat 血統上常用的有 rpm 和 yum。(圖形界面中也有不少套件管理員可使用,在此凍仁就不多加贅述)。 作業系統 Debian/Ubuntu CentOS/RHEL 套件管理系統 dpkg aptitude apt rpm yum apt-get apt-cache 列出所有的套件 -l -qa list 搜尋 -l | grep search search -qa | grep search 檢看詳細資訊 -I show show -qi info 安裝 -i install install -ivh in

[完全用 GNU/Linux 工作] 03. 網路設定

灌好 Linux 後的第一步就是要想辦法上網,因為有了網路我們就是無敵的!可以藉此 Google 到所需知識,也可透過網路上的套件庫及鏡像站取得各式的軟體 (有點類似 Android 或 iOS 商城,只不過它是 Open Source 的,任何人都可以自由的修改並散佈),在 Linux 的世界裡我們可以使用各種方式與網路連線。 一位專業的 MIS 是不能靠圖形界面打天下的,我們除了要學會怎麼在各種情境下上網,還必須了解其背後的運作原理。

完全用 GNU/Linux 工作

圖片
GNU/Linux 至今已經相當成熟並足以應付日常生活之使用,凍仁也於 2009 年開始使用它來工作至今,希望可以透過 第 6 屆 iT 邦幫忙鐵人賽 匯整些較有系統的文章以及分享些上班的經驗。 2015-05-09 此系列文章已整合至 GitHub 和 GitBook 上,請至 http://chusiang.gitbooks.io/working-on-gnu-linux/ 觀看最新版本。 此封面為 +Violet Chen 所設計。 若有需要勘誤的部份,觀迎大家來信至 working-on-gnu-linux (at) drx.tw ,(當然您也可以上 GitHub 網站送 Pull Request 或發 issues),讓此書可以更完美。

藉由 linux_logo 自訂 ssh 歡迎訊息

圖片
Linux_Logo 是個 motd (message of the day) 產生器,我們可以藉由它來客製化 ssh 登錄時的歡迎訊息。 ▲ linux_logo on Debian 6.0 ▲ linux_logo on CentOS 5.8