海运的博客

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会话意外断开

分类
最新文章
最近回复
  • 1: 方法一ngtcp2要改下:./configure PKG_CONFIG_PATH=/usr/l...
  • 海运: 关闭服务器
  • 海风: override.battery.charge.low以及override.battery.r...
  • koldjf: 不能过滤
  • 杰迪武士: 此文甚好甚强巨,依照此文在树莓派2 + Rasbian上部署成功 感谢博主美文共赏
  • 海运: ups不知有没选项可设置此参数,不过你可以在另外一台电脑上安装nut客户端自动关机。
  • kgami: 想请教一下,设置了的电脑自动关机之后,几秒后UPS怎么也跟着关机了,导致另外一台电脑没关机就断...
  • 海运: 写的很详细了啊,/etc/nut/hosts.conf用以nut-cgi连接nut服务器参数,...
  • ryan: 请问下nginx配置好了,怎么和这个nut链接呢?最后可视化管理这块能给个详细一点的教程么?谢谢。
  • 1: /etc/config/fstab配置文件 https://openwrt.org/zh/do...