為云及設備而建立的操作系統 - Snappy Ubuntu

BridgettSco 9年前發布 | 13K 次閱讀 Snappy Ubuntu

關于 Snappy,之前的文章中提了一次 Snappy 與 Deb 共存,只是我不知到大家有沒有聽過Snappy Ubuntu.反正我聽到Snappy時,不是很理解.如果我們查查字典,它的意思是爽快的,敏捷的,精力充沛的.聽起來非常不錯哦!對了Snappy就是Canonical公司在未來發展的方向.所有未來Ubuntu所有的系統都將使用Snappy.這就是我們所說的Convergence(融合).我們開發的應用可以在多個不同平臺尺寸的設備及云上運行.我們可以不必為某個設備而單獨開發.更多的信息可以在 https://developer.ubuntu.com/en/snappy/找到.在未來,Snappy Ubuntu將在IoT(Internet of Things物聯網中)扮演重要的角色,比如如下的無人機等.

snappyubuntu01

Snappy Ubuntu 到底是什么呢?

簡言之,Snappy Ubuntu是一個嶄新的,具有事務性更新的為云及設備而建立的操作系統.它分為:

Snappy Ubuntu Core:    為云(cloud)及IoT (Internet of Things,物聯網)

Snappy Ubuntu Personal: 為手機,平板及電腦

我們看一下Snappy Ubuntu 的特點:

snappyubuntu02

snappyubuntu03

最小的Ubuntu服務器image:由于有較小的內核,所有可以適用于更多的應用場景.應用通過簡單的方式.snap包來提供.snap包不同于先前的debian及手機上的click包.未來的應用及framwork都將以.snap包來發布.

事務性更新 (transitional updates):通過商城的channel自動更新.事務性更新提供一個更加可靠的系統.在Snappy Ubuntu中含有兩個root filesystem分區:A區及B區(各含有一個系統image).當A區啟動后,它可以用來更新B區.只有B區更新完整后才可以切換過來到B區,否則永遠處于A區.反之依然,我們可以用同樣的辦法來更新A區.當然,我們在任何時候,也可以rollback,也即回到以前的啟動區.這樣的做法可以保證我們的系統在任何的時候Ubuntu Core及應用的更新都是完整的.這對很多需要穩定工作的環境的系統來說非常重要,比如更新一個遠在路口的webcam等.

更強的應用安全:Snappy Ubuntu具有業界領先的安全性.Ubuntu系統image只是可讀的.任何應用不可以更改它.這樣的好處是不至于由于某個應用的安裝或升級從而導致系統image得到修改,進而導致有些已經安裝的應用不能正常運行.每個應用都有自己的可以讀寫的空間,并且它們之間是不可以互相訪問的.每個應用都運行于受限的沙箱之中.API的訪問是由Apparmor及Seccomp來強制受限的.它提供嚴格的基于MAC(Mandatory-Access-Control)的隔離.傳統的Linux應用可以訪問任何一個目錄,并讀寫它們之中的文件.這和Snappy系統是不同的.如果一個應用需要特別的庫,可以使用snapcraft來安裝相應的庫到自己的應用的私有目錄中.

Snappy Ubuntu Core 架構

snappyubuntu05

在Snappy Ubuntu系統中,有4層:

-    Application 層:這個之間由應用開發商提供.所有的應用都是隔離的,并受制于系統的安全機制

-    Framework 層:這層是由Cannonical及開發商共同提供.它可以拓展Ubuntu Core的最基本的系統.這是一個可選的層.它不可以依附于其它的framework

-    Ubuntu Core 層:這層是由Canonical公司提供.最少的rootfs來為特定的需求而定制

-    Enablement 層:這個硬件層是由設備提供商或Canonical提供.Canonical提供4種支持

  • 32/64 位
  • ARM/Intel

一個典型的遠程桌面協議應用架構:

snappyubuntu06

Snappy 支持的Target

截止目前為止,Snappy支持的target為:

snappyubuntu07

從上面可以看出,Snappy已經在一些ARM的開發板及云(cloud)上都已經可以部署了.對有些開發者來說,買一個便宜的開發板加上一些附件,就可以hack我們的Snappy系統了.

Snappy運用實例

目前Snappy在不同的領域越來越多地被運用.下面例舉一些已經在運用Snappy Ubuntu做產品的實例.我們可以點擊下面圖片進入產品的網站.

snappyubuntu08snappyubuntu09

snappyubuntu10

snappyubuntu11

Snappy store

就像其它的平臺一樣,Snappy也可以有自己的Store.為了看見所有在系統上的Snaps,我們可以打開我們的Browser(比如chromium,firefox等).我們可以看到在如下的localhost:4200地址啟動webdm (Web Device Manager),可以看到在設備中的已經安裝的應用.

snappyubuntu12

snappyubuntu13

Canonical也可以向包括OEM提供專有的帶有品牌的Store.

在接下來的文章中,我們將逐一介紹Snappy Ubuntu系統的技術細節.

轉載自:微信【Ubuntu 中國】

 本文由用戶 BridgettSco 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!