尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

从零搭建本地智能家居:虚拟机安装Ubuntu Server全攻略

从零搭建本地智能家居:虚拟机安装Ubuntu Server全攻略 1. 从零开始为什么我选择自己动手搭建智能家居几年前我还在用手机App控制几个孤零零的智能灯泡觉得这就是“智能”了。直到有一次出差家里的温湿度传感器因为网络问题离线导致我预设的加湿场景完全失效回家面对一屋子的干燥空气和蔫了的绿植我才意识到那些依赖单一云服务的“智能”设备有多脆弱。它们像一个个信息孤岛看似方便实则把控制权完全交给了厂商的服务器。从那一刻起我决定是时候把主动权拿回来了——我要搭建一套真正属于自己、稳定、可定制且不依赖外网的本地智能家居系统。这就是“智能家居DIY”系列教程的起点。它不是教你如何购买和连接现成的智能音箱或灯泡而是带你从最底层开始理解智能家居的“大脑”与“神经”亲手搭建一个以本地控制为核心、高度自动化的家庭中枢。我们将完全避开那些需要持续互联网连接、存在隐私泄露风险的商业云平台转而使用开源、免费且强大的本地化方案。整个系统将围绕一个核心逻辑运行所有传感器感知、逻辑判断和设备控制都在你家里的服务器可能是一台闲置的旧电脑、树莓派甚至一台NAS上完成。断网服务器照常运行自动化场景丝毫不受影响。厂商服务器宕机你的家依然智能。本系列教程的目标读者是那些不满足于“开箱即用”、渴望更深层次控制权并且愿意花点时间动手的技术爱好者。你不需要是编程专家但需要对命令行有基本的熟悉度并且享受解决问题的过程。我们将从最基础的环境搭建讲起一步步覆盖硬件选型、系统部署、自动化逻辑编写以及高级功能扩展。你可以把它看作一个长期的、可玩性极高的技术项目。在第一篇中我们的核心任务非常明确为你未来的智能家居“大脑”准备一个稳定、可靠的操作系统基础环境。这就像盖房子前先打好地基虽然步骤看似基础但每一步的扎实程度都直接决定了未来整个系统的稳定性和扩展性。2. 基石之选为什么是虚拟机与Linux发行版在开始敲命令之前我们必须先解决“在哪里运行”的问题。对于智能家居中枢你有几个主流选择直接安装在旧电脑的物理机上、使用树莓派等开发板或者在现有电脑上通过虚拟机运行。我强烈推荐新手从虚拟机方案开始原因有三。首先隔离性与安全性。智能家居中枢需要7x24小时不间断运行并安装大量服务。直接在主力电脑上安装可能会因为软件冲突、配置错误影响你日常的工作和娱乐。虚拟机提供了一个完美的沙盒环境你的所有实验、调试甚至崩溃都被限制在这个“盒子”里不会波及宿主系统。想推倒重来直接删除虚拟机镜像几分钟就能恢复一个干净的环境。其次资源利用与灵活性。现代电脑的CPU和内存资源对日常使用而言常常是过剩的。虚拟机可以让你灵活地分配这些闲置资源例如分配2核CPU、4GB内存给智能家居系统物尽其用。更重要的是虚拟机支持快照功能。在做出任何重大变更比如升级核心组件前拍一个快照如果出了问题一键就能回滚到之前完美的状态这是物理机难以比拟的便利。最后成本与便捷性。对于学习和初步搭建你完全不需要额外购买硬件。利用手头的Windows或macOS电脑安装一个虚拟机软件即可开始。这极大地降低了入门门槛。确定了虚拟机方案后下一个关键选择是操作系统。在智能家居和服务器领域Linux是绝对的主流因为它稳定、高效、资源占用低并且拥有最丰富的开源软件生态。在众多Linux发行版中我推荐Ubuntu Server LTS长期支持版。原因在于第一它有庞大的社区和丰富的教程你遇到的几乎所有问题都能在网上找到解决方案第二LTS版本提供长达5年的安全更新保证了系统的长期稳定性非常适合作为家庭服务器的基石第三其软件包管理工具apt简单易用能轻松安装我们后续需要的所有服务。注意虽然像Home Assistant OS这样的专用系统镜像更“开箱即用”但我坚持从Ubuntu Server开始教学。因为理解底层Linux环境能让你在未来面对更复杂的自定义需求、故障排查和性能优化时拥有从根本上解决问题的能力。知其然更要知其所以然。2.1 虚拟化平台选型VMware Workstation Player 实战安装市面上主流的虚拟化软件有VMware WorkstationPlayer版免费、VirtualBox完全免费和Hyper-VWindows专业版自带。对于新手我推荐VMware Workstation Player。它在性能、兼容性和易用性上取得了很好的平衡对虚拟硬件如USB设备透传这对后续连接智能硬件很重要的支持也更为成熟可靠。下面是在Windows系统上安装VMware Workstation Player的详细步骤和关键配置点下载安装包访问VMware官网找到Workstation Player的下载页面。选择适用于你操作系统Windows的最新版本。通常个人非商业使用是免费的直接下载即可。运行安装程序双击下载好的.exe文件启动安装向导。安装过程基本是“下一步”到底但有几个地方需要留意安装类型选择“典型”安装即可它会配置好大多数常用选项。增强型键盘驱动程序这个选项建议勾选。它能更好地处理虚拟机与主机之间的键盘输入尤其是在输入特殊字符或使用快捷键时体验更佳。安装位置默认安装在C盘即可。如果你有空间更大的其他硬盘分区也可以更改路径但务必确保路径中没有中文或特殊字符只用英文、数字和下划线例如D:\VMware\。输入许可证密钥安装完成后首次运行软件会提示你输入许可证密钥。如果你使用的是免费版在官网注册一个账号后会获得一个免费的序列号将其填入即可激活。重要配置检查安装完成后为了后续虚拟机的良好运行我们需要检查宿主机的两个关键BIOS/UEFI设置是否已开启大部分现代电脑默认是开启的虚拟化技术Intel VT-x / AMD-V这是CPU的硬件虚拟化支持必须开启否则虚拟机性能会极差甚至无法运行64位系统。重启电脑进入BIOS/UEFI设置通常是开机时按F2、Del或F12键在“Advanced”或“CPU Configuration”中找到类似“Intel Virtualization Technology”或“SVM Mode”的选项确保其状态为“Enabled”。Hyper-V 关闭仅Windows主机如果你主机是Windows 10/11专业版或企业版并且未来不打算使用微软的Hyper-V建议在“控制面板-程序-启用或关闭Windows功能”中取消勾选“Hyper-V”和“Windows Hypervisor Platform”。因为VMware和Hyper-V在某些情况下会存在冲突可能导致VMware虚拟机无法启动。完成以上步骤你的虚拟化平台就准备就绪了。接下来我们将在这个平台上创建我们的第一个“房子”——Ubuntu Server虚拟机。2.2 创建并配置你的第一个Ubuntu Server虚拟机打开VMware Workstation Player点击“创建新虚拟机”。我们将以Ubuntu Server 22.04 LTS为例进行演示。安装来源选择“安装程序光盘映像文件(iso)”然后点击“浏览”找到你提前下载好的Ubuntu Server 22.04 LTS的ISO镜像文件。VMware会自动检测到这是Ubuntu系统。命名与位置给你的虚拟机起一个容易识别的名字比如SmartHome-Core。位置选择硬盘上一个有充足剩余空间建议至少50GB的目录。同样路径请使用全英文。磁盘容量指定虚拟硬盘的最大大小。对于智能家居中枢未来会安装数据库、日志和各种服务我建议设置为80GB。并选择“将虚拟磁盘拆分成多个文件”这样便于备份和迁移。自定义硬件关键步骤在最终创建前点击“自定义硬件”进行精细化配置这对系统性能至关重要。内存分配给虚拟机。对于运行Home Assistant等核心服务4GB (4096 MB)是一个流畅运行的起步配置。如果你的主机内存充足16GB以上分配6GB或8GB体验会更佳。处理器分配CPU核心数。建议分配2个核心。这能保证在多任务处理如同时运行自动化、数据库查询和插件时有足够的计算能力。网络适配器这是连接内外部网络的关键。模式选择“桥接模式”。在这个模式下虚拟机会像一台真实的物理设备一样从你的家庭路由器获取一个独立的IP地址如192.168.1.xxx。这意味着你的手机、电脑和虚拟机都处在同一个局域网内可以互相直接访问为后续的智能设备控制和移动端App连接打下基础。USB控制器确保“USB兼容性”选择“USB 3.0”或更高。未来我们可能会通过USB连接Zigbee或Z-Wave网关适配器高速的USB接口能保证稳定性。点击“关闭”然后“完成”VMware就会开始创建虚拟机。创建完成后在虚拟机列表中选中它点击“播放虚拟机”我们的安装之旅才真正开始。3. Ubuntu Server 22.04 LTS 系统安装详解启动虚拟机后它会从我们加载的ISO镜像引导。你将进入一个紫色的Ubuntu安装界面。整个安装过程主要通过键盘操作Tab键切换选项方向键移动回车键确认。3.1 安装过程步步为营选择语言默认English即可。直接按回车。键盘布局同样默认的English (US)即可。继续回车。网络连接由于我们之前设置了桥接模式安装程序应该能自动通过DHCP获取到IP地址。你会看到一个以enp0s3或类似命名的网络接口显示“connected”。这一步通常无需操作直接回车继续。配置代理如果你没有使用特殊的网络代理这里留空直接回车。镜像地址使用默认的Ubuntu官方镜像地址即可这能保证软件包的下载速度。回车继续。磁盘分区重点这是安装过程中最关键的一步。我们使用整个虚拟磁盘并让安装程序自动配置。选择“Use an entire disk”使用整个磁盘。在下面的磁盘列表中你应该只看到我们之前创建的虚拟磁盘如/dev/sda。选中它。分区方案选择“Set up this disk as an LVM group”。LVM是逻辑卷管理器的缩写它允许你在未来动态调整分区大小而无需重新格式化磁盘对于服务器环境非常友好。确认配置会显示即将删除磁盘上所有数据并创建新分区。确认无误后选择“Done”并回车。确认磁盘更改安装程序会列出分区方案。检查无误后选择“Continue”并回车开始格式化磁盘。设置用户信息Your name输入你的全名例如Zhang San。这只是显示名。Your server‘s name给你的服务器起个主机名。这很重要它将是这台机器在网络中的标识。建议使用简洁明了的名字比如smarthome-core或home-server。请全部使用小写字母和短横线避免空格和特殊字符。Pick a username设置你的登录用户名。这是你以后通过SSH连接时使用的账号例如admin或homeassistant。Choose a password/Confirm your password设置一个强密码。请务必牢记服务器安全的第一道防线。安装SSH服务器极其重要在接下来的可选服务列表中一定要用空格键选中“Install OpenSSH server”。SSH服务允许你从同一网络下的其他电脑你的主力机通过命令行远程管理这台服务器而无需在虚拟机窗口里操作这将极大提升后续配置和管理的效率。选中后回车继续。安装额外软件这里会列出一些流行的服务器软件包如Docker, Kubernetes等。我们暂时一个都不选。保持列表为空直接回车。因为我们后续会通过更可控的方式手动安装我们需要的每一个组件。等待安装系统开始复制文件、安装基础系统和配置。这个过程会持续几分钟到十几分钟取决于你的硬盘速度。安装完成当看到“Installation Complete!”的提示时选择“Reboot Now”并回车。系统会提示你移除安装介质ISO镜像VMware通常会自动处理直接回车重启即可。重启后你将看到黑色的登录提示符。恭喜你的Ubuntu Server系统已经成功安装并运行现在这台虚拟机就是未来智能家居帝国坚实的地基。4. 基础配置与远程管理告别虚拟机窗口系统安装好后每次都要打开VMware窗口来操作命令行显然不够优雅。我们的目标是让这台服务器“隐形”地运行在后台而我们通过任何一台局域网内的电脑都能轻松管理它。这就需要完成两项基础配置网络固定IP和启用SSH远程登录。4.1 为服务器设置静态IP地址在桥接模式下虽然虚拟机获得了IP但默认是从路由器DHCP动态获取的。这意味着路由器重启或租约到期后IP地址可能会变。对于一个需要被稳定访问的服务器来说一个固定的IP地址是必须的。我们需要修改Ubuntu的网络配置文件。首先在虚拟机登录界面用你创建的用户名和密码登录。然后我们需要知道当前网络接口的名字和路由器的网关信息。查看当前网络信息输入命令ip addr show。你会看到类似enp0s3或ens33的接口名记住它。然后输入ip route show default找到via后面的IP地址这就是你的网关地址通常是路由器地址如192.168.1.1。同时ip addr show命令也会显示你当前获取到的IP地址inet后面的和子网掩码位数如/24。编辑Netplan配置文件Ubuntu Server使用Netplan管理网络。配置文件在/etc/netplan/目录下通常是一个以.yaml结尾的文件。使用sudo权限和nano编辑器打开它sudo nano /etc/netplan/00-installer-config.yaml注意你的文件名可能略有不同使用ls /etc/netplan/查看确认修改配置文件文件内容可能类似下面这样DHCP模式network: ethernets: enp0s3: dhcp4: true version: 2我们需要将其修改为静态IP配置。假设我们想将IP固定为192.168.1.200网关是192.168.1.1DNS服务器使用谷歌的8.8.8.8和8.8.4.4你也可以使用你路由器的地址或运营商提供的DNSnetwork: ethernets: enp0s3: # 替换为你的实际接口名 addresses: - 192.168.1.200/24 # IP地址/子网掩码位数 routes: - to: default via: 192.168.1.1 # 你的网关地址 nameservers: addresses: [8.8.8.8, 8.8.4.4] # DNS服务器 dhcp4: no # 关闭DHCP version: 2关键点解析addresses: 格式为IP地址/子网掩码位数。/24对应子网掩码255.255.255.0。routes: 指定默认路由的网关。nameservers: 配置DNS这是域名解析的关键必须配置否则无法通过域名访问网络如安装软件时。注意YAML文件的缩进非常严格必须使用空格通常是2个不能使用Tab键。应用配置保存文件在nano中按CtrlO回车然后CtrlX退出。然后应用新的网络配置sudo netplan apply如果命令执行没有报错可以再次运行ip addr show enp0s3来确认IP地址已经变成了你设置的静态IP192.168.1.200。4.2 通过SSH实现远程终端访问现在服务器有了固定IP我们就可以从宿主电脑或其他任何局域网内的电脑通过SSH连接它了。在Windows上你可以使用免费的PuTTY工具或者使用Windows 10/11自带的PowerShell或Windows Terminal。在PowerShell中直接输入ssh 你的用户名192.168.1.200例如ssh admin192.168.1.200。首次连接时会提示你确认服务器指纹输入yes然后输入密码即可登录。在macOS或Linux上直接打开终端Terminal输入同样的ssh命令即可。成功通过SSH登录后你就可以关掉VMware的虚拟机窗口了。服务器会在后台继续运行而你可以在自己熟悉的电脑终端上进行所有操作。这才是服务器管理的正确姿势。4.3 系统更新与基础工具安装登录后第一件事是更新系统软件包列表并升级现有软件确保系统安全和拥有最新的软件源。更新与升级sudo apt update # 刷新软件包列表 sudo apt upgrade -y # 升级所有可升级的软件包这个过程会下载并安装更新可能需要几分钟。安装常用工具为了后续操作方便我们安装几个必备工具sudo apt install -y curl wget git vim htopcurl/wget: 用于从网络下载文件。git: 版本控制工具用于克隆代码仓库。vim: 一个强大的文本编辑器如果你不熟悉也可以用nano。htop: 一个交互式的进程查看器比系统自带的top更直观可以方便地监控CPU、内存使用情况。至此一个纯净、稳定、配置好网络和远程访问的Ubuntu Server基础环境已经搭建完成。它静静地运行在你的电脑里拥有一个固定的局域网身份IP地址等待着被赋予智能家居的“灵魂”。在下一篇教程中我们将在这个基础上安装智能家居的核心大脑——Home Assistant并开始接入第一个智能设备。你会发现真正的智能家居之旅现在才刚刚开始。
返回列表