偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

真有用?Snap和Flatpak通吃所有發(fā)行版的打包方式

系統(tǒng) Linux
“從一開始它的主要目標(biāo)是允許相同的應(yīng)用程序運(yùn)行在各種 Linux 發(fā)行版和操作系統(tǒng)上。” ——Flatpak“……‘snap’ 通用 Linux 包格式,使簡(jiǎn)單的二進(jìn)制包能夠完美的、安全的運(yùn)行在任何 Linux 桌面、服務(wù)器、云和設(shè)備上。”

[[172654]]

對(duì)新一代的打包格式開始滲透到 Linux 生態(tài)系統(tǒng)中的深入觀察

最近我們聽到越來(lái)越多的有關(guān)于 Ubuntu 的 Snap 包和由 Red Hat 員工 Alexander Larsson 創(chuàng)造的 Flatpak (曾經(jīng)叫做 xdg-app)的消息。

這兩種下一代打包方法在本質(zhì)上擁有相同的目標(biāo)和特點(diǎn):即不依賴于第三方系統(tǒng)功能庫(kù)的獨(dú)立包裝。

這種 Linux 新技術(shù)方向似乎自然會(huì)讓人腦海中浮現(xiàn)這樣的問題:獨(dú)立包的優(yōu)點(diǎn)/缺點(diǎn)是什么?這是否讓我們擁有更好的 Linux 系統(tǒng)?其背后的動(dòng)機(jī)是什么?

為了回答這些問題,讓我們先深入了解一下 Snap 和 Flatpak。

動(dòng)機(jī)

根據(jù) Flatpak Snap 的聲明,背后的主要?jiǎng)訖C(jī)是使同一版本的應(yīng)用程序能夠運(yùn)行在多個(gè) Linux 發(fā)行版。

“從一開始它的主要目標(biāo)是允許相同的應(yīng)用程序運(yùn)行在各種 Linux 發(fā)行版和操作系統(tǒng)上。” —— Flatpak“……‘snap’ 通用 Linux 包格式,使簡(jiǎn)單的二進(jìn)制包能夠***的、安全的運(yùn)行在任何 Linux 桌面、服務(wù)器、云和設(shè)備上。” —— Snap說得更具體一點(diǎn),站在 Snap 和 Flatpak (以下稱之為 S&F)背后的人認(rèn)為,Linux 平臺(tái)存在碎片化的問題。

這個(gè)問題導(dǎo)致了開發(fā)者們需要做許多不必要的工作來(lái)使他的軟件能夠運(yùn)行在各種不同的發(fā)行版上,這影響了整個(gè)平臺(tái)的前進(jìn)。

所以,作為 Linux 發(fā)行版(Ubuntu 和 Red Hat)的***,他們希望消除這個(gè)障礙,推動(dòng)平臺(tái)發(fā)展。

但是,是否是更多的個(gè)人收益刺激了 S&F 的開發(fā)?

個(gè)人收益?

雖然沒有任何官方聲明,但是試想一下,如果能夠創(chuàng)造這種可能會(huì)被大多數(shù)發(fā)行版(即便不是全部)所采用的打包方式,那么這個(gè)項(xiàng)目的***將可能成為一個(gè)能夠決定 Linux 大船航向的重要人物。

優(yōu)勢(shì)

這種獨(dú)立包的好處多多,并且取決于不同的因素。

這些因素基本上可以歸為兩類:

用戶角度

+ 從 Liunx 用戶的觀點(diǎn)來(lái)看:Snap 和 Flatpak 帶來(lái)了將任何軟件包(軟件或應(yīng)用)安裝在用戶使用的任何發(fā)行版上的可能性。

例如你在使用一個(gè)不是很流行的發(fā)行版,由于開發(fā)工作的缺乏,它的軟件倉(cāng)庫(kù)只有很***的包?,F(xiàn)在,通過 S&F 你就可以顯著的增加包的數(shù)量,這是一個(gè)多么美好的事情。

+ 同樣,對(duì)于使用流行的發(fā)行版的用戶,即使該發(fā)行版的軟件倉(cāng)庫(kù)上有很多的包,他也可以在不改變它現(xiàn)有的功能庫(kù)的同時(shí)安裝一個(gè)新的包。

比方說, 一個(gè) Debian 的用戶想要安裝一個(gè) “測(cè)試分支” 的包,但是他又不想將他的整個(gè)系統(tǒng)變成測(cè)試版(來(lái)讓該包運(yùn)行在更新的功能庫(kù)上)?,F(xiàn)在,他就可以簡(jiǎn)單的想安裝哪個(gè)版本就安裝哪個(gè)版本,而不需要考慮庫(kù)的問題。

對(duì)于持后者觀點(diǎn)的人,可能基本上都是使用源文件編譯他們的包的人,然而,除非你使用類似 Gentoo 這樣基于源代碼的發(fā)行版,否則大多數(shù)用戶將從頭編譯視為是一個(gè)惡心到吐的事情。

+ 高級(jí)用戶,或者稱之為 “擁有安全意識(shí)的用戶” 可能會(huì)覺得更容易接受這種類型的包,只要它們來(lái)自可靠來(lái)源,這種包傾向于提供另一層隔離,因?yàn)樗鼈兺ǔJ桥c系統(tǒng)包想隔離的。

