postmarketOS 專案引入了基於 systemd 的程式集

postmarketOS 專案的開發人員宣布可以使用 systemd 系統管理器,該專案基於 Alpine Linux 軟體包基礎、標準 Musl C 庫和 BusyBox 實用程式集開發智慧型手機的 Linux 發行版。經過大約一年的實施 systemd 支援工作,原型組件已經準備就緒並可供測試,其中使用 systemd 取代 OpenRC 初始化系統。

至少只要該系統在 Alpine Linux 中使用,對創建基於 OpenRC 的建置的支援就會保留。建置 postmarketOS 映像時,會保留在 pmbootstrap 中選擇 OpenRC 的選項。除此之外,OpenRC 計畫繼續由基於 Sway 複合管理器的 Sxmo (Simple X Mobile) 圖形 shell 的組件開發人員使用。

使用 systemd 進行的建置將繼續建置在 Alpine Linux 軟體包基礎上,儘管該發行版不支援 systemd 並使用 Musl C 庫。 Systemd 官方僅支援 Glibc C 函式庫,postmarketOS 開發人員必須使用額外的補丁,他們計劃隨著時間的推移將其整合到主 systemd 中(正在與 systemd 開發人員一起工作以簡化整合)。

實作 systemd 支援的原因是,面對 GNOME 和 KDE 對 systemd 元件的依賴性不斷增加,維護基於 OpenRC 的初始化堆疊很困難。為了確保基於 systemd 的 GNOME 和 KDE 的功能,需要使用各個層,而沒有 systemd 工作的代價是需要以適當的形式維護這些層並與 GNOME 和 KDE 的開發同步,在沒有 systemd 的情況下層中一些必要的功能以及持續維護開發人員的不可預測性。

例如,為了與hostnamed、localed和timedated服務相容,使用了openrc-settingsd層,使用eudev套件而不是udev,使用elogind而不是logind,使用logbookd而不是journald,使用superd套件提供「systemd -user」功能,並作為systemd.timer 的替代品被喚醒。

postmarketOS 專案引入了基於 systemd 的程式集

在所使用的層中,僅在 openrc-settingsd 和 eudev 中提供所需功能的適當維護和支援等級。 elogind、logbookd 和 superd 專案繼續維護,但需要改進,因為它們缺乏一些必要的功能,並且喚醒大約有一年沒有維護。此外,KDE Plasma Mobile 開發人員希望使用 systemd-coredumpd 服務來簡化除錯,但其替代 corecollector 截至 2020 年仍未維護。

至於使用這些服務的需要,GNOME 中使用 hostnamed、localed 和 timedated 提供的 D-Bus API 來更改語言環境、系統設定和時區;需要 udev 來管理連線的裝置; logind、「systemd --user」和journald參與管理gnome-session中的使用者會話; systemd.timer 由 GNOME 時鐘使用。

在基於systemd 的程式集中可以實現的新功能中,有細粒度的權限管理、使用進階功能來確保安全性和管理服務之間的依賴關係、與cgroup 的完全整合、套接字啟動的使用(例如,CUPS 可以僅在存取網路連接埠時啟動),存在用於分析啟動過程的內建工具。

來源: opennet.ru

添加評論