tmux 真心好用,可这内存也太夸张了

2016-05-20 08:46:49 +08:00
 ammzen

tmux 用了一段时间感觉真心不错,效率提升明显。可是最近发现内存占用特别高,下面是启动后一周的情况

  PID	USER	PR	NI	VIRT	RES	SHR	S	%CPU	%MEM	TIME+	COMMAND         
  28951	xxxxx	20	0	981m	971m	716	S	0.0	1.0	2:44.23	tmux

我的配置也就简单地改了一下快捷键,不知道 tmux 这么占内存正常不正常,请教一下大家

9848 次点击
所在节点    Linux
22 条回复
introom
2016-05-20 08:51:34 +08:00
不正常吧,服务器上挂的 tmux 没出现过这状况
kumu
2016-05-20 08:52:40 +08:00
```
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
27618 xxx 20 0 189.1m 168.5m 2.7m S 0.0 2.1 8:07.77 tmux
```
stevenyou
2016-05-20 09:19:32 +08:00
tmux 的每一个 pane 都有一个 scrollback buffer, 这个 buffer 的内存在 pane 初始化的时候就分配了
看一下你的.tmux.conf 里 history-limit 的设置
secondwtq
2016-05-20 09:21:29 +08:00
没出现过,服务器上一直好好的。

倒是挂在 Mac 上的会在长期不搭理它的情况下不定期默默退出
griffinqiu
2016-05-20 09:34:12 +08:00
不正常
acoada
2016-05-20 09:37:26 +08:00
尝试清一下 screen buffer
tput reset
soli
2016-05-20 09:54:36 +08:00
set-option -g history-limit 1024
ammzen
2016-05-20 09:59:50 +08:00
```
# 窗口、面板初始序号为 1
set-option -g base-index 1
setw -g pane-base-index 1
# 支持动态载入配置
bind r source-file ~/.tmux.conf \; display-message "Config reloaded"
# 切换窗格快捷键
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
# 调整窗格大小快捷键
bind H resize-pane -L 10 # 向左扩展
bind L resize-pane -R 10 # 向右扩展
bind K resize-pane -U 5 # 向上扩展
bind J resize-pane -D 5 # 向下扩展
# 打开新窗格为当前目录(无效果)
# bind '"' split-window -c '#{pane_current_path}'
# bind '%' split-window -h -c '#{pane_current_path}'
# 设置拷贝风格为 vi 风格
# bind Escape copy-mode
# bind -t vi-copy v begin-selection
# bind -t vi-copy y copy-selection
# unbind p
# bind p pasteb
setw -g mode-keys vi # Vi 风格选择文本
# 开启鼠标支持
setw -g mode-mouse on
set -g mouse-select-pane on
set -g mouse-resize-pane on
set -g mouse-select-window on
# 可视化通知
setw -g monitor-activity on
set -g visual-activity on
# 窗口列表居中显示
set -g status-justify centre
# 临时最大化面板或恢复面板大小
unbind Up
bind Up new-window -d -n tmp \; swap-pane -s tmp.1 \; select-window -t tmp
unbind Down
bind Down last-window \; swap-pane -s tmp.1 \; kill-window -t tmp

# copy to Mac OSX pasteboard
# if -b 'which -s reattach-to-user-namespace' 'bind y run "tmux save-buffer - | reattach-to-user-namespace pbcopy"'
# powerline 支持
# source '/home/muqing02/.jumbo/lib/python2.7/site-packages/powerline/bindings/tmux/powerline.conf'
# 设置状态栏的颜色
set -g status-fg white
set -g status-bg black

# 设置窗口列表的颜色
setw -g window-status-fg cyan
setw -g window-status-bg default
setw -g window-status-attr dim

# 设置活动窗口的颜色
setw -g window-status-current-fg white
setw -g window-status-current-bg red
setw -g window-status-current-attr bright

# 设置面板和活动面板的颜色
set -g pane-border-fg green
set -g pane-border-bg black
set -g pane-active-border-fg white
set -g pane-active-border-bg yellow

# 设置命令行或消息的颜色
set -g message-fg white
set -g message-bg black
set -g message-attr bright

# 设置状态栏左侧的内容和颜色
set -g status-left-length 40
set -g status-left "#[fg=green]Session: #S #[fg=yellow]#I #[fg=cyan]#P"
set -g status-utf8 on

# 设置状态栏右侧的内容和颜色
# 15% | 28 Nov 18:15
set -g status-right "#(~/battery Discharging) | #[fg=cyan]%d %b %R"

# 每 60 秒更新一次状态栏
set -g status-interval 60
```

这是我的配置,里面没有配置 history-limit 。
tmux 刚建立的时候内存占用并不大,时间长了才累积这么大的
knightdf
2016-05-20 10:06:15 +08:00
tmux+vim+mosh 路过, mac 上每次挂一个月关机一次,没觉得内存有啥问题
messyidea
2016-05-20 10:14:14 +08:00
从 screen 切换到 tmux ,感觉 tmux 没什么大问题,就是感觉 tmux4 个字母还没有 screen6 个字母好打, tmux 左右手切换两次, screen 只需要切换一次
yylzcom
2016-05-20 10:28:03 +08:00
@messyidea alias t='tmux'
ammzen
2016-05-20 10:33:35 +08:00
@messyidea 顺手打了几遍,怎么打了几遍觉得 tmux 更好打呢😶
SpicyCat
2016-05-20 10:38:41 +08:00
byobu + tmux
messyidea
2016-05-20 10:41:49 +08:00
@yylzcom 喜欢用原版
@ammzen 可能我已經习惯了
ffffwh
2016-05-20 10:47:17 +08:00
@yylzcom
alias emcas=emacs
alias emasc=emacs
argsno
2016-05-20 12:10:54 +08:00
@SpicyCat 看了一下,这个快捷键还不错
Wangxf
2016-05-20 12:50:56 +08:00
你是不是之前的没关,看下 tmux attach
daybyday
2016-05-20 13:21:40 +08:00
scrollback lines 千万不要设太大,更不要设成 unlimited scrollback ,不然肯定是启动越久,占用内存越大
hanxiV2EX
2016-05-20 21:46:19 +08:00
1.9a 好像有内存泄漏,今天升级后内存好多了。
singlepig
2017-02-24 18:25:38 +08:00
tmux 2.3
今天在 tmux 下跑了个 android 的编译脚本,过了一会发现 tmux server 用了 5G 内存。。。。。
一脸懵逼。。。搜了半天也没找到究竟是为什么, history-limit 设了 5000 ,不知道算不算多
@daybyday 请问你说的这个 scrollback 是终端的设置还是 tmux 软件的设置?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/279924

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX