海运的博客

Centos安装使用配置tmux

发布时间:August 22, 2012 // 分类:Tmux // No Comments

CentOS安装支持组件:

yum install libevent-devel ncurses-devel

安装tmux

wget http://downloads.sourceforge.net/tmux/tmux-1.6.tar.gz
tar zxvf tmux-1.6.tar.gz 
cd tmux-1.6
./configure
make
make install

启动新会话:

tmux [new -s 会话名 -n 窗口名]

启动新会话时执行命令:

#-d 后台启动
#exec bash 当ping结束时启动bash,不然会退出tmux窗口
tmux new -s test -d "ping qq.com; bash"  

指定会话启动新窗口:

tmux [neww -t 会话名 -n 窗口名]

恢复会话:

tmux at [-t 会话名]

列出所有会话:

tmux ls

关闭会话:

tmux kill-session -t 会话名

在 Tmux 中,按下 Tmux 前缀 ctrl+b,然后:
会话

:new<回车>  启动新会话
s           列出所有会话
$           重命名当前会话

贴上我的tmux配置文件:

#https://www.haiyun.me
bind a send-prefix
bind m command-prompt "splitw -h 'exec %%'"
bind S command-prompt "neww -n %1 'ssh %1'"
bind r source-file ~/.tmux.conf \; display-message "Config reloaded..."
bind k selectp -U 
bind j selectp -D
bind h selectp -L
bind l selectp -R
bind K resizep -U 10 
bind J resizep -D 10
bind H resizep -L 10
bind L resizep -R 10
bind ^i kill-session
bind ^l last-window
set -g prefix C-a
set -g base-index 1
setw -g pane-base-index 1
set -g display-time 5000
set -g repeat-time 1000 
set -g status-right '"#(hostname)" #(date -d "today" +"%Y/%m/%d-%H:%M")#(uptime |cut -d ',' -f 2-)'
set -g status-interval 10
set -g status-right-length 100
set -g status-utf8 on 
set -g status-keys vi 

setw -g mode-mouse on
set -g mouse-select-pane on
set -g mouse-select-window on
set -g mouse-resize-pane on
set -g mode-mouse on
set -g mouse-utf8 on
setw -g mode-keys vi
setw -g utf8 on
#setw -g window-status-current-bg red

Tmux实现Screen -xR类似功能

发布时间:August 21, 2012 // 分类:常用软件 // No Comments

之前有介绍Xshell登录ssh后进入Screen窗口,意外断开后不影响当前执行任务,重新连接服务器回到之前断开的终端。

screen -xR

Tmux重新连接到之前的窗口可使用:

tmux attach

不过第一次执行会提示:

#https://www.haiyun.me
no sessions

修改Tmux配置如果无分离终端则新建:

cat ~/.tmux.conf
new-session

20220315更新,以上方法tmux加载配置有问题,如设置默认default-terminal无效。
注释no sessions使用以下命令解决:

tmux new -A -s 0

参考:
https://unix.stackexchange.com/questions/103898/how-to-start-tmux-with-attach-if-a-session-exists

Xshell配合Screen之ssh会话永不断开

发布时间:August 19, 2012 // 分类:Xshell // No Comments

之前有介绍通过Screen虚拟窗口防止SSH会话意外断开,再设置Xshell在登录SSH服务器的时候直接打开Screen会话,断开SSH会话后再连接直接恢复之前的会话,这样就更完美了。
设置Xsehll登录服务器后执行screen命令:
xshell登录执行screen命令.png
这样登录后可以执行交互式命令进行测试,如top,然后直接关闭会话,再连接服务器就会恢复到之前执行top命令状态。

SSH管理服务器必备多窗口工具Screen使用

发布时间:August 19, 2012 // 分类:常用软件 // No Comments

在使用SSH管理服务器最怕的就是突然断开了,这样会导致当前运行的任务终止甚至造成数据丢失,使用Screen可避免此类事情的发生。
CentOS一般都自带Screen,安装也很方便:

yum install screen

Screen常用参数:

#https://www.haiyun.me
-ls #列出当前screen会话
-d #将指定的screen会话离线
-r #恢复指定的screen会话
-U #使用UTF-8编码
-R #先试图恢复离线的作业,若无离线作业则建立新的screen会话
-x #恢复之前离线的会话,使用-R多会话下适用
-S name #新建指定名称会话
-dmS name #以分离模式新建会话
-wipe #列出当前screen会话,并清除不正常的会话

在Screen窗口下常用快捷命令:

C-a c #新建会话
C-a n #下个会话
C-a p #前个会话
C-a 0-9 #切换指定会话
Ctrl+a [Space] #顺序切换会话
C-a C-a #两个常用会话间切换
C-a x #锁住当前会话
C-a d #分离当前会话
C-a z #后台执行当前会话
C-a w #列出当前所有会话
C-a t #显示系统时间和负载
C-a K #终止当前会话

应用示例:
进入Screen会话:

screen

分离当前会话:

C-a d
#即按Ctrl不松开接着安a、d键

分离后不影响Screen会话中的任务,查看分离的会话:

screen -ls

恢复分离的Screen会话:

screen -r <id>

Windows下使用Xshell连接可参考:Xsehll配合Screen再也不怕SSH会话意外断开

分类
最新文章
最近回复
  • 海运: 恩山有很多。
  • swsend: 大佬可以分享一下固件吗,谢谢。
  • Jimmy: 方法一 nghtp3步骤需要改成如下才能编译成功: git clone https://git...
  • 海运: 地址格式和udpxy一样,udpxy和msd_lite能用这个就能用。
  • 1: 怎么用 编译后的程序在家里路由器内任意一台设备上运行就可以吗?比如笔记本电脑 m参数是笔记本的...
  • 孤狼: ups_status_set: seems that UPS [BK650M2-CH] is ...
  • 孤狼: 擦。。。。apcupsd会失联 nut在冲到到100的时候会ONBATT进入关机状态,我想想办...
  • 海运: 网络,找到相应的url编辑重发请求,firefox有此功能,其它未知。
  • knetxp: 用浏览器F12网络拦截或监听后编辑重发请求,修改url中的set为set_super,将POS...
  • Albert: 啊啊啊啊啊啊啊啊啊 我太激动了,终于好了英文区搜索了半天,翻遍了 pve 论坛没找到好方法,博...