开发工具
FinalShell 在 Linux 上怎么玩转?这几个小技巧你得知道!
FinalShell 这款强大的 SSH 客户端,相信很多折腾 Linux 服务器的朋友都在用。它集成了 SSH 客户端、SFTP 文件传输、会话管理等多种功能,确实能给日常的开发调试工作带来不少便利。但刚上手时,或者在特定的场景下,比如针对移动端开发,你可能也会遇到一些让人摸不着头脑的小问题。
别急,今天咱们就来聊聊 FinalShell 在 Linux 环境下,一些常见问题和实用的解决办法。跟着我的经验走,保证你用起来更顺手!
FinalShell 连不上我的 Linux 服务器,咋回事?
这是最常见的问题之一。当你信心满满地输入完 IP 和密码,结果却显示连接失败,那感觉确实有点抓狂。我之前在配置一个新的开发机时,就遇到了好几次,尤其是防火墙配置没弄好时。通常有以下几个原因:
- 网络连通性问题: 首先,确认你的本地机器和目标服务器之间网络是通的。最简单的办法是在本地命令行里
ping一下服务器的 IP 地址。如果ping不通,那可能是网络配置、路由或者服务器本身没开机。 - SSH 服务未启动或端口不正确: 服务器上负责 SSH 连接的服务 (
sshd) 可能没运行,或者配置了非标准的 22 端口。你可以在服务器本地(如果有 console 访问)或者通过 VNC 等方式登录,运行以下命令检查 SSH 服务状态:
如果没启动,就用systemctl status sshdsystemctl start sshd启动。同时,确保你在 FinalShell 中填写的端口号(默认 22)和服务器实际开放的端口一致。FinalShell 4.6.3 版本在配置连接时,会有一个明显的端口输入框。 - 防火墙阻挡: 这是我昨天重装系统,用 FinalShell 连接新部署的 Ubuntu 服务器时遇到的坑。服务器的防火墙可能阻止了 22 端口的传入连接。你需要开放 SSH 端口。
- 对于 CentOS/RHEL 系统,使用
firewall-cmd:sudo firewall-cmd --zone=public --add-port=22/tcp --permanent sudo firewall-cmd --reload - 对于 Ubuntu/Debian 系统,使用
ufw:sudo ufw allow 22/tcp sudo ufw enable
- 对于 CentOS/RHEL 系统,使用
怎么用 FinalShell 快速传文件到服务器?我不想每次都命令行。
FinalShell 内置的 SFTP 文件管理功能真是省事多了,尤其是在 Linux 环境下进行开发,需要频繁上传下载配置文件或者代码片段时,比 SCP 命令方便直观很多。你甚至不用再额外开一个 FTP 客户端。
- 连接并进入文件界面: 当你成功连接到服务器后,FinalShell 的左侧面板会默认显示一个文件树视图。这就是 SFTP 界面。如果没看到,确保你没有收起它。
- 拖拽文件: 最直接的方式就是从你的本地文件管理器中,直接把文件或文件夹拖拽到 FinalShell 的 SFTP 界面里对应的服务器目录。反之,也可以从服务器拖拽到本地。
- 右键操作: 你也可以在 SFTP 界面中,对文件或文件夹右键,选择“上传文件”、“下载文件”、“新建文件/目录”、“删除”等操作。这对于批量操作或精细管理非常方便。
FinalShell 的 SFTP 功能基本上能满足日常的文件传输需求了。如果想深入了解,可以看看这篇 /blog/finalshell-sftp-file-transfer/ 教程。
多个 SSH 会话管理起来好乱,FinalShell 有什么好办法吗?
随着你开发的服务器越来越多,或者一个项目需要连接多台机器(比如数据库服务器、Web 服务器、消息队列服务器),FinalShell 的会话管理功能就能派上大用场了。
- 会话分组与标签: 在 FinalShell 的左侧会话列表里,你可以新建文件夹来对会话进行分组。比如,你可以创建一个“项目A”的文件夹,把所有与项目A相关的服务器都放进去。你还可以给每个会话添加标签,方便搜索和快速定位。
- 会话颜色标记: 给重要的服务器会话设置一个显眼的颜色,比如生产环境服务器用红色,测试环境用蓝色,这样一眼就能区分开,避免误操作。
- 窗口分屏: FinalShell 支持在一个窗口内进行终端分屏。如果你需要同时监控多个服务的日志输出,或者在不同目录执行命令,直接在当前连接的终端窗口右键,选择“水平分屏”或“垂直分屏”即可。这样就不用来回切换标签页,效率高多了。
我在服务器上装了个应用,但只能通过内网 IP 访问,FinalShell 能不能帮我暴露到外网调试?
这在移动端开发调试时经常会遇到,比如你的后端服务部署在内网的虚拟机上,或者容器里,而你需要在本地的手机或模拟器上访问。FinalShell 的端口转发(SSH Tunneling)功能就是解决这类问题的利器。
- 打开连接属性: 在 FinalShell 的会话列表中,右键点击你要转发端口的服务器连接,选择“属性”。
- 配置 SSH 隧道: 在连接属性窗口中,找到“SSH 隧道”或者“端口转发”选项卡。这里你可以添加新的转发规则。
- 添加本地转发: 一般我们会选择“本地转发”(Local Forward)。
- 监听端口: 填写你本地机器上要监听的端口,比如
8080。 - 远程主机: 填写服务器内网中,你想要访问的应用所在的主机 IP 地址。如果应用就在这台 SSH 服务器上,可以填
127.0.0.1。 - 远程端口: 填写应用实际监听的端口,比如
3000。 配置完成后保存并重新连接。这样,你就可以在本地浏览器中访问http://localhost:8080,实际上就是在访问服务器上的http://127.0.0.1:3000了。这对于远程调试非常有用!
- 监听端口: 填写你本地机器上要监听的端口,比如
如果你需要更详细的配置指导,可以参考这篇 /blog/finalshell-port-forwarding-guide/ 教程。
FinalShell 终端显示乱码或者字体不对劲,怎么调整?
中文乱码是老生常谈的问题了,不过在 FinalShell 里解决起来并不复杂。主要排查这两个地方:
- 服务器编码设置: 大部分 Linux 系统默认都使用 UTF-8 编码,但也有例外。你可以登录服务器,执行
locale命令,看看LANG变量是不是en_US.UTF-8或zh_CN.UTF-8。如果不是,可能需要调整/etc/locale.conf或.bashrc等配置文件,并重新生成 locale。 - FinalShell 客户端设置: 在 FinalShell 的“工具”->“选项”菜单里,找到“终端”或“外观”相关的设置。确保“字符编码”选择了
UTF-8,并且字体选择的是支持中文的等宽字体,比如“更纱黑体”、“Consolas”等。调整后重启会话试试看。

