標籤:
前天隨意點開部落格園,看到了一篇關於tmux的文章 Tmux - Linux從業者必備利器,特意還點進去看了。畢竟Linux對於做遊戲服務端開發的我來說,太熟悉不過了。不過我就粗略地看了一眼,就關掉了。直到第二天碼農周刊
就推薦了這篇文章,才引起我真正的關注。tmux
真的那麼好用嗎?所以我自己也倒騰來一遍,的確在許多情境下還是非常有用的。如:
- 做伺服器的,肯定需要關注效能的,而tmux多個pane可以很方便同時關注多項效能指標;
- 我們的遊戲服剛好有多個服務存在,而聯調多個服務的時候,可以同時看到多個控制台確實很方便。
以上並不是其它方式不可以,譬如我用xshell的,同時看多個xshell可以達到相同的效果。但切換的時候還是有些不方便。 因為環境不同,原作者用Mac,而我用CentOS,有些地方存在不一樣,故記載方便自己以後查閱。
CentOS下安裝
首先我是用yum install tmux
嘗試安裝的。估計沒有源,沒有找到tmux。所以習慣性直接找原始碼安裝。
但是其中有依賴,需要先安裝libevent
。
wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gztar xzvf libevent-2.0.21-stable.tar.gzcd libevent-2.0.21-stable./configure && makemake install
然後再下載源碼安裝tmux
git clone git://git.code.sf.net/p/tmux/tmux-code tmuxcd tmuxsh autogen.sh./configure && makemake install
過程中遇到了兩個報錯,解決都比較簡單,當然是查閱資料後。
問題1:
期間我遇到了執行autogen.sh 報錯,原因是我沒有安裝automake。這個直接yum install automake
就簡單解決了。
問題2:
執行的時候遇到
libevent-2.0.so.5: cannot open shared object file: No such file or directory
的報錯,解決辦法也比較簡單,既然找不到,那就換個找得到的地方唄。
ln -s /usr/local/lib/libevent-2.0.so.5 /usr/lib/libevent-2.0.so.5 # 32位系統ln -s /usr/local/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5 # 64位系統
使用和快速鍵
直接在命令列輸入tmux即可進入tmux的模式。
tmux主要有windows表單操作和Pane操作,個人覺得windows對於我來說,意義不大(並不是說windows模式沒適用情境),所以這裡主要講下Pane的相關操作。
快速鍵
tmux的快速鍵都要先按C-b(Ctrl-b)
。然後再按下面表格內容,才能達到相應的效果。
session和其他相關快速鍵
快速鍵 |
功能 |
C-z |
關閉tmux. |
: |
進入tmux命令列模式. |
? |
列出所有快速鍵. |
t |
顯示時間. |
d |
退出當前tmux用戶端,tmux後台運行. |
$ |
重新命名當前session. |
s |
切換session 顯示所有session並切換到某一個session. |
( |
切換session 切換到上一個session. |
) |
切換session 切換到下一個session. |
L |
切換session 到前一個活躍的session. |
window相關快速鍵
快速鍵 |
功能 |
c |
新增一個window. |
& |
退出當前window. |
, |
重新命名當前window. |
l |
跳轉到上一個所在window. |
i |
顯示當前window的資訊. |
w |
切換window 顯示所有window並切換window. |
0 to 9 |
切換window 到相應編號的window. |
p |
切換window 上一個window. |
n |
切換window 下一個window. |
’ |
切換window 到輸入編號的window. |
f |
切換window 到搜尋到的window. |
Space |
改變當前window下的pane布局. |
pane相關快速鍵
快速鍵 |
功能 |
! |
從window移除當前pane. |
" |
將當前pane變成上下兩個pane. |
% |
將當前pane變成左右兩個pane. |
x |
關閉當前pane. |
q |
顯示pane的索引. |
z |
最大化或者恢複當前pane. |
{ |
跟前一個pane交換位置. |
} |
跟後一個pane交換位置. |
o |
切換Pane 到下一個pane. |
; |
切換Pane 進入到前一個操作過的pane. |
Up, Down Left, Right |
切換Pane 使用方向鍵切換到相應方向的pane. |
可能有些快速鍵有些出入,可以的話提醒下。另外有些快速鍵沒有搞懂,而且快速鍵比較多,個人覺得記得主要的幾個切換快速鍵就足夠用來。比較tmux只是一個協助工具,沒有必要在其上面那麼用心。加粗的是個人覺得比較實用的。
tmux不中斷session的模式確實很666666,每次連回去就可以快速接上上次結束的環境。而且多個pane也非常適合要開啟並監控多個服務的情況。
參考資料
- http://cenalulu.github.io/linux/tmux/
- http://elroyjetson.org/dev-notes/centos/installing-tmux-on-centos-6-2
- http://www.nigeldunn.com/2011/12/11/libevent-2-0-so-5-cannot-open-shared-object-file-no-such-file-or-directory/
文章同步到github部落格,請轉載請保留原文連結:
原文地址:http://veiyn.com/2015/04/28/401-deploy-tmux/
[Linux]CentOS下安裝和使用tmux