SteveHawk's Blog

PandoraBox 操作系统



0. 简介

PandoraBox 操作系统是一个适合于嵌入式设备的 Linux 发行版。这个系统的主要用途是作为路由器的底层固件,为路由器的运行提供支持。

1. PandoraBox 与 OpenWrt

PandoraBox 与 OpenWrt 有着非常紧密的联系。

PandoraBox 是 OpenWrt 的一条分支,由一个名为 OpenWrt 中国的社区的创始人之一的 Lintel(黄文哲)带领的技术团队所维护,在恩山无线论坛上发布更新。该项目曾在 2017 年初因故停更,但是目前已经恢复了固件的迭代更新,最新的官方论坛地址为 https://bbs.pangubox.com/

PandoraBox 基于 OpenWrt 深度定制,基于中国的网络环境做了很多的调整及优化,比起 OpenWrt 更加本土化。从能够被感知到的用户体验上,两者的直观区别在于 PandoraBox 内置了更多的插件模块,更加的“开箱即用”。

鉴于 PandoraBox 底层基于 OpenWrt ,并且 PandoraBox 并没有详细的官方文档,接下来容我先介绍一下 OpenWrt 系统。

2. OpenWrt

OpenWrt 是一个拥有高度可拓展性的 GNU/Linux 发行版,专为嵌入式设备(主要是路由器)而开发。当前的最新版本系统版本号为 OpenWrt 18.06.1,底层 Linux 内核的版本为 4.9.120/4.14.63。源代码托管于:https://git.openwrt.org/

比起一般的路由器系统只能更改少量的配置,OpenWrt 能够更加随心所欲的进行更改和定制。下面是一些 OpenWrt 的突出特点:

  1. OpenWrt 能够支持用 USB 连接的一些外置硬件,包括打印机,4G 网卡,网络摄像头,声卡等,这能够允许用户利用路由器拓展出很多全新的用途。
  2. OpenWrt 向用户开放 SSH 权限,并且用户可以随意读写更改系统的根目录。这意味着用户对于这个系统能够有完全的掌控。并且由于 OpenWrt 基于 Linux,许多基础指令完全互通,对于熟悉 Linux 的用户来说完全没有上手难度。
  3. OpenWrt 拥有一个名为 opkg 的包管理器,类似 apt, yum 和 dpkg,opkg 可以很方便的从本地或者软件仓库中安装或者卸载软件。OpenWrt 的软件仓库中有着超过 3500 个包,对于路由器来说可以说是非常丰富,这能够为你提供非常多的附加功能。
  4. OpenWrt 提供了 UCI 脚本支持。UCI 是 OpenWrt 为了统一管理系统所有配置选项而开发的一个管理程序,同时也是一门特定的脚本语言。在命令行里使用 uci 命令可以很方便的查看和修改路由器的系统配置文件,不需要再使用 grep 等命令,也不用担心不同的配置文件有不一样的语法。这一切都被统一到了 UCI 中。
  5. 除了命令行,OpenWrt 还提供了 Web 图形化界面,可以更加方便的对路由器的各项配置进行设置。
  6. OpenWrt 是一个以 GPL 协议开源的软件,有非常庞大的开发者社区为其提供支持。这意味着 OpenWrt 不会有硬件供应商的隐藏后门程序,一旦发现漏洞也可以在不久后被修复。另外,就算硬件供应商停止更新原厂固件后很久,很多老旧的路由器设备依旧可以得到 OpenWrt 的支持。
  7. OpenWrt 的默认配置非常保守,而且基于不常受攻击的 Linux 系统,因此可以保证免受来自外界的攻击。
  8. 有许多正在网络方面进行前沿研究的团队使用 OpenWrt 作为他们工作的稳定平台。随着他们的工作从实验领域转移到实际领域,很多全新的优秀算法将首先应用在 OpenWrt 中。

