GNOME Terminal终端滚动缓冲区默认较小,需在“编辑→首选项→滚动”中取消勾选“无限”,将“滚动回放”设为10000等值并重启终端生效;该设置影响Shift+PageUp回溯能力,与less等命令分页无关。

终端默认只缓存几百行历史输出,翻页时发现往上滚几页就“断了”——这不是操作问题,是滚动缓冲区太小。调大它就能解决。
怎么改终端滚动回放行数(GNOME Terminal)
GNOME Terminal 的滚动历史由“Scrollback”控制,不改它,Shift + Page Up 最多只能翻几十页。
- 打开终端 → 编辑 → 首选项 → 选中当前配置文件 → 切换到「滚动」标签页
- 取消勾选「无限」(如果勾选了,
Scrollback输入框会灰掉;想精确控制就别勾) - 把「滚动回放」数字改成
10000或更高(5000起步已够日常用) - 关闭并重启终端生效(已有会话不会自动刷新)
为什么不能只靠 less 或 more 管翻页
管道加 | less 是临时分页,但无法替代终端自身的滚动缓冲——比如你执行了 journalctl -u nginx,中途没加 | less,等输出完再想回看顶部,就只能靠终端滚动。这时候缓冲区大小直接决定你能看到多早的内容。
Ubuntu 26.04 LTS(代号“Resolute Raccoon”)是Canonical于2026年4月23日发布的下一代长期支持版操作系统,提供长达10年的技术支持。它搭载Linux 7.0内核与GNOME 50桌面环境,全面转向Wayland协议,并引入Rust重写的核心工具以增强安全性。官方提供适用于AMD64和ARM64架构的桌面及服务器ISO镜像,是追求前沿技术与极致稳定的开发者
-
less是命令级分页,只对单次命令输出有效 - 终端滚动是会话级缓存,覆盖所有输出(包括多条命令、提示符、错误信息)
- 远程 SSH 连接时,
less可能因终端尺寸变化出错,而本地滚动缓冲更稳定
终端滚动失效或只能翻半页的常见原因
不是设置没生效,而是被其他机制干扰了。
- 用了
tmux或screen却没启用鼠标模式:set -g mouse on才能让滚轮在 pane 内正常滚动 - 某些轻量终端(如
xfce4-terminal)默认滚动行数更低,且界面里叫法不同(可能叫「保留行数」) - 在 VirtualBox 或 VMware 里,若没装
open-vm-tools或virtualbox-guest-utils,触控板双指滚动可能被截断 -
Ctrl + L清屏后,历史缓冲仍在,但光标回到顶部,容易误判“没内容了”
真正影响翻页体验的,从来不是快捷键记不记得,而是缓冲区设了多少行、有没有被嵌套终端或虚拟化层吃掉滚动事件——调完 Scrollback 后,顺手试下 printf '%s\n' {1..2000} | cat,再 Shift + Page Up 滚到底部,就知道是不是真生效了。

















