前言

在第1篇中我们了解了家庭服务器的概念和硬件,这次第2篇将正式开始安装操作系统(OS)。如果说硬件是身体,那操作系统就是灵魂。选择什么操作系统,决定了能做什么事情以及管理方式。

本文将对比常用的家庭服务器操作系统,并详细讲解最通用的Ubuntu Server的安装过程,让您可以跟着一步步操作。

1. 家庭服务器操作系统种类与对比

家庭服务器操作系统大致可以分为两类:通用Linux发行版和专用操作系统。

1.1 Ubuntu Server

这可能是被推荐最多的操作系统了。我最初也是从Ubuntu Server开始的。

优点:

  • 资料非常丰富 - 搜索一下大多数问题都能找到解决方案
  • LTS(长期支持)版本提供5年安全更新
  • Docker、各种服务器软件兼容性最好
  • 新手也比较容易上手

缺点:

  • Snap包系统评价褒贬不一
  • 可能受Canonical公司政策变化的影响

推荐人群:家庭服务器入门者、基于Docker运营服务的用户

1.2 Debian

Debian是Ubuntu的基础发行版,比Ubuntu更稳定、更保守。

优点:

  • 极其稳定 - 只包含经过服务器验证的软件包
  • 轻量且没有多余的东西
  • 完全开源,不受企业影响
  • 大部分Ubuntu资料都兼容

缺点:

  • 软件包版本相对较旧
  • 安装过程比Ubuntu稍微复杂一些

推荐人群:重视稳定性的用户、有Linux经验的用户

1.3 Proxmox VE

这是专门用于虚拟化的操作系统。当您想在一台服务器上运行多个虚拟机(VM)或容器(LXC)时可以选择。

优点:

  • 可以通过Web界面管理虚拟机
  • 同时支持KVM虚拟化和LXC容器
  • 可免费使用(订阅是可选的)
  • 内置快照、备份、集群功能

缺点:

  • 虚拟化开销导致性能损失
  • 有一定学习曲线
  • 在低配置系统上效率不高

推荐人群:想同时测试多个操作系统的用户、HomeLab构建者

1.4 TrueNAS (Core/Scale)

这是专门用于存储的操作系统,专为文件服务器、NAS用途优化。

TrueNAS Core(基于FreeBSD):

  • ZFS文件系统保证数据完整性
  • 成熟稳定
  • 通过插件(Jail)扩展服务

TrueNAS Scale(基于Linux):

  • 原生支持Docker/Kubernetes
  • Linux兼容性使更多应用可用
  • 比较新,仍在成熟中

推荐人群:以大容量存储管理为主要目的的用户

1.5 Unraid

这是付费操作系统,但在家庭服务器社区非常受欢迎。

优点:

  • 可以将不同容量的硬盘合并为一个存储池
  • Web界面直观美观
  • Docker、VM管理方便
  • 社区应用商店活跃

缺点:

  • 付费(Basic $59, Plus $89, Pro $129)
  • 基于奇偶校验,性能相对较低

推荐人群:想利用不同容量硬盘的用户、喜欢图形界面的用户

1.6 操作系统对比总结表

操作系统 难度 主要用途 费用 建议内存
Ubuntu Server 简单 通用 免费 2GB+
Debian 中等 通用 免费 1GB+
Proxmox VE 中等 虚拟化 免费 8GB+
TrueNAS 中等 存储 免费 8GB+(建议ECC)
Unraid 简单 通用/存储 付费 4GB+

2. Ubuntu Server 安装准备

本指南将以Ubuntu Server 24.04 LTS为基准进行讲解。这是最通用的版本,资料也最多,推荐给入门者。

2.1 需要准备的东西

  • U盘(8GB以上)
  • Ubuntu Server ISO文件
  • 启动盘制作工具(Rufus或balenaEtcher)
  • 键盘、显示器(仅安装时需要)

2.2 下载ISO

从Ubuntu官网下载ISO:

  1. 访问ubuntu.com/download/server
  2. 选择"Ubuntu Server 24.04 LTS"
  3. 下载(约2GB)

2.3 制作启动U盘

