|
打开浏览器就能用Linux,网站这件事比很多人想的网站要方便。上周我想编译一个C语言程序,网站手头只有一台iPad,网站懒得开虚拟机,网站直接搜了个在线Linux网站,网站三十秒后终端就出现在屏幕上。网站敲完gcc hello.c -o hello,网站回车,网站运行,网站搞定。网站整个过程没有安装任何东西。网站 这类网站本质上就是网站把一台远程Linux服务器通过浏览器暴露给你。你看到的网站终端界面通常是WebSocket或者Ajax轮询实现的,键盘输入传到远端,网站输出再传回来。听起来简单,但体验差异很大。有些站点延迟高得让你想砸键盘,敲一个字符等半秒才回显;有些则几乎感觉不到延迟,跟本地终端差不多。 我试过不少,说几个印象深的。JSLinux(bellard.org/jslinux)是Fabrice Bellard写的,这人是QEMU的作者,技术功底不用怀疑。它直接在浏览器里模拟x86指令集,跑的是一个完整的Linux内核。好处是纯前端,断网也能用;坏处是启动慢,而且性能受限于JavaScript引擎。我拿它跑过ls和cat,能用,但编译大一点的项目就吃力了。 Webminal走的是另一条路,远程连接到真实服务器。注册后给你一个账户,带bash、gcc、python、mysql,甚至能sudo装包。我拿它练过shell脚本,写了个批量重命名文件的循环,跑起来跟本地没区别。缺点是免费账户有资源限制,CPU时间长了会被限速。 还有Copy.sh的在线Linux,提供多种发行版选择,从Tiny Core到Arch都有。我选Arch进去过,pacman能用,但镜像源没配好,装东西报错。这种站点适合快速验证命令,不适合当开发环境。 用这些网站有几个实际好处。临时需要Linux环境时不用折腾双系统或虚拟机,浏览器标签页一开就行。学习命令行也方便,尤其是对Windows用户来说,不用先装WSL或Cygwin。我有个朋友教Linux课,直接让学生用在线终端做练习,省去了每人配环境的麻烦。 但别指望它们替代本地环境。网络断了就全完,长时间运行的任务可能被服务端清理,敏感数据更不该往上面放。有次我传了个包含API密钥的脚本上去测试,事后想想挺后怕——谁知道那台服务器上有没有人在抓包。 延迟和键盘映射也是坑。有些站点不支持Ctrl+C,中断一个死循环只能刷新页面。Tab补全有时候会触发浏览器的焦点切换,而不是终端的自动补全。这些细节在本地根本不算问题,到了浏览器里就成了日常摩擦。 我的用法是:快速验证一个命令、试一段脚本、临时跑个Python片段,用在线Linux。超过二十分钟的工作,老老实实开本地终端。工具是死的,知道什么时候不用它,比知道怎么用它更重要。 |