常见问题
FinalShell 在日常使用中,可能还会遇到一些边角问题,这里补充两个常见的小疑问。
FinalShell 怎么备份我的会话配置?
FinalShell 的所有会话配置、主题设置等数据,通常都存储在你的用户目录下的一个隐藏文件夹里。比如在 Windows 上是 C:\Users\你的用户名\.finalshell,在 Linux 上则是 ~/.finalshell。你只需要把这个 .finalshell 文件夹完整地复制一份到安全的地方,就完成了所有配置的备份。下次重装系统或者迁移到新机器,直接把这个文件夹复制回去,就能恢复所有会话了,非常方便。
FinalShell 运行卡顿是咋回事?
如果 FinalShell 用着感觉卡顿,尤其是在连接多个会话或者打开性能监控图表时,可以尝试以下几点:
- 关闭不必要的实时监控: FinalShell 的性能监控功能虽然好用,但实时刷新也会消耗一定的资源。如果你不需要,可以点击终端顶部的监控图标关闭它。
- 减少会话数量或分批操作: 如果你同时打开了几十个会话,客户端可能需要处理大量数据。尝试关闭一些暂时不用的会话。
- 检查本地资源占用: 确保你的电脑没有运行其他占用大量 CPU 或内存的程序。
- 网络延迟: 有时候卡顿不是 FinalShell 的问题,而是你的网络连接到服务器的延迟太高。你可以用
ping命令测试一下网络质量。
延伸阅读
若需进一步查阅,可先看本站以下教程: