發表文章

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

[完全用 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 工作] 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 工作] 10. Shell Script

Shell script 說穿了就是把 bash 各種的指令 (command) 包進一個 script 裡,並搭配條件判斷式、迴圈 (loop) 及應付各種狀況,更可與排程 (Cron Job) 結合進行週期性的作業。 隨著使用的指令及撰寫的 script 增加,對電腦的整體觀念及熟悉度也會隨之提升。這種完全操控電腦的招式就藏在日常生活中,等著大家去發現!這就是為什麼凍仁會堅持要學習指令的原因,依賴圖形介面是難以得到累積的。以下就讓凍仁介紹些 script。

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

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

[完全用 GNU/Linux 工作] 06. 安裝驅動程式

圖片
要想完全駕御一台電腦並將發揮到最大功效,我們必需讓軟體 (女方) 與硬體 (男方) 互相認識且達到良好的溝通,而這些負責溝通的軟體我們稱之為 驅動程式 (媒婆)。在 Windows 上有 裝置管理員 ,在 Ubuntu 上也有圖形界面的 硬體驅動程式 ( Jockey ) 可以使用,但在 Debian 或是其它的發行版本上不見得會有 (Jockey 並不是萬靈丹,GNU/Linux 硬體支援度已比先前進步不少,但多少還是會發生找不到的情形),這時我們就必須使用 lspci 指令來取得各個 PCI 裝置的型號,並一步步補完之。 ▲ jockey-gtk on Ubuntu 10.04。

[完全用 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 工作] 02.建立開機媒體 (隨身碟、光碟)

圖片
規劃好作業系統及分割區後,我們還需要一個開機媒體才行進行安裝。在以前 (或為了相容性) 都得用燒錄光碟才可進行安裝手續;現在我們可以使用隨身碟 (Flash Disk) 來代勞。請注意隨身碟容量務必大於光碟映像檔 (image)! 凍仁常用的光碟鏡像站。 Clonezilla live CentOS 6.4 Debian 7.1.0 Ubuntu 12.04.3

完全用 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),讓此書可以更完美。

Drupal 高雄小聚: Drupal 基礎環境架設 on Windows

圖片
緊接著凍仁於 6 月分享完 Drupal 7 上的 Multi-site 後,我們請到了 健哲大哥 分享此次的主題,有銜接到凍仁之前的主題並在深入講解各個細節, 當然兩者先後順序換一下會更好 。 此次小聚除了拿到課堂講義以外,講師居然還事先錄好各個實作的影片,達成光速 Demo 的境界,真的很用心,這點凍仁還不曾嘗試。這裡就附上當日的筆記,希望可以幫上準備入門的 Drupaler。 ▲ 此心智圖使用 Freeplane 製作,附上 Flash 版連結。

"$TERM too long - sorry" on URxvt run screen

凍仁改用 rxvt-unicode (URxvt) 為主力的 Terminal Emulator 後,於 Server 上的 Debian 6.0 的機器上使用 screen (4.00.03jw4) 指令時會有 $TERM too long - sorry. 的錯誤訊息,不知 Arch Linux Forums 一文提交 patch 有沒有被接受,不過凍仁在 T410 上跑的 Debian 7.0 (4.01.00devel) 則無此問題。

藉由 linux_logo 自訂 ssh 歡迎訊息

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

Defrag - 磁碟重組指令 on W2k8

基於維護上的方便凍仁在 Windows 2008 Server 裡會使用 工作排程器 來進行些例行性的維護工作 (例如:磁碟重組、掃毒...),在 Linux 裡我們可以使用 crontab ,不過想使用 工作排程器 新增排程還是得搭配指令及對應的參數才行,而以下則是 Windows 內建的 Defrag.exe 相關指令。

啟用 APC RFC1867 on Drupal 7

轉戰 web developer 的凍仁在某學姊的建議下開始使用 Drupal 來寫資訊系統,由於很多東西都還在摸索就不多加詳述了,以下是凍仁在 狀態報告 (status) [1] 中遇到的錯誤訊息。 上載進度 未啟動 您的伺服器有通過 APC 的顯示檔案上載進度的能力,但他沒有啟動。將 apc.rfc1867 = 1 增加到您的 php.ini 配置。此外建議使用 PECL uploadprogress ,支持多個檔案同時上載。

限制 phpMyAdmin 存取 IP on Debian 6

在架設 LAMP 環境時,剛入門 MySQL 的凍仁都會順手裝上 phpMyAdmin ,來管理資料庫,但這是個壞習慣,尤其是對已經上線的機器而言!若沒做好防護,就會敞開大門讓怪客 (cracker) 有機可乘!不過我們可以透過 只允許特定 IP 連線 來達到防護效果,以下將分別列出 Apache 以及 Nginx 的設定。

自訂 Grub2 on Ubuntu 9.10+

從 Ubuntu 9.10 開始,凍仁就沒什麼調校過開機選單,畢竟 Grub 與 Grub2 的差異真的不小,記得以前只要修改 /boot/grub/menu.lst 一個檔案即可,可現在的卻會動態產生這個檔案, 也就是實際可編寫的設定檔改了位置也改了規則 。 不過 Grub2 最棒的地方是它會搜尋所有分割區上的作業系統,並納入開機選單,這點可是讓 Ubuntu 更人性化不少呢!至於 Grub2 不完美的部份嘛,那就自己小小調校一下了。