本地系统、虚拟机、远程服务器三者之间的核心区别

🌍 一句话总结

✅ 你之所以用 Tabby 连接公司服务器 不需要虚拟机,

是因为那台服务器 已经是一台运行着 Ubuntu 的独立电脑(远程机器)

而你要在自己的电脑上"拥有一个 Ubuntu 环境",

就得自己"造出"这样一台虚拟的电脑------那就是虚拟机。


🧠 类比理解:虚拟机 vs 远程服务器

概念 是什么 在哪儿运行 你如何进入
💻 你自己的电脑(Windows) 物理机 桌子上的电脑 直接操作
🧱 虚拟机(VM) 一台"在你电脑里模拟出来的另一台电脑" 运行在你的物理机里 通过虚拟机软件打开
🖥️ 公司服务器(Ubuntu) 一台真实存在的远程电脑(在机房或云上) 运行在公司网络 用 SSH(如 Tabby)远程连接

所以区别就在于:

  • 虚拟机 = 在你电脑里"模拟出另一台电脑"
  • 服务器 = 已经存在的"另一台真实电脑"
  • SSH(Tabby) = 你用网线连过去远程操作那台电脑的"键盘和屏幕"。

🔍 更深入一点:Tabby 并不是运行 Ubuntu,而是在"远程登录"Ubuntu

当你运行:

sql 复制代码
ssh user@192.168.31.185

或用 Tabby 连接公司服务器时:

  • 你的电脑只是一个终端界面(相当于"显示器 + 键盘");
  • 运行命令、文件系统、网络配置都发生在远程服务器上;
  • 所以你会看到那边的:
    • Ubuntu 系统
    • 已经安装好的 nginx、docker 等等;
    • 你只是在操作那台远程机器。

而如果你想在自己的电脑上 也有一样的 Ubuntu 环境,

因为你手上这台机器运行的可能是 WindowsmacOS

那就得"虚拟"出一台 Ubuntu 系统的电脑,靠虚拟机实现。


🧩 对比一下你的两种情况:

场景 运行的系统 物理机器是谁 为什么能用 Ubuntu
① Tabby 连公司服务器 Ubuntu 服务器(192.168.31.185) 服务器已经装好了 Ubuntu
② 自己电脑(Windows) Windows 你自己的笔电 / PC 没有 Ubuntu,需要虚拟机或 WSL

⚙️ 那如果我想像公司服务器那样,本机也能跑 Ubuntu,有哪些选择?

方案 原理 是否需要虚拟机
VirtualBox / VMware 安装 Ubuntu 直接在 Windows 上开一台"虚拟电脑"装 Ubuntu ✅ 需要虚拟机
WSL2 (Windows Subsystem for Linux) 微软提供的轻量 Linux 子系统 ❌ 不需要传统虚拟机,推荐
Docker Desktop 它在底层用轻量虚拟化跑 Linux 内核 ⚙️ 自动管理虚拟层,无需你配置
买/租云服务器(远程主机) 直接连远程 Ubuntu ❌ 不需要虚拟机,本身就是服务器

🧭 你可以这样理解一条主线:

物理机器(你的电脑 或 公司服务器)

→ 上面运行系统(Windows 或 Ubuntu)

→ 系统里装环境(nginx、docker 等)

当你连接服务器时,

你是"借用公司那台 Ubuntu 机器的系统";

当你在本机装虚拟机时,

你是在"自己电脑里再创建一台 Ubuntu 机器"。


🚀 推荐你目前最方便的做法(如果你是 Windows 用户)

👉 使用 WSL2 + Ubuntu 子系统

不需要虚拟机软件、不占太多资源、命令与公司服务器完全一致。

安装命令(管理员 PowerShell):

css 复制代码
wsl --install

安装完成后:

bash 复制代码
wsl -l -v   # 查看 Ubuntu 是否安装成功
wsl         # 进入 Ubuntu 终端

现在你就在一个真正的 Ubuntu 环境里了,

可以执行:

lua 复制代码
sudo apt update
sudo apt install nginx docker.io -y

这时你本地环境的使用体验,就和你用 Tabby 连公司服务器非常接近。

相关推荐
许商1 小时前
【stm32】【printf】
java·前端·stm32
JIngJaneIL1 小时前
智慧物业|物业管理|基于SprinBoot+vue的智慧物业管理系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·论文·智慧物业管理系统
爬坑的小白1 小时前
vue 2.0 路由跳转时新开tab
前端·javascript·vue.js
爬坑的小白1 小时前
vue x 状态管理
前端·javascript·vue.js
凌览1 小时前
一键去水印|5 款免费小红书解析工具推荐
前端·javascript·后端
lichong9511 小时前
鸿蒙 web组件开发
前端·typescript
1024小神1 小时前
在html中使用js动态交换两个元素的位置
前端
鹿鹿鹿鹿isNotDefined1 小时前
逐步手写,实现符合 Promise A+ 规范的 Promise
前端·javascript·算法
一千柯橘1 小时前
Electron - IPC 解决主进程和渲染进程之间的通信
前端