「最好的终端」这个问题本身就问错了

每个 Linux 发行版至少装一个终端模拟器,大多数装三个。问题不是”哪个最强”——而是这一个星期你在做什么。一台 4K 显示器跑 GNOME 桌面要的程序,跟一台 Pi 走 headless 通过 SSH 接入的那种,要的东西完全不一样。

这一篇挑了 8 个能在 Linux 上跑、有明确拿手活的终端,按场景分组。没有哪个严格最好。能让你忘了它在那儿的就是适合你的。

默认装好就能用的

GNOME Terminal

Ubuntu 和 Fedora Workstation 上每次都自带 GNOME Terminal。开得快、字体清楚不闹脾气、tmuxssh 颜色都正确、要做的配置一项没有。它跟 GNOME 桌面是打通的——系统剪贴板互通、从文件管理器拖个文件过来就是路径、Help 菜单里有跳转。带标签栏,菜单里也提供分两栏视图。

如果你今天刚开始用 Linux,这就是 gnome-terminal(在 Wayland Fedora 上是 kgx)白给的那个。学几个快捷键——Ctrl+Shift+T 新标签、Ctrl+PageUp/PageDown 切换、Ctrl+Shift+C/V 剪贴板——你一段时间内不需要再折腾别的。

Konsole

桌面是 KDE Plasma 的话,默认就是 Konsole。GNOME Terminal 能干的事它全能,然后多一截——随时分屏(Ctrl+Shift+)、每个分屏可以独立配置 profile、自带文件管理器面板、标签页里能任意分。多数人最喜欢的功能是 profiles——每一个 profile 可以挂自己的标题、环境、工作目录、字体和配色方案。顶栏四个按钮”开发 / 运维 / 家用 / 生产”四个场景各自预调好。

Konsole 在非 KDE 桌面上也能跑,只是跟 Dolphin 联动那个文件管理器面板没了。安装:sudo apt install konsole(Debian/Ubuntu),sudo dnf install konsole(Fedora)。

经典款 xterm

xterm 自从 1996 年起就挂在每个 X server 上。Alpine、Raspberry Pi OS Lite、每个救援 shell 里都有它。不漂亮,标签栏、Unicode emoji、现代人期待的修饰一样都没有。哪怕你只剩一个 framebuffer,也能给你渲染出一块文本框。把它当成所有机器上保证装着的最小公约数。

ssh 进一台陌生机器,自己的 dotfiles 用不上、编辑器不会上色、prompt 是一行没法读的转义码——这时候跑 xterm 你至少有窗口。这就是它的活。

走 GPU 那一拨

如果你有独显,而且在乎重负载输出(cat huge.json 一天一次,或者翻 200 MB 的 nvidia-smi 输出)下的像素级渲染,GPU 终端是肉眼可辨的升级。它们绕过 CPU 字形绘制,直接从显存推像素。

Alacritty

Alacritty 的定位就是”世界上最快的终端模拟器”。Rust 写的、OpenGL 撑腰、单个 TOML 配置文件。没有标签、没有分屏——它主张你应该用 tmux 或 zellij 干这件事,而不是在终端里复制一遍。诚实、有立场、快。

Toml
# ~/.config/alacritty/alacritty.toml
[window]
opacity = 0.92
padding = { x = 8, y = 8 }

[font]
size = 11.0

[colors.bright]
black = "#5e6262"

[[key_bindings]]
key = "V"
mods = "Control|Shift"
action = "Pipe"

安装:Ubuntu 24.04+ 有 apt install alacritty,Arch 是 pacman -S alacritty,Fedora 是 dnf install alacritty。配置热加载——保存即生效。

kitty

kitty 也是 GPU 渲染,但它对”该不该带标签/分屏”这个争论态度是反过来:内置。按一下 Ctrl+Shift+Enter 开新分屏,鼠标拖一拖就重排,里头 tmux 是给重度用户用的不是每天的。它另一个差异化点是 image protocol——把图片直接 pipe 进终端,kitty 用 kitty +kitten icat 直接渲染。viu 从 shell 也能干。日志里贴截图、wgpu shader 编译报错带图像都很顺手。

Bash
# 在终端里直接显示图片
kitty +kitten icat diagram.png

# 或者用更简单的 viu
viu diagram.png

安装:apt install kitty / pacman -S kitty / dnf install kitty-terminal。配置在 ~/.config/kitty/kitty.conf

WezTerm

WezTerm 是个 Rust 终端,跨平台(Linux、macOS、Windows),Lua 配置,自带 multiplexer——标签、分屏、工作区切换器,开箱即用。它还内置 SSH 客户端和图像协议。如果你一次 SSH 进 5 台机器,想一个窗口搞定、也不想专门学 tmux,WezTerm 是不用学 tmux 的答案。

Lua
-- ~/.config/wezterm/wezterm.lua
return {
  ssh_domains = {
    { name = "prod",       remote_address = "10.0.0.5" },
    { name = "staging",    remote_address = "10.0.0.6" },
  },
  default_prog = { "/bin/bash", "--login" },
}

安装:Debian/Ubuntu 从 GitHub releases 拿 .deb/.rpm/AppImage,Fedora/Arch 直接装包。

Wayland 原生 + 轻量

Foot

Foot 是专门给 Wayland 合成器做的。它不走 X11、不开 XWayland 回退,在 wlroots 那一套(Sway、Hyprland、River)上重负载小。GPU 加速渲染,scrollback 支持正则搜索,二进制足够小,在带宽预算紧张的 Pi 上也装得下。

安装:大多数发行版都有。Arch 上 pacman -S foot,Debian bookworm 起 apt install foot。配置在 ~/.config/foot/foot.ini

如果你在 Wayland 上还要比 Foot 更轻的东西,看看 foot 的衍生品 contour,或者老的 suckless 的 st——但这俩要你自己叠 patch,这条路走 7 天会陷在字体渲染里。

平铺式 multiplexer 那一拨

Tilix

Tilix 是 GNOME 对”我要把终端像平铺窗口管理器那样分”的回答。Quake 式下拉,拖拽分屏,布局存为 profile,一键切换。底层是 GTK,所以跟 GNOME 主题贴合——如果你不想再多一份专门的配置文件很有用。

安装:Debian/Ubuntu apt install tilix;Fedora 标准仓库也有;其他发行版在 gnunn1/tilix 下面。Flatpak 永远比发行版的源新。

到底该用哪一个

你想要……
默认就能用、懒得配,在 GNOME 或 Fedora GNOME Terminal
KDE Plasma 桌面,同时多件事 Konsole
最轻量的盒子,SSH 进陌生的机器 xterm
大输出顺滑,标签无所谓 Alacritty
图像预览、现代特性,继续用 tmux 分屏 kitty
自带 multiplexer,轻松 SSH 连多台 WezTerm
纯 Wayland,极小依赖面 Foot
GNOME 内的平铺式分屏,Quake 下拉 Tilix

对 90% 的人,诚实的答案是 GNOME Terminal 或 Konsole——已经装好,在你找到具体理由想换之前都够用。换的时候是因为有事卡你,不是先换再找原因。

xterm 和现代终端的差别

想看人为啥关心这个,做个简单的实验:把 xtermkitty 并排放,然后在 Linux 上 cat /var/log/syslog 当日志每秒更新。xterm 明显卡,kitty 不卡。GPU 终端的全部卖点就这个。在 vim 交互式打字场景你看不出区别——区别只在重输出里。如果你的工作流不产生重输出,你不需要 GPU 终端。

几个常踩的坑

配置文件在哪。 每个不一样:

  • GNOME Terminal → dconf(用 dconf-editor 改)
  • Konsole → profile 文件在 ~/.local/share/konsole/
  • xterm → ~/.Xresources
  • Alacritty → ~/.config/alacritty/alacritty.toml
  • kitty → ~/.config/kitty/kitty.conf
  • WezTerm → ~/.config/wezterm/wezterm.lua
  • Foot → ~/.config/foot/foot.ini
  • Tilix → dconf(跟 GNOME Terminal 一样)

字体。 终端里中文显示成豆腐、emoji 出方块,装 Noto 或 Nerd Font:

Bash
sudo apt install fonts-noto-cjk fonts-noto-color-emoji

然后重启终端——大多数终端得重启才会认到新装的字体。

Wayland + NVIDIA 的毛病。 某些终端(kitty、Alacritty、WezTerm)在旧 NVIDIA 驱动下跑 Wayland 有渲染缺陷。等不及新驱动的话先用一个 env var 救场:

Bash
__GL_GSYNC_ALLOWED=1 NVD_BACKEND=direct kitty

Mesa/AMD/Intel 用户当我没说。

SSH 保颜色。 SSH 到一台主机发现 prompt 没颜色了,是 $TERM 不对。强一下:

Bash
ssh -o SendEnv=TERM user@host    # 客户端
# ~/.ssh/config in 客户端:
Host *
  SetEnv TERM=xterm-256color

服务端 /etc/ssh/sshd_configAcceptEnv TERM。这一行让 GNU Screen 和 tmux 也跟着规矩起来。

收尾

别从清单文里挑终端。挑桌面安装器给你的那个,学会它的标签页和剪贴板快捷键,继续写代码。换的时候是因为你需要某个具体功能。


想对某一终端深挖,可以继续看 Alacritty 配置模式kitty 图像协议WezTerm SSH 实战,每篇单挑一个。

最后修改: 2026年7月17日

作者

评论

发表评论

您的邮箱地址不会被公开。