* 不論是 Snap 還是 Flatpak 都在不斷努力增強(qiáng)它們的安全性,通常他們都使用 “沙盒化” 來(lái)隔離,以防止它們可能攜帶病毒感染整個(gè)系統(tǒng),就像微軟 Windows 系統(tǒng)中的 .exe 程序一樣。(關(guān)于微軟和 S&F 后面還會(huì)談到)

開發(fā)者角度

與普通用戶相比,對(duì)于開發(fā)者來(lái)說,開發(fā) S&F 包的優(yōu)點(diǎn)可能更加清楚。這一點(diǎn)已經(jīng)在上一節(jié)有所提示。

盡管如此,這些優(yōu)點(diǎn)有:

+ S&F 通過統(tǒng)一開發(fā)的過程,將多發(fā)行版的開發(fā)變得簡(jiǎn)單了起來(lái)。對(duì)于需要將他的應(yīng)用運(yùn)行在多個(gè)發(fā)行版的開發(fā)者來(lái)說,這大大的減少了他們的工作量。

++ 因此,開發(fā)者能夠更容易的使他的應(yīng)用運(yùn)行在更多的發(fā)行版上。

+ S&F 允許開發(fā)者私自發(fā)布他的包,不需要依靠發(fā)行版維護(hù)者在每一個(gè)/每一次發(fā)行版中發(fā)布他的包。

++ 通過上述方法,開發(fā)者可以不依賴發(fā)行版而直接獲取到用戶安裝和卸載其軟件的統(tǒng)計(jì)數(shù)據(jù)。

++ 同樣是通過上述方法,開發(fā)者可以更好的直接與用戶互動(dòng),而不需要通過中間媒介,比如發(fā)行版這種中間媒介。

缺點(diǎn)

– 膨脹。就是這么簡(jiǎn)單。Flatpak 和 Snap 并不是憑空變出來(lái)它的依賴關(guān)系。相反,它是通過將依賴關(guān)系預(yù)構(gòu)建在其中來(lái)代替使用系統(tǒng)中的依賴關(guān)系。

就像諺語(yǔ)說的:“山不來(lái)就我,我就去就山”。

– 之前提到安全意識(shí)強(qiáng)的用戶會(huì)喜歡 S&F 提供的額外的一層隔離,只要該應(yīng)用來(lái)自一個(gè)受信任的來(lái)源。但是從另外一個(gè)角度看,對(duì)這方面了解較少的用戶,可能會(huì)從一個(gè)不靠譜的地方弄來(lái)一個(gè)包含惡意軟件的包從而導(dǎo)致危害。

上面提到的觀點(diǎn)可以說是有很有意義的,雖說今天的流行方法,像 PPA、overlay 等也可能是來(lái)自不受信任的來(lái)源。

但是,S&F 包更加增加這個(gè)風(fēng)險(xiǎn),因?yàn)閻阂廛浖_發(fā)者只需要開發(fā)一個(gè)版本就可以感染各種發(fā)行版。相反,如果沒有 S&F,惡意軟件的開發(fā)者就需要?jiǎng)?chuàng)建不同的版本以適應(yīng)不同的發(fā)行版。

原來(lái)微軟一直是正確的嗎?

考慮到上面提到的,很顯然,在大多數(shù)情況下,使用 S&F 包的優(yōu)點(diǎn)超過缺點(diǎn)。

至少對(duì)于二進(jìn)制發(fā)行版的用戶,或者重點(diǎn)不是輕量級(jí)的發(fā)行版的用戶來(lái)說是這樣的。

這促使我問出這個(gè)問題,可能微軟一直是正確的嗎?如果是的,那么當(dāng) S&F 變成 Linux 的標(biāo)準(zhǔn)后,你還會(huì)一如既往的使用 Linux 或者類 Unix 系統(tǒng)嗎?

很顯然,時(shí)間會(huì)是這個(gè)問題的***答案。

不過,我認(rèn)為,即使不完全正確,但是微軟有些地方也是值得贊揚(yáng)的,并且以我的觀點(diǎn)來(lái)看,所有這些方式在 Linux 上都立馬能用也確實(shí)是一個(gè)亮點(diǎn)。

責(zé)任編輯:武曉燕 來(lái)源: Linux中國(guó)
相關(guān)推薦

2016-09-18 15:06:50

LinuxSnap打包方式

2025-05-15 08:08:51

StarRocksFEJava

2011-02-16 16:23:09

Debian發(fā)行版

2023-04-03 08:20:10

blendOSLinux發(fā)行版

2009-12-17 15:05:09

Linux發(fā)行版

2017-08-07 17:22:06

2018-04-17 10:00:18

Linux發(fā)行版面向企業(yè)

2009-12-21 16:27:55

2025-06-09 01:22:00

2009-04-20 20:27:05

LinuxFreeNAS發(fā)行版

2022-10-18 11:09:31

LURELinuxArch

2009-10-13 09:22:01

Linux發(fā)行版

2016-12-26 09:49:28

Linux發(fā)行版

2009-04-10 14:32:13

LinuxSlax 6.1.0發(fā)行版

2021-09-06 11:29:59

LinuxCutefishOS操作系統(tǒng)

2011-09-09 10:49:18

2013-11-11 11:34:56

UbuntuLinux發(fā)行版Unity

2020-06-30 09:38:14

Linux發(fā)行版操作系統(tǒng)

2022-03-10 12:39:48

NitruxLinuxLinux發(fā)行版

2020-03-10 08:00:02

Kubernetes發(fā)行版容器
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)