Windows下使用Rufus:

  1. 下载并运行Rufus(rufus.ie
  2. 设备:选择U盘
  3. 引导类型:选择下载的ISO文件
  4. 分区方案:选择GPT(用于UEFI启动)
  5. 点击"开始"

Mac/Linux下使用balenaEtcher:

  1. 下载并运行balenaEtcher(etcher.balena.io
  2. 'Flash from file' → 选择ISO
  3. 'Select target' → 选择U盘
  4. 点击'Flash!'

3. Ubuntu Server 安装过程

3.1 修改启动顺序

  1. 将U盘插入服务器并开机
  2. 进入BIOS/UEFI(通常按F2、F12、Del键)
  3. 在启动顺序中将U盘设为第一位
  4. 保存并重启

3.2 安装向导流程

1. 选择语言

建议选择English。选择中文的话在终端中可能会出现乱码。

2. 键盘布局

选择Chinese → Chinese(如果需要)或保持默认的English (US)

3. 安装类型

选择"Ubuntu Server"(不是minimized版本)

4. 网络设置

如果已连接有线网络,会自动获取DHCP IP。先使用默认值,稍后再改为固定IP。

5. 代理设置

如无特殊情况,留空继续

6. 镜像服务器

使用默认值继续。会自动选择最近的镜像。

7. 磁盘设置

这是最重要的步骤:

  • Use an entire disk:将整个磁盘用于Ubuntu(推荐)
  • LVM设置保持默认
  • 如需加密,勾选"Encrypt the LVM group"

8. 用户设置

  • Your name:显示名称
  • Your server's name:主机名(例如:homeserver)
  • Username:登录ID(小写英文)
  • Password:设置强密码

9. Ubuntu Pro

选择Skip for now(个人使用可以免费注册,但以后再做也可以)

10. SSH设置

必须勾选"Install OpenSSH server"!安装这个才能远程连接。

11. Featured Server Snaps

现在什么都不选,继续。Docker等软件稍后自己安装更好。

12. 安装完成

安装完成后选择"Reboot Now"。出现提示移除U盘的消息后,移除U盘按Enter。

4. 初始设置

4.1 首次登录

重启后使用安装时创建的账户登录。

homeserver login: 用户名
Password: (输入密码,屏幕上不显示)

4.2 系统更新

首先将系统更新到最新状态:

sudo apt update && sudo apt upgrade -y

可能需要一些时间。去喝杯咖啡吧。

4.3 时区设置

将服务器时区设置为中国:

# 查看当前时区
timedatectl

# 更改为上海时区
sudo timedatectl set-timezone Asia/Shanghai

# 确认更改
date

4.4 更改主机名(如需要)

如果想更改安装时设置的主机名:

# 查看当前主机名
hostname

# 更改主机名
sudo hostnamectl set-hostname 新主机名

# 也要修改 /etc/hosts 文件
sudo nano /etc/hosts

在hosts文件中也更改127.0.1.1行的主机名。

4.5 固定IP设置

服务器的IP不能变化,所以必须设置固定IP。

方法1:在路由器中设置DHCP保留

这是最简单的方法。在路由器管理页面中将服务器的MAC地址绑定到特定IP。

方法2:在服务器上直接设置固定IP

Ubuntu 18.04以后使用Netplan:

# 查看网络接口名称
ip a

通常会看到enp0s3eth0eno1等名称。

# 编辑Netplan配置文件
sudo nano /etc/netplan/00-installer-config.yaml

按以下方式修改(示例):

network:
  ethernets:
    enp0s3:  # 根据实际接口名称修改
      dhcp4: no
      addresses:
        - 192.168.0.100/24  # 想要的IP
      routes:
        - to: default
          via: 192.168.0.1  # 路由器IP(网关)
      nameservers:
        addresses:
          - 8.8.8.8
          - 8.8.4.4
  version: 2

应用设置:

sudo netplan apply

注意:IP设置错误可能导致网络连接断开。请在连接显示器和键盘的状态下操作。

5. SSH服务器设置

SSH是远程连接服务器的必备工具。如果安装时选择了OpenSSH,应该已经在运行了。

5.1 检查SSH状态

# 检查SSH服务状态
sudo systemctl status ssh

# 如果未激活
sudo systemctl enable ssh
sudo systemctl start ssh

5.2 从其他电脑SSH连接

Windows 10/11:

在命令提示符或PowerShell中:

ssh 用户名@服务器IP

Mac/Linux:

在终端中:

ssh 用户名@服务器IP

例如:ssh admin@192.168.0.100

首次连接时出现fingerprint确认消息,输入yes

5.3 SSH安全加固(可选)

默认设置也能工作,但为了安全建议修改一些设置。

sudo nano /etc/ssh/sshd_config

建议修改的设置:

# 更改默认端口(从22改为其他端口)
Port 2222

# 禁止root直接登录
PermitRootLogin no

# 密码认证(设置密钥后改为no)
# PasswordAuthentication no

修改设置后重启SSH:

sudo systemctl restart ssh

注意:如果更改了端口,需要使用ssh -p 2222 用户名@服务器IP连接。

5.4 SSH密钥认证设置(推荐)

使用SSH密钥代替密码更安全。

在客户端(PC)上生成密钥:

# Windows PowerShell 或 Mac/Linux 终端
ssh-keygen -t ed25519 -C "your_email@example.com"

按几次Enter,密钥就生成了。

将公钥注册到服务器:

# 自动复制
ssh-copy-id 用户名@服务器IP

# 或手动复制
# 将客户端的 ~/.ssh/id_ed25519.pub 内容
# 添加到服务器的 ~/.ssh/authorized_keys 文件中

6. 基本软件包安装

预先安装以后常用的工具:

sudo apt install -y \
    curl \
    wget \
    git \
    htop \
    neofetch \
    net-tools \
    ufw
  • curl, wget:文件下载
  • git:版本管理(配置文件备份等)
  • htop:系统监控(top的升级版)
  • neofetch:查看系统信息(界面美观)
  • net-tools:ifconfig等网络工具
  • ufw:防火墙管理工具

6.1 防火墙基本设置

# 允许SSH(不做这个会断开连接!)
sudo ufw allow ssh

# 或者如果更改了端口
sudo ufw allow 2222/tcp

# 启用防火墙
sudo ufw enable

# 查看状态
sudo ufw status

总结

辛苦了!现在Ubuntu Server已经安装完成,基本设置也完成了。总结一下:

  • Ubuntu Server 24.04 LTS安装完成
  • 时区、主机名设置
  • 固定IP设置
  • SSH服务器设置及安全加固
  • 基本工具和防火墙设置

现在即使没有显示器和键盘,也可以从其他电脑通过SSH连接管理服务器了。把服务器放到角落里吧!

下一篇第3篇将介绍安装Docker并开始部署各种服务。将讲解使用Portainer进行GUI管理、用Nextcloud创建个人云等内容。

如有疑问,欢迎在评论区留言!