在 2016 年,LEDE 项目作为 OpenWrt 项目的副产品而诞生,LEDE 致力于建立一个更加透明,注重协作的社区,来开发嵌入式 Linux 系统。2018 年 1 月,LEDE 项目和 OpenWrt 项目以 OpenWrt 这一名字进行合并,全新的 OpenWrt 项目将按照 LEDE 的章程进行管理。全新的 OpenWrt 社区能够保证 OpenWrt 项目继续茁壮成长,给嵌入式 Linux 的开发带来新生。

3. PandoraBox

前文已经介绍过,PandoraBox 是基于 OpenWrt 深度定制开发的。由于大部分主要功能依旧保持原样,上一节 OpenWrt 的所有优点依旧适用于 PandoraBox。下面介绍一些 PandoraBox 独有的特点:

  1. PandoraBox 系统底层采用了原厂的闭源无线驱动,相比于 OpenWrt 的开源驱动会有更好的性能和稳定性。

  2. PandoraBox 预装并且配置好了很多实用的软件包,相当于支持了很多额外的功能,包括动态 DNS,FTP 服务器,Samba 服务器,UPnP,打印服务器,甚至还有十分中国特色的 ShadowSocks,ChinaDNS,DNSCrypt等反审查软件。

  3. PandoraBox 提供了很方便的多拨功能,实现更高的网速。

  4. PandoraBox 对于更多的路由器机型进行了适配,减少了异常 BUG 发生的情况。

除此之外还有很多细节上的优化,没有办法在此一一列举了。下面介绍一下 PandoraBox 的用户界面:LuCI。

4. LuCI

LuCI 是一个由 Lua 语言编写的 MVC 架构的 Web 用户管理界面,是 Lua Configuration Interface 的缩写。开发者们开发出 LuCI 的目的在于使 OpenWrt 整个系统的配置集中化,为用户提供一个简洁、自由、可拓展而且易于维护的管理界面,因此使用 LuCI 管理和配置路由器非常的方便。下面,让我们来看一下 LuCI 界面的几张截图:

  1. 系统概况界面 Snipaste_2018-09-26_17-47-41

  2. 系统日志界面 Snipaste_2018-09-26_17-48-38

  3. 软件包管理界面 Snipaste_2018-09-26_17-49-07

  4. 启动项管理界面 Snipaste_2018-09-26_17-49-30

  5. 磁盘挂载点管理界面 Snipaste_2018-09-26_17-49-59

  6. 路由器 LED 灯配置界面 Snipaste_2018-09-26_17-50-17

  7. Samba 服务器配置界面 Snipaste_2018-09-26_17-50-36

  8. 无线网设置界面 Snipaste_2018-09-26_17-50-57

从上面的 8 张截图可以很明显的看出,LuCI 界面简洁明了的同时功能也非常强大,路由器的方方面面都可以在这里很方便的进行设置。

自 2015 年起 OpenWrt 项目开始开发新一代 LuCI2 界面,LuCI2 不再采用运行效率很低的 Lua 作为编写语言,而是采用了静态 HTML 页面和 JavaScript XHR 方法。这意味着 LuCI2 会获得比原来 LuCI 更快的运行速度。目前 LuCI2 仍处于开发试验阶段,但是它最终将取代最初的 LuCI 界面。

5. 总结

PandoraBox 操作系统是一个专为嵌入式设备开发的 Linux 发行版,广泛使用于路由器设备上。它具有非常强大的可拓展性,允许用户对它的方方面面进行定制。同时 PandoraBox 还拥有一个简洁但是功能强大的 Web 管理界面 LuCI,让用户能更方便的对路由器的各种配置进行设置。再加上 PandoraBox 在 OpenWrt 的基础上加入了更多对于中国本土化的支持,对于国内喜欢折腾路由器的硬件发烧友们来说,这个系统是刷机的不二选择。


#courses
本文总字数 2141
本文阅读量
本站访客量

↪ reply by email