BSD 是正常人所在的地方
  首先我要说的是,我并不是字面上的意思。我这里说的是从系统管理和编码的角度出发的设计和开发决策。
  与 Linux 发行版相反,Berkeley 软件发行版( BSD )并不是一个零散的项目。BSD 项目维护的是整个操作系统,而不仅仅是内核。
  BSD 是一个基于 Research Unix 的操作系统,由加州大学伯克利分校的计算机系统研究组( CSRG )开发和发行。今天,"BSD "指的是它的后代,如 FreeBSD 、OpenBSD 、NetBSD 和 DragonFly BSD 。这些项目是真正的操作系统,而不仅仅是内核,它们不是 "发行版"。
  Linux 发行版,如 Debian GNU/Linux 和 Arch Linux 必须做的工作是将所有创建一个完整的 Linux 操作系统所需的软件整合在一起。它们需要 Linux 内核、GNU 工具和库、一个初始化系统和一些第三方应用程序,以便最终形成一个正常运行的操作系统。
  相比之下,如前所述,BSD 既是一个内核,又是一个完整的操作系统。例如,FreeBSD 同时提供 FreeBSD 内核和 FreeBSD 操作系统。它是作为一个单独的项目来维护的。
  没有一个人或公司拥有 BSD 。它是由全世界的高技术和坚定的贡献者组成的社区创建和发布的。
  公司也可以使用和贡献 BSD,但与 Linux 相反,公司不能 "劫持 "BSD 。公司可以制作自己版本的 BSD,比如索尼电脑娱乐公司为他们的 PlayStation 3 、PlayStation 4 和 PlayStation Vita 游戏机所做的,但由于 BSD 是完整的操作系统,而且每个 BSD 项目都是由开源爱好者维护和开发的,而不是像 Red Hat 这样的公司,所以 BSD 项目是真正的独立的。
  由于这种组织结构,无论你选择哪个 BSD 项目,你通常都不会在基本安装中找到疯狂的退出设置,你也不会发现操作系统组件中集成了影响隐私的解决方案。相反,由于这些项目是由技术精湛、热情洋溢的人开发和推动的,他们非常关心操作系统的设计、安全和隐私,你会经常发现,即使是使用包管理器安装的第三方软件也会被打上补丁,使这些问题不存在,比如前面提到的 OpenBSD 禁用 DNS over HTTPS 的问题。
  这一切的另一个好处是,围绕着 BSD 项目的社区都是由经验丰富、乐于助人、(大部分)善良的人组成。FreeBSD 社区是特别善良和乐于助人的。

关于 "正常人 "在哪里的问题。
  对于我说的 "BSD 是正常人的地方",harryruhr 写道。
作者说:"BSD 项目维护的是整个操作系统,而不仅仅是内核" 的确,BSD 不仅仅是内核,还有用户国程序。但 BSD 操作系统自带多少 "用户国度",绝对是由 BSD 开发者决定的。它往往是最低限度的工具。其余的你必须使用端口和软件包,这和 Linux 发行版中使用软件包没有什么区别。例如 FreeBSD 的基本系统中甚至没有 Xorg, 你必须使用 "pkg install xorg" 从软件包中安装它。这种情况并不少见,一部分集成系统被从基本系统中移除而成为一个软件包。
  我觉得这种说法有点操之过急。
  您不能把您必须在 FreeBSD 中安装第三方项目的 Xorg,因为它不存在于基本系统中,这与 GNU/Linux 操作系统碎片化的现实相提并论。彼此之间完全没有关系。
  我的文章是关于 GNU/Linux 操作系统与不同的 BSD 操作系统相比的零散性,而不是关于基础安装中包含了多少第三方应用程序。
harryruhr 接着说。
  最 "完整 "的系统确实是 OpenBSD,它不仅自带 X ( Xenocara ),还自带 MTA ( OpenSMTPd )和 Web 服务器( OpenBSD httpd ),可以说 OpenBSD 的基础系统是服务器完成基本任务的好选择。当然,除了 xterm 和 xcalc 以及 3 个窗口管理器(twm, fvwm 和 cwm)之外,并没有包含太多的 "图形 "程序. 如果你想要一个网页浏览器或像样的邮件程序,你必须从软件包中安装。
  OpenBSD 中的 X 、OpenSMTPd 、httpd 等应用程序,与操作系统本身无关。无论你是选择把这些放到基础系统中,还是把这些应用程序留在外面,都不影响 OpenBSD 即使没有这些部分也是一个完整的操作系统。
  这些部分并不能使 OpenBSD 比 FreeBSD 更成为一个操作系统。这些部件使 OpenBSD 成为一个在基本安装中包含更多应用程序的操作系统。
  OpenBSD 项目决定将更多的应用程序集成到基本安装包中,因为 OpenBSD 的重点是非常注重安全。开发者希望将这些应用程序与基础安装程序集成在一起,以便控制这些部件的开发方式以及这些部件的工作方式。因此,这些应用程序已经成为 OpenBSD 项目的一个集成部分。

