释放小七猫的分享欲

Linux 系统的 NAS 之路——系统选型与安装

categories: 技术 tags: NAS, Linux
@ 16/07/2026

Linux 系统的 NAS 之路——系统选型与安装

今年(2026)2 月份,飞牛曝出的安全漏洞直到今日仍让我记忆犹新,这次事件也让 NAS 的网络安全问题被用户重视起来。再加上最近网络审查逐渐严格、硬件损坏导致资料丢失,安全问题导致文件被盗等事件越来越多,我不禁思考,是否最原始的才是最安全的?

这个问题没有明确的答案,但我觉得,有 Linux 基础的用户,也许真的可以尝试直接使用 Linux 发行版来做 NAS。现在许多发行版也有着漂亮的用户界面、易交互的操作模式。

最关键的是,你可以自由控制硬盘的格式,是否组 RAID、是否组建 LVM 等等,都可以自由控制。你可以将硬盘拆下来,放到任意其他设备上进行读取,大大降低了数据恢复难度。这避开了成品 NAS 系统常用的 LVM + mdadm 选型导致的复杂性。

这个系列并非从零开始的扫盲贴,需要一定的 Linux 基础知识才能读懂,但我会尽量用简介通俗的语言来讲解。相信读完这个系列的文章,你会对 Linux 各项服务的规划有一个基本的思路。

系统选型

Linux 发行版众多,但适合做 NAS 系统的不多。这里分成两类简单介绍一下:

  1. 绝对不能用作 NAS ArchLinux、Debian Sid、openSUSE:过于激进的滚动发行版,需要长期高频维护,不适合做 NAS。LFS 这类只适合当玩具的系统。
  2. 比较稳 各类 LTS 发行版,例如 RockyLinux,Ubuntu LTS/Server,Debian,OpenEuler 等。稳定性保障拉满,缺点是软件包比较旧。
  3. 稳定与可玩性兼顾 Fedora Server、Ubuntu 非 LTS,Debian Testing 等。稳定性接近各 LTS 发行版,软件包较新,使用这类发行版可以持续学习到 Linux 前沿知识。

我选择了 Fedora Server 作为 NAS 系统,主要是 dnf 包管理器非常好用(能搜到我想要的东西,apt 搜不到),内核更新比较及时。不过现在发行版逐渐被 systemd 大一统,各种发行版配置起来都差不多,不会有太大区别,可以随意选择。

系统安装

下载 Fedora 官方的 ISO 文件,推荐使用 net-install 版本镜像,确保安装的版本是最新版,不然进入系统后还需要手动更新,下载地址:[Fedora Server](Fedora Server | The Fedora Project)

通过 ventoy 或者烧录进 U 盘的方式进入系统安装页面,选择简体中文,来到如下界面:

安装目标位置

不要选默认的 LVM 分区,选择标准分区(就是 EXT4)或者 btrfs

如果系统盘较大,推荐单独分 /home 分区,方便数据转移

如果更换发行版或者系统崩了重装,你的个人数据都是不会受影响的,需要注意的是 docker 数据,需要手动迁移到 /home 避免占用过多/ 的空间。

用户设置

不启用 root 用户,创建一个新用户并添加管理员权限即可

为了数据安全,无论何时都不应该直接使用 root 用户,应使用 sudo 完全提权。

Fedora 系统初探

Cockpit 及其插件

Cockpit 是红帽开发的一款 Linux 管理面板,主要包含资源监控、磁盘管理、文件管理、容器管理、网络管理、虚拟机等功能。整体比较简陋,但有些功能做得还是不错,比较值得一用。

但我不推荐安装非官方的插件。因此最好不要用 Cockpit 来管理文件共享、Docker(这两个都需要安装第三方插件)。

系统启动后,通过 DHCP 得到的 IP 地址和 Cockpit 端口会显示在终端中

直接访问网址:

默认带的功能就是这些,比较齐全了,如果需要容器和虚拟机管理,可以额外安装 cockpit-machine 和 cockpit-podman 插件

此外还有一个文件管理插件:

这个插件可以查看、修改、上传下载 NAS 上的文件,可以用户维护系统,但直接用来管理资料功能上还是太简陋了。

总的来说,Cockpit 只是一个最底层的系统维护面板,这里面的功能只是用来维护、监控系统用的,并不是一个类似群晖主页、飞牛 OS 主页那样的一站式功能页面,这一点要分清楚。

配置 Linux 系统的过程中,命令行是不可能避开的,由于cockpit的终端无法多开(可以看成是个类似串口的东西),因此后面我们会大量使用SSH命令行来配置维护这个系统。

命令行

通过 SSH 可以连入系统

PS C:\Users\sukipai> ssh sukipai@10.0.0.243
The authenticity of host '10.0.0.243 (10.0.0.243)' can't be established.
ED25519 key fingerprint is SHA256:g4kTpzO/bDXgguvMPWSP22w+Ux9HWLXfvFVW9zwkMjI.
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '10.0.0.243' (ED25519) to the list of known hosts.
sukipai@10.0.0.243's password:
Web console: https://localhost:9090/ or https://10.0.0.243:9090/

Last login: Thu Jul 16 15:10:16 2026 from ::ffff:10.0.0.1
sukipai@localhost:~$

在这里,我们可以先做一些小优化。

  1. 功耗调控 安装 sudo dnf install cpupower,然后切换到省电模式 sudo cpupower frequency-set -g powersave,在我的设备上,这个操作能够降低 10W 左右功耗,效果还是挺明显。这个软件还可以调节 CPU 频率,功能挺丰富。
  2. 关闭 SeLinux SeLinux 管控过于严格,对于 NAS 来说作用不大,可以排除。
    sukipai@localhost:~$ cd /etc/selinux/
    

sukipai@localhost:/etc/selinux$ cat config … SELINUX=enforcing … ``` 把 /etc/selinux/config 文件中的 enforcing 改为 disabled 就行了。 3. 关闭 fwupd-refresh.timer 服务 这个服务会检查一些硬件固件更新,没啥用,而且经常报错,直接禁用

```bash
sukipai@localhost:~$ sudo systemctl disable fwupd-refresh.timer

Removed ‘/etc/systemd/system/timers.target.wants/fwupd-refresh.timer’. ```

基本优化就这几项就够,Fedora 基本可以做到开箱即用。