繼續可預測的開發週期, 經過4個月的開發後發布 新版本的發布 248。
在這個新版本中e 提供對圖像擴展目錄的支持 系統,實用程序系統密碼卷,以及 能夠使用 TPM2 芯片和 FIDO2 令牌解鎖 LUKS2、在隔離的 IPC 標識符空間中啟動單元等等。
systemd 248的主要新功能
在這個新版本中 實施了系統擴展圖像的概念, 它可用於擴展目錄層次結構並在運行時添加其他文件,即使指定的目錄以只讀方式安裝也是如此。 當安裝系統擴展映像時,其內容將使用 OverlayFS 覆蓋在層次結構中。
另一個突出的變化是提出了一個新的實用程序 systemd-sysext 來連接、斷開連接、查看和更新圖像 系統擴展,加上 systemd-sysext.service 服務已添加到啟動時自動掛載已安裝的映像。 對於單元,實現了 ExtensionImages 設置,可用於將系統擴展映像鏈接到各個隔離服務的 FS 命名空間層次結構。
systemd-cryptsetup 添加了從 PKCS#11 令牌中提取 URI 的功能 以及 JSON 格式的 LUKS2 元數據標頭中的加密密鑰,其中 允許將加密設備的公開信息集成到設備本身中 另外,不涉及外部文件 提供對使用 TPM2 芯片解鎖 LUKS2 加密分區的支持 除了之前支持的 PKCS# 2 令牌之外,還包括 FIDO11 令牌。 libfido2 的加載是通過 dlopen() 完成的,即動態檢查可用性,而不是作為硬編碼的依賴項。
另外,在 systemd 248 中 systemd-networkd 添加了對 BATMAN 網格協議的支持 (“移動自組織網絡的更好方法”),其中 允許創建去中心化網絡,其中的每個節點都通過相鄰節點連接。
還強調了 內存不足早期響應機制的實現已經穩定 在 systemd-oomd 中,以及 DefaultMemoryPressureDurationSec 選項,用於設置在影響驅動器之前等待資源釋放的時間。 Systemd-oomd 使用 PSI(壓力失速信息)內核子系統和 允許檢測由於缺乏資源而出現的延遲 並在系統尚未處於臨界狀態且未開始集中修剪緩存並將數據移至交換分區時選擇性地關閉資源密集型進程。
添加 PrivateIPC 參數該 允許在單一文件中配置 IPC 沙箱中進程的啟動 有自己的標識符和消息隊列。 要將驅動器連接到已創建的 IPC 標識符空間,提供了 IPCNamespacePath 選項。
而 對於可用內核,已實現自動系統調用表生成 用於過濾器 seccomp。
, 其他突出的變化:
- systemd-repart 實用程序添加了使用 TPM2 芯片啟用加密分區的功能,例如,在首次啟動時創建加密的 /var 分區。
- 添加了 systemd-cryptenroll 實用程序,用於將 TPM2、FIDO2 和 PKCS# 11 令牌綁定到 LUKS 分區,以及取消固定和查看令牌、綁定備用密鑰以及設置訪問密碼。
- 添加了 ExecPaths 和 NoExecPaths 設置,以將 noexec 標誌應用於文件系統的特定部分。
- 添加了內核命令行參數“root=tmpfs”,該參數允許使用 Tmpfs 將根分區掛載到位於 RAM 中的臨時存儲。
- 現在可以通過 system.conf 或 user.conf 中的新 ManagerEnvironment 選項來配置具有公開環境變量的塊,而不僅僅是通過內核命令行和單元文件配置。
- 在編譯時,可以使用 fexecve() 系統調用而不是 execve() 來啟動進程,以減少檢查安全上下文和應用它之間的延遲。