为什么要从 Linux 迁移到 BSD3的更多相关文章

  1. 虚拟机下linux迁移造成MAC地址异常处理办法

    虚拟机下linux迁移造成MAC地址异常处理办法 Linux无法启用网卡:Device eth0 has different MAC address than expected,ignoring解决 ...

  2. 为什么要从 Linux 迁移到 BSD 5

    为什么要从 Linux 迁移到 BSD 5 干净的分离 在 FreeBSD 的设计方式下,不同的组件组合在一起的,处理配置和调优,以及多年来开发和改进的所有工具,使得使用 FreeBSD 是一件很特别 ...

  3. 为什么要从 Linux 迁移到 BSD 4

    为什么要从 Linux 迁移到 BSD 4 许可证问题 Linux GPL 许可证对开发者的要求比较严格,它是一种开源的反模式,因为它强制发布所有修改过的源代码,并且阻止其他开源项目的集成,例如 GP ...

  4. 为什么要从 Linux 迁移到 BSD1

    为什么要从 Linux 迁移到 BSD1 作为一个操作系统,GNU/Linux 已经变得一团糟了,因为项目的分散性,内核的臃肿,以及商业利益的玩弄.从 GNU/Linux 迁移到 BSD 有几个技术上 ...

  5. 写个.net开发者的Linux迁移指南

    前言 为什么要迁移到Linux 首先我个人还是有点软件洁癖,以前是穷酸学生的时候也是用盗版的用户,后来在知乎被洗脑终于有了点版权意识.然后便有了能用开源软件的就用开源,实在不能就选社区版或者免费版.于 ...

  6. linux迁移至固态硬盘全过程

    自从台式机上用上固态硬盘后,就再也受不了笔记本上的5400转的机械硬盘了,所以这次又买了块固态硬盘打算装到笔记本上. 笔记本里装的是Ubuntu 14.04 + Win7双系统,Win7主要偶尔运行一 ...

  7. 由 Windows 向 Linux 迁移字体 和 Linux 等宽字体

    1. From Windows Windows下字体库的位置为C:\Windows\fonts,这里面包含所有windows下可用的字体.2. To Linux linux的字体库是 /usr/sha ...

  8. linux 迁移项目ProtocolException

    背景:服务器跟换机房,虚拟机完整迁移项目,只修改ip和主机名 1.检查/etc/hosts 中ip 和主机名映射 2.检查网络端口是否有限制以及端口开放是否全了,检查ip有没有配对.RMI注册不上.

  9. 为什么要从 Linux 迁移到 BSD2

    OpenZFS on Linux,是项目的 Linux 部分,目前有 345 个活跃的贡献者,有超过 5600 个提交,而且几乎每天都有提交!一些世界上最大的 CDN 和数据存储服务在 FreeBSD ...

随机推荐

  1. DDL 数据定义语言

    目录 创建数据库(CREATE) 删除数据库(DROP) 修改数据库(ALTER) 创建数据表(CREATE) 数据表的数据属性 数据类型属性(Type) 其他属性(Null,Key,Default, ...

  2. 卸载vue2.9.6版本,安装新版本

    1.检查vue安装目录(cmd中输入) where vue 2.删除目录中的关于vue的文件(可以将文件按时间排序,找到vue相关的文件删除) 3.检查vue是否还能找到 4.安装新版本的vue np ...

  3. 一些简单的SQL语句

    简单的SQL入门 一,简介 1,  一个数据库包含一个或多个表,表包含带有数据的记录(行) 2,  SQL对大小写不敏感,语句的分号看具体情况 二,语法 1,  数据操作语言:DML a)       ...

  4. C++的memset

    1. 需要的头文件 C中为<memory.h> 或 <string.h> C++中为<cstring> void * memset ( void * ptr, in ...

  5. sdut2878 环形依赖的DP(高斯消元,剪枝后的模板

    这题的状态是循环依赖的有环.. 之前一道概率DP,类似有环..但是它是可以消掉的 比如dp[i]=0.3*dp[i+1]+0.2*dp[i+2]+0.5*dp[i]; 完全可以变成,0.5*dp[i] ...

  6. js sort tricks All In One

    js sort tricks All In One js 排序技巧 const arr = [ { label: 'False 1 ', disabled: false, }, { label: 'F ...

  7. CSS Box Model All In One

    CSS Box Model All In One CSS 盒子模型 All In One CSS Box Model CSS Box Model Module Level 3 W3C Working ...

  8. how to create react custom hooks with arguments

    how to create react custom hooks with arguments React Hooks & Custom Hooks // reusable custom ho ...

  9. React Hooks & useCallback & useMemo

    React Hooks & useCallback & useMemo https://reactjs.org/docs/hooks-reference.html#usecallbac ...

  10. css 使用paint创建自定义css

    See also: https://houdini.how/ https://github.com/una/extra.css#readme