商店
NetBSD
0
1993年4月19日
概述
NetBSD 是一个免费、开源的类 Unix 操作系统,源自 BSD(Berkeley Software Distribution),以其可移植性、简洁性和代码质量著称,广泛用于服务器、嵌入式系统、桌面环境和研究领域。NetBSD 由 NetBSD 项目维护,提供完整的操作系统,包括内核、驱动、用户空间工具和文档。它支持 70+ 种架构(x86_64,ARM,RISC-V,MIPS,SPARC 等),是 BSD 家族中最注重跨平台兼容性的成员,口号为“Of course it runs NetBSD”(当然它运行 NetBSD)。NetBSD 提供 pkgsrc 包管理系统,支持灵活的软件安装,适用于嵌入式设备(如路由器、NAS)到高性能服务器(如研究机构的集群)。
历史与发展
- 起源:
- NetBSD 起源于 1993 年,由 Chris Demetriou,Theo de Raadt,Adam Glass 和 Charles Hannum 从 386BSD 分支创建,旨在提供跨平台、可移植的 BSD 系统。
- 1993 年发布 NetBSD 0.8,为第一个正式版本,基于 4.3BSD。
- OpenBSD于 1995 年从 NetBSD 分支,因开发理念分歧。
- 发展历程:
- 1994-2000:NetBSD 1.0 引入 pkgsrc,1.3 支持 10 种架构,奠定可移植性基础。
- 2005-2010:NetBSD 4.0 引入 SMP(多核处理),5.0 支持 Xen 虚拟化和更多架构。
- 2015-2020:NetBSD 7.0 增强 DRM(显卡驱动),8.0 支持 ARM64 和 RISC-V。
- 2021-2025:NetBSD 10.0(2024 年 3 月)优化 NVMe,Wi-Fi 6 和 Rust 支持,10.1(预计 2025 年)持续改进。
- X 帖子称“NetBSD 10.0 在嵌入式设备上的表现无与伦比”。
- 社区与支持:
- 由 NetBSD 基金会(非营利组织)和社区维护,托管于 netbsd.org 和 GitHub.
- 提供 NetBSD Guide(www.netbsd.org/docs/guide)、邮件列表、论坛和 X 社区(如 @NetBSD)。
- 2 年发布周期(每版本支持约 2 年,10.0 至 2026 年)。
- 开源许可:
- 采用 BSD 许可证(2-Clause 和 3-Clause),允许自由使用、修改和分发,无需强制开源衍生作品。
主要特点
NetBSD 以可移植性、简洁性和代码质量著称,适合嵌入式和服务器环境。以下是其主要特点:
- 跨平台可移植性
- 架构支持:
- 支持 70+ 种架构,包括 x86_64,ARM64,RISC-V,MIPS,SPARC,PowerPC 等。
- 运行于嵌入式设备(如 Raspberry Pi)、服务器和老式硬件(如 Amiga)。
- 架构支持:
- Pkgsrc 包管理
- 功能:
- pkgsrc 是跨平台的包管理系统,支持 20,000+ 软件包,可在 NetBSD 和其他 Unix 系统(如 Linux,macOS)使用。
- 优势:
- 源码编译(类似 FreeBSD Ports)和二进制包(类似 OpenBSD Pkg)。
- 功能:
- 安全性
- 功能:
- 默认启用 W^X(写或执行)、ASLR(地址空间随机化)和栈保护,类似 OpenBSD。
- 提供 PF 防火墙(从 OpenBSD 移植)和 Veriexec(文件完整性检查)。
- 功能:
- 桌面与服务器支持
- 桌面环境:
- 支持 XFCE(默认轻量)、GNOME,KDE Plasma 等,需手动配置。
- 服务器:
- 默认无 GUI,适合运行 Apache,Nginx 。
- 支持 Xen 虚拟化和 cgd(加密磁盘)。
- 桌面环境:
- 简洁与文档
- 简洁设计:
- 最小化内核和工具,减少攻击面,类似 OpenBSD。
- X 帖子称“NetBSD 的代码干净得像艺术品”。
- 文档:
- NetBSD Guide 和 man 页面提供详细指导(参考 www.netbsd.org/docs)。
- 简洁设计:
优势与局限性
优势
- 可移植性:
- 支持 70+ 架构,适合嵌入式、服务器和老式硬件。
- X 帖子称“NetBSD 在任何设备上都能跑”。
- pkgsrc 系统:
- 跨平台包管理,支持源码和二进制安装,灵活性高于 FreeBSD 和 OpenBSD。
- BSD 许可证:
- 比 GPL更宽松,适合商业和开源项目。
- 代码质量:
- 严格审计,减少漏洞,类似 OpenBSD。
- 轻量设计:
- 适合低功耗设备(如 Raspberry Pi)。
局限性
- 学习曲线:
- 配置(如 pkgsrc,PF)比 Linux 复杂,需熟悉 BSD 命令。
- 解决:参考 www.netbsd.org/docs/guide/zh-cn 的中文指南。
- 软件生态:
- pkgsrc 包数量(20,000+)少于 FreeBSD(30,000+)和 Linux(80,000+,如 Arch)。
- 解决:使用 pkgsrc 安装 ,或通过 Xen 运行 Linux 容器。
- 硬件兼容性:
- 驱动支持不如 Linux 和 FreeBSD,Wi-Fi 和 GPU 需手动配置。
- 社区规模:
- 小于 FreeBSD 和 Ubuntu,资源较少。
- 解决:结合 NetBSD Guide 和 X 教程(如 @NetBSD)。
总结
NetBSD 是一个免费、开源的类 Unix 操作系统,以可移植性、pkgsrc 包管理和 BSD 许可证为特色,适合嵌入式设备、服务器和研究环境。它支持 70+ 种架构,运行于从 Raspberry Pi 到高性能服务器的多种硬件。NetBSD 更适合跨平台和嵌入式部署。