systemd (以前稱為udev)是一個開源系統管理守護程序。換句話說,它在後台運行,並充當基於Linux的操作系統的系統和服務管理器。
兼容LSB 和UNIX System V init腳本
與LSB(Linux Standard Base)和UNIX System V init腳本兼容,systemd使用D-Bus和套接字激活來啟動服務,並提供積極的並行化功能。此外,它還支持系統狀態的恢復和快照,維護自動掛載和掛載點,使用Linux控制組跟踪進程,提供按需啟動守護進程,並實現複雜的基於事務依賴性的服務控制邏輯。 p>
sysvinit的直接替代品
systemd幾乎包含在每個基於內核的Linux操作系統中,它可以用作sysvinit軟件的替代品,也可以用作inetd,acpid,atd,watchdog,cron,syslog和pm的替代品。 -utils守護進程。該程序還附帶一個內置的登錄管理器,稱為systemd-logind,設計為已棄用的ConsoleKit軟件的替代品。它具有各種多項改進。
可以管理網絡配置
自版本209以來,由於networkd守護程序的集成,systemd還可以管理網絡配置。例如,它可以靜態分配IP地址,以及提供基本的橋接配置。
支持的Linux發行版
自2011年問世以來,該項目已被許多流行的Linux發行版採用,包括Arch Linux,Fedora,Gentoo Linux,Mageia,openSUSE,Sabayon Linux,Frugalware Linux,Å ngströ m,以及CoreOS。此外,許多其他強大的Linux操作系統將在其即將發布的版本中採用systemd,例如Ubuntu 14.04 LTS(Trusty Tahr),Debian GNU / Linux 8(Jessie)和Red Hat Enterprise Linux 7。
底線
即使有些人傾向於編寫SystemD,系統d,系統D或系統D,程序的名稱也會拼寫並寫入systemd。它絕對是任何Linux發行版的未來,改變了我們與操作系統交互的方式。
這個版本中的新功能:
- 有些鍵盤帶有變焦蹺蹺板或搖桿,直到現在才有
- 映射到Linux“zoomin / out” hwdb中的密鑰。但是,這些
- 密鑰代碼。他們現在生產
- 向上/向下鍵事件,以便它們可用於滾動。
- *不兼容:systemd-tmpfiles'" f"行改變了行為
- 稍微:之前,如果為此 的行指定了參數
- 類型(即設置了最右邊的列)此字符串已附加到
- 現有文件。這種行為是
- 與文檔說的不同,而不是特別
- 很有用,因為重複的systemd-tmpfiles調用不會是
- 冪等並且不受限制地增長這樣的文件。隨著這個版本
- 行為略有改變,以匹配文檔li>
- 說:如果指定的文件 ,此類型的行只會生效
- 尚不存在,只有這樣才能將參數字符串寫入
- 文件。
- *未來不兼容:在systemd v238中,我們打算稍作改動
- systemd-tmpfiles行為:以前是root用戶擁有的只讀文件
- 總是被排除在文件“老化”之外。算法(即
- 基於 自動清理/ tmp等目錄
- 的atime /修改時間/的ctime)。我們打算放棄此限制和年齡文件
- 默認情況下即使由root和只讀擁有也是如此。這種行為是
- 繼承自舊工具,但已有刪除請求
- 它並不明顯為什麼在第一個 中實施了這個限制
- 地方。如果您了解需要的軟件,請立即說出來
- 此行為,否則我們將刪除v238中的限制。
- * 現在可以理解新的環境變量$ SYSTEMD_OFFLINE
- systemctl。它需要一個布爾參數。如果選中,則systemctl將其視為
- 在“離線”操作操作系統樹,不會嘗試與 交談
- 服務經理。以前,如果 隱式啟用此模式
- chroot()環境,以及這個新的環境變量
- 現在提供明確的控制。
- * .path和.socket單位現在也可以暫時創建。
- 以前只有服務,裝載,自動掛載和計時器單元
- 支持作為臨時單位。 systemd-run工具已更新
- 要公開此新功能,您現在可以使用它來綁定
- 來自 的動態路徑或套接字激活的任意命令
- 命令行。此外,幾乎所有屬性現在都暴露在 中
- 已支持瞬態操作的單元類型。
- * systemd-mount命令獲得了對新的--owner = parameter 的支持
- 採用用戶名,然後解析並包含在uid = 中
- 和gid =要掛載的文件系統的掛載選項字符串。
- *添加了新的單位條件ConditionControlGroupController =
- 檢查特定cgroup控制器是否可用。
- *單位文件,udev的.link文件和systemd-networkd的.netdev和
- .network文件都獲得了對新條件的支持
- ConditionKernelVersion =用於檢查特定內核
- 版本。
- *在systemd-networkd中,.netdev文件中的[IPVLAN]部分獲得
- 支持在Flags =設置中配置設備標誌。在
- 相同的文件,[Tunnel]部分獲得了對配置 的支持
- AllowLocalRemote =。獲得的.network文件中的[Route]部分
- 支持配置InitialCongestionWindow =,
- InitialAdvertisedReceiveWindow =和QuickAck =。 [DHCP]部分現在
- 了解RapidCommit =。
- * systemd-networkd的DHCPv6支持獲得了對Prefix的支持
- 團。
- * sd-bus獲得了對新“watch-bind”的支持。特徵。當這個
- 功能已啟用,可以設置sd_bus連接以連接到
- 創建文件系統中的AF_UNIX套接字。此
- 功能對於編寫 的早期啟動服務很有用
- 啟動後立即自動連接到系統總線,
- 沒有醜陋的基於時間的輪詢。 systemd-networkd和
- systemd-resolved已更新以使用此
- 功能。 busctl在新的 中公開此功能
- - watch-bind =命令行開關。
- * sd-bus現在可選地合成本地“已連接”。信號為
- 完全設置D-Bus連接。此消息反映了
- 已經存在“已斷開連接” 時合成的信號
- 連接已終止。此信號通常很有用,但
- 與“手錶綁定”結合使用時特別方便。特徵
- 如上所述。必須要求合成此消息
- 顯式通過新的API調用sd_bus_set_connected_signal()。在
- 添加了一個新的調用sd_bus_is_ready(),用於檢查
- 是否完全建立連接(即在“已連接”和 之間)
- "斷開"信號)。
- * sd-bus獲得了兩個新調用sd_bus_request_name_async()和
- sd_bus_release_name_async()用於異步註冊總線
- 名。類似的,現在有sd_bus_add_match_async()用於安裝
- 信號異步匹配。所有systemd自己的服務都有
- 已更新以使用這些電話。執行這些操作
- 異步有兩個好處:它可以降低 中死鎖的風險
- 總線服務之間存在循環依賴關係,並加速
- 服務初始化,因為總線的同步點
- 往返旅行。
- * sd-bus獲得了兩個新的調用sd_bus_match_signal()和
- sd_bus_match_signal_async(),類似於sd_bus_add_match()
- 和sd_bus_add_match_async()但不是參加D-Bus比賽
- string將匹配字段作為普通函數參數。
- * sd-bus獲得了兩個新調用sd_bus_set_sender()和
- sd_bus_message_set_sender(),用於設置傳出 的發件人名稱
- 消息(適用於所有外發消息或僅適用於一個特定的
- 的一個)。這些調用僅在 上的直接連接中有用
- 經紀人填補了發件人的連接,
- 覆蓋客戶填寫的任何內容。
- * sd-event獲得了一個可以在所有API上指定的新偽句柄
- 調用“sd_event *”的位置對像是預期的:SD_EVENT_DEFAULT。當
- used this指的是調用 的默認事件循環對象
- 線程。但請注意,這不會隱式分配一個 -
- 必須先使用sd_event_default()完成。類似地
- sd-bus獲得了三個新的偽句柄SD_BUS_DEFAULT,
- 可用於引用的SD_BUS_DEFAULT_USER,SD_BUS_DEFAULT_SYSTEM
- 到指定類型的調用線程的默認總線。這裡
- 這也不會隱式分配總線連接對象,這個
- 必須事先與sd_bus_default()和朋友一起完成。
- * sd-event獲得了一個新的通話對
- sd_event_source_ {得到|集} _io_fd_own()。這可用於請求
- 自動關閉文件描述符和IO事件源監視
- 當事件源被銷毀時。
- * systemd-networkd獲得了對原生配置WireGuard的支持
- 連接。
- *在以前的版本中,systemd合成了 的用戶記錄
- "人" (UID 65534)和“root” (UID 0)nss-systemd和 中的用戶
- 內部。為了簡化 的分發範圍重命名
- "人"用戶(就像在Fedora中計劃:nfsnobody - > nobody),
- 添加了新的過渡標誌文件:if
- / etc / systemd / dont-synthesize-nobody存在合成65534
- 系統代碼庫中的用戶和組記錄已禁用。
- * systemd-notify獲得了一個新的--uid =選項來選擇源
- 用於發送到服務的通知消息的用戶/ UID
- 管理器。
- * journalctl獲得了一個新的--grep =選項,僅列出 中的條目
- 消息與特定模式匹配。默認匹配是大小寫
- 不敏感,區分大小寫
- 否則。選項--case-sensitive = yes | no可用於覆蓋
- 指定區分大小寫或不區分大小寫。
- *現在有一個“systemd-analyze service-watchdogs”打印命令
- 服務運行時監視程序的當前狀態,以及(可選)
- 如果給出 ,則在系統範圍內啟用或禁用每服務監視程序
- 布爾參數(即您在WatchdogSec中配置的概念=),
- 調試目的。還有一個內核命令行選項
- systemd.service_watchdogs =用於控制相同的內容。
- *兩個新的“日誌級別”和“log-target” systemd-analyze的選項是
- 添加合併現已棄用的get-log-level,set-log-level和
- get-log-target,set-log-target對。不推薦使用的選項仍然是
- 了解向後兼容性。這兩個新選項打印
- 當沒有給出參數時的當前值,並在 時設置它們
- level / target作為參數。
- * sysusers.d的“u”行現在可選擇接受UID和GID
- 規範,以“:”分隔。字符,以便創建用戶
- 其中UID和GID不匹配。
任何主要桌面都無法識別
每次運行systemd-tmpfiles時
檢測到
無論如何,
如果模式為小寫,則
版本238中的新功能:
- 有些鍵盤帶有變焦蹺蹺板或搖桿,直到現在才有
- 映射到Linux“zoomin / out” hwdb中的密鑰。但是,這些
- 密鑰代碼。他們現在生產
- 向上/向下鍵事件,以便它們可用於滾動。
- *不兼容:systemd-tmpfiles'" f"行改變了行為
- 稍微:之前,如果為此 的行指定了參數
- 類型(即設置了最右邊的列)此字符串已附加到
- 現有文件。這種行為是
- 與文檔說的不同,而不是特別
- 很有用,因為重複的systemd-tmpfiles調用不會是
- 冪等並且不受限制地增長這樣的文件。隨著這個版本
- 行為略有改變,以匹配文檔li>
- 說:如果指定的文件 ,此類型的行只會生效
- 尚不存在,只有這樣才能將參數字符串寫入
- 文件。
- *未來不兼容:在systemd v238中,我們打算稍作改動
- systemd-tmpfiles行為:以前是root用戶擁有的只讀文件
- 總是被排除在文件“老化”之外。算法(即
- 基於 自動清理/ tmp等目錄
- 的atime /修改時間/的ctime)。我們打算放棄此限制和年齡文件
- 默認情況下即使由root和只讀擁有也是如此。這種行為是
- 繼承自舊工具,但已有刪除請求
- 它並不明顯為什麼在第一個 中實施了這個限制
- 地方。如果您了解需要的軟件,請立即說出來
- 此行為,否則我們將刪除v238中的限制。
- * 現在可以理解新的環境變量$ SYSTEMD_OFFLINE
- systemctl。它需要一個布爾參數。如果選中,則systemctl將其視為
- 在“離線”操作操作系統樹,不會嘗試與 交談
- 服務經理。以前,如果 隱式啟用此模式
- chroot()環境,以及這個新的環境變量
- 現在提供明確的控制。
- * .path和.socket單位現在也可以暫時創建。
- 以前只有服務,裝載,自動掛載和計時器單元
- 支持作為臨時單位。 systemd-run工具已更新
- 要公開此新功能,您現在可以使用它來綁定
- 來自 的動態路徑或套接字激活的任意命令
- 命令行。此外,幾乎所有屬性現在都暴露在 中
- 已支持瞬態操作的單元類型。
- * systemd-mount命令獲得了對新的--owner = parameter 的支持
- 採用用戶名,然後解析並包含在uid = 中
- 和gid =要掛載的文件系統的掛載選項字符串。
- *添加了新的單位條件ConditionControlGroupController =
- 檢查特定cgroup控制器是否可用。
- *單位文件,udev的.link文件和systemd-networkd的.netdev和
- .network文件都獲得了對新條件的支持
- ConditionKernelVersion =用於檢查特定內核
- 版本。
- *在systemd-networkd中,.netdev文件中的[IPVLAN]部分獲得
- 支持在Flags =設置中配置設備標誌。在
- 相同的文件,[Tunnel]部分獲得了對配置 的支持
- AllowLocalRemote =。獲得的.network文件中的[Route]部分
- 支持配置InitialCongestionWindow =,
- InitialAdvertisedReceiveWindow =和QuickAck =。 [DHCP]部分現在
- 了解RapidCommit =。
- * systemd-networkd的DHCPv6支持獲得了對Prefix的支持
- 團。
- * sd-bus獲得了對新“watch-bind”的支持。特徵。當這個
- 功能已啟用,可以設置sd_bus連接以連接到
- 創建文件系統中的AF_UNIX套接字。此
- 功能對於編寫 的早期啟動服務很有用
- 啟動後立即自動連接到系統總線,
- 沒有醜陋的基於時間的輪詢。 systemd-networkd和
- systemd-resolved已更新以使用此
- 功能。 busctl在新的 中公開此功能
- - watch-bind =命令行開關。
- * sd-bus現在可選地合成本地“已連接”。信號為
- 完全設置D-Bus連接。此消息反映了
- 已經存在“已斷開連接” 時合成的信號
- 連接已終止。此信號通常很有用,但
- 與“手錶綁定”結合使用時特別方便。特徵
- 如上所述。必須要求合成此消息
- 顯式通過新的API調用sd_bus_set_connected_signal()。在
- 添加了一個新的調用sd_bus_is_ready(),用於檢查
- 是否完全建立連接(即在“已連接”和 之間)
- "斷開"信號)。
- * sd-bus獲得了兩個新調用sd_bus_request_name_async()和
- sd_bus_release_name_async()用於異步註冊總線
- 名。類似的,現在有sd_bus_add_match_async()用於安裝
- 信號異步匹配。所有systemd自己的服務都有
- 已更新以使用這些電話。執行這些操作
- 異步有兩個好處:它可以降低 中死鎖的風險
- 總線服務之間存在循環依賴關係,並加速
- 服務初始化,因為總線的同步點
- 往返旅行。
- * sd-bus獲得了兩個新的調用sd_bus_match_signal()和
- sd_bus_match_signal_async(),類似於sd_bus_add_match()
- 和sd_bus_add_match_async()但不是參加D-Bus比賽
- string將匹配字段作為普通函數參數。
- * sd-bus獲得了兩個新調用sd_bus_set_sender()和
- sd_bus_message_set_sender(),用於設置傳出 的發件人名稱
- 消息(適用於所有外發消息或僅適用於一個特定的
- 的一個)。這些調用僅在 上的直接連接中有用
- 經紀人填補了發件人的連接,
- 覆蓋客戶填寫的任何內容。
- * sd-event獲得了一個可以在所有API上指定的新偽句柄
- 調用“sd_event *”的位置對像是預期的:SD_EVENT_DEFAULT。當
- used this指的是調用 的默認事件循環對象
- 線程。但請注意,這不會隱式分配一個 -
- 必須先使用sd_event_default()完成。類似地
- sd-bus獲得了三個新的偽句柄SD_BUS_DEFAULT,
- 可用於引用的SD_BUS_DEFAULT_USER,SD_BUS_DEFAULT_SYSTEM
- 到指定類型的調用線程的默認總線。這裡
- 這也不會隱式分配總線連接對象,這個
- 必須事先與sd_bus_default()和朋友一起完成。
- * sd-event獲得了一個新的通話對
- sd_event_source_ {得到|集} _io_fd_own()。這可用於請求
- 自動關閉文件描述符和IO事件源監視
- 當事件源被銷毀時。
- * systemd-networkd獲得了對原生配置WireGuard的支持
- 連接。
- *在以前的版本中,systemd合成了 的用戶記錄
- "人" (UID 65534)和“root” (UID 0)nss-systemd和 中的用戶
- 內部。為了簡化 的分發範圍重命名
- "人"用戶(就像在Fedora中計劃:nfsnobody - > nobody),
- 添加了新的過渡標誌文件:if
- / etc / systemd / dont-synthesize-nobody存在合成65534
- 系統代碼庫中的用戶和組記錄已禁用。
- * systemd-notify獲得了一個新的--uid =選項來選擇源
- 用於發送到服務的通知消息的用戶/ UID
- 管理器。
- * journalctl獲得了一個新的--grep =選項,僅列出 中的條目
- 消息與特定模式匹配。默認匹配是大小寫
- 不敏感,區分大小寫
- 否則。選項--case-sensitive = yes | no可用於覆蓋
- 指定區分大小寫或不區分大小寫。
- *現在有一個“systemd-analyze service-watchdogs”打印命令
- 服務運行時監視程序的當前狀態,以及(可選)
- 如果給出 ,則在系統範圍內啟用或禁用每服務監視程序
- 布爾參數(即您在WatchdogSec中配置的概念=),
- 調試目的。還有一個內核命令行選項
- systemd.service_watchdogs =用於控制相同的內容。
- *兩個新的“日誌級別”和“log-target” systemd-analyze的選項是
- 添加合併現已棄用的get-log-level,set-log-level和
- get-log-target,set-log-target對。不推薦使用的選項仍然是
- 了解向後兼容性。這兩個新選項打印
- 當沒有給出參數時的當前值,並在 時設置它們
- level / target作為參數。
- * sysusers.d的“u”行現在可選擇接受UID和GID
- 規範,以“:”分隔。字符,以便創建用戶
- 其中UID和GID不匹配。
任何主要桌面都無法識別
每次運行systemd-tmpfiles時
檢測到
無論如何,
如果模式為小寫,則
版本中的新功能:
- 介紹了bond.ko內核模塊的modprobe.d / drop-in
- 已擴展為也設置了dummy.ko模塊選項
- numdummies = 0,阻止內核自動創建
- dummy0。現在必須明確創建所有虛擬接口。
- *配置文件中的未知'%'說明符現在被拒絕。此
- 適用於單位和tmpfiles.d配置。任何百分比字符
- 後面跟著一個不應該是 的字母或數字
- 解釋為說明符的開頭應該由 轉義
- 加倍(“%%”)。 (因此仍然接受“size = 5%”,以及
- “size = 5%,foo = bar”,但不是“LABEL = x%y%z”。因為%y和%z不是
- 今天有效的說明者。)
- * systemd-resolved現在維護一個新的動態
- /run/systemd/resolve/stub-resolv.conf兼容性文件。這是
- 建議讓/etc/resolv.conf成為符號鏈接。這個檔案
- 指向systemd-resolved存根DNS 127.0.0.53解析程序和
- 包括動態獲取的搜索域,實現更正確的
- 繞過本地DNS API(如NSS)的軟件進行DNS解析。
- *“uaccess” udev標記已從/ dev / kvm和 中刪除
- 的/ dev / DRI / renderD *。這些設備現在具有 的0666權限
- 默認(但可以在構建時更改)。的/ dev / DRI / renderD *
- 現在將由“渲染”所有。與/ dev / kfd一起組。
- *" DynamicUser = yes"已啟用systemd-timesyncd.service,
- systemd-journal-gatewayd.service和
- systemd-軸頸upload.service。這意味著“nss-systemd”必須是
- 在/etc/nsswitch.conf中啟用,以確保分配給這些 的UID
- 服務得到妥善解決。
- *在/ etc / fstab中,現在可以理解兩個新的掛載選項:
- x-systemd.makefs和x-systemd.growfs。前者俱有 的效果
- 配置的文件系統在安裝之前已格式化,
- 後者將文件系統的大小調整為整個塊設備大小
- 安裝後(即文件系統小於 )
- 它駐留的分區,它已經成長)。這類似於fsck
- 邏輯,並在.service和 中引入systemd-makefs
- systemd-growfs在.service根據需要,類似於
- systemd-fsck at .service。目前僅在ext4 上支持調整大小
- 和btrfs。
- *在systemd-networkd中,IPv6 RA邏輯現在可以選擇宣布
- DNS服務器和域信息。
- *支持加密分區的LUKS2磁盤格式
- 已添加。這需要在編譯期間使用libcryptsetup2和
- 運行時。
- * systemd --user實例現在將發出“準備就緒”信號。什麼時候
- basic.target單位,而不是運行隊列
- 第一次空著。
- *現在也支持帶有用戶配置的Tmpfiles.d。
- systemd-tmpfiles獲得了一個新的 - 用戶開關,以及放在 中的片段
- 〜/ .config / user-tmpfiles.d /和相應的目錄將是
- 由systemd-tmpfiles執行 - 在新的 中運行的用戶
- systemd-tmpfiles-setup.service和systemd-tmpfiles-clean.service
- 在用戶會話中運行。
- *單元文件和tmpfiles.d片段學習了三個新的%說明符:
- %S解析為頂級狀態目錄(系統的/ var / lib)
- 實例,用戶實例的$ XDG_CONFIG_HOME),%C解析為
- 頂級緩存目錄(系統實例的/ var / cache,
- 用戶實例的$ XDG_CACHE_HOME),%L解析為頂級
- logs目錄(系統實例的/ var / log,
- 用戶實例的$ XDG_CONFIG_HOME / log /)。這符合
- 現有的%t說明符,解析為頂級運行時
- 目錄(/運行系統實例,$ XDG_RUNTIME_DIR代表
- 用戶實例)。
- * journalctl學習了一個新參數--output-fields =用於限制
- 以詳細和JSON輸出模式輸出的日誌字段集。
- * systemd-timesyncd的配置文件獲得了新選項
- RootDistanceMaxSec =用於設置服務器的最大根距離
- 它將使用,以及新選項PollIntervalMinSec =和
- PollIntervalMaxSec =調整最小和最大輪詢間隔。
- * bootctl獲得了一個新命令“list”列出所有可用的啟動
- 遵循引導加載程序規範的系統上的菜單項。
- * systemctl獲得了一個新的--Dry-run開關,顯示了將要完成的工作
- 而不是這樣做,目前由關閉和 支持
- 睡眠動詞。
- * ConditionSecurity =現在可以檢測到TOMOYO安全模塊。
- *單位文件[安裝]部分現在也在單位輸入 中受到尊重
- 的文件。這適用於/ usr / lib /. 下的插件
- * systemd-firstboot現在也可以設置初始鍵盤映射。
- * Udev“已更改”作為systemd公開的設備的事件
- 。設備單元現在傳播到 中指定的單位
- ReloadPropagatedFrom =作為重新加載請求。
- *如果udev設備具有包含systemd的SYSTEMD_WANTS =屬性
- 單位模板名稱(即'foobar at .service', 形式的名稱
- 沒有'@'和 - '''之間的實例組件,然後
- 設備的轉義sysfs路徑自動用作
- 實例。
- * SystemCallFilter =已擴展單元文件,以便“errno”
- 。例如:
- SystemCallFilter =〜UNAME:EILSEQ
- * cgroup委託邏輯已大幅更新。代表=
- 現在可選擇獲取控制器列表(而不是布爾值,如
- 之前),它列出了至少委派控制器。
- *聯網的DHCPv6客戶端現在實現了FQDN選項(RFC 4704)。
- *新的LogLevelMax =設置配置任何 的最大日誌級別
- 服務流程可以登錄(即任何 更少的服務
- 自動刪除指定的優先級。一個新的
- LogExtraFields =設置允許配置其他日記
- 要附加到任何單位 生成的所有日誌記錄的字段
- 過程。
- *新的StandardInputData =和StandardInputText =設置以及
- 新選項StandardInput = data可用於配置textual或
- 二進制數據,應通過 傳遞給執行的服務流程
- 標準輸入,在單位文件中以內嵌編碼。
- * StandardInput =,StandardOutput =和StandardError =現在可用於
- 使用 直接連接已執行進程的stdin / stdout / stderr
- 文件或AF_UNIX套接字。選項。
- *添加了新的單元文件選項CollectMode =,允許
- 調整單位的垃圾收集邏輯。它可能用於
- 告訴systemd垃圾收集自動失敗的單位
- (通常只有成功退出的GC單位)。 systemd運行
- 和systemd-mount使用新的-G選項公開此新功能。
- *" machinectl bind"現在可以用來綁定mount非目錄
- (即regularfiles,devices,fifos,socket)。
- * systemd-analyze獲得了一個新的動詞“日曆”用於驗證和
- 測試用於OnCalendar = in timer 的日曆時間規範
- 單元。除了驗證表達式,它還會計算下一個
- 指定表達式的時間。
- *除了預先存在的FailureAction =單位文件設置
- 現在有SuccessAction =,用於配置關機操作
- 單元成功完成時執行。這在 中很有用
- 特定內部容器,應在某些工作量後終止
- 已經完成。此外,現在所有單位都支持這兩個選項
- 類型,而不僅僅是服務。
- * networkds的IP規則支持獲得了兩個新選項
- IncomingInterface =和OutgoingInterface =用於配置傳入
- 和配置規則的出接口。 systemd-networkd也
- 獲得對“vxcan”的支持網絡設備。
- * networkd獲得了一個新設置RequiredForOnline =,取一個
- 布爾值。如果設置,systemd-wait-online將考慮它
- 確定係統啟動時,否則會忽略
- 用於此目的的界面。
- * sd_notify()協議獲得了對新操作的支持:使用
- FDSTOREREMOVE = 1個文件描述符可能會從每個服務中刪除
- 再次存儲,在移除POLLHUP或POLLERR之前
- 反正。
- *新文檔UIDS-GIDS.md已添加到源樹中,
- 記錄了UID / GID範圍和分配假設以及
- systemd的要求。
- *現在可以通過 配置看門狗設備PID 1 ping
- WatchdogDevice =配置文件設置,或通過設置
- systemd.watchdog_service =內核命令行選項。
- * systemd-resolved獲得了對 註冊DNS-SD服務的支持
- 使用MulticastDNS的本地網絡。服務可能是
- 通過放入/ etc / systemd / dnssd /中的.dnssd文件進行註冊(或
- / run,/ usr / lib下的相同目錄,或通過其D-Bus API。
- * sd_notify()協議現在可以使用EXTEND_TIMEOUT_USEC = microsecond
- 延長有效開始,運行時間和停止時間。該服務必須
- 繼續在指定的時間段內發送EXTEND_TIMEOUT_USEC
- 阻止服務經理將服務作為timedout。
- * systemd-resolved的DNSSEC支持獲得了對RFC 8080的支持
- (Ed25519鍵和簽名)。
- * systemd-resolve命令行工具獲得了一組新的選項
- - set-dns =, - set-domain =, - set-llmnr =, - set-mdns =, - set-dnssec =,
- - set-nta =和--revert配置每個接口的DNS配置
- 在運行時動態生成。它對推送DNS信息非常有用
- 進入systemd-resolved,從DNS鉤子腳本解析各種界面
- 管理軟件支持(例如pppd)。
- * systemd-nspawn獲得了一個新的--network-namespace-path =命令行
- 選項,可用於使容器加入現有的
- 網絡名稱空間,通過指定“netns”的路徑。文件。
v235中的
/ li / fstab中的
已達到
可以為每個系統調用單獨指定
使用新的“file:”文件系統中的
版本234中的新功能:
- 除了Automake之外,現在支持Meson作為構建系統。我們計劃在下一個版本中刪除Automake,以便Meson成為我們獨有的構建系統。因此,請在下游包裝中開始使用Meson構建系統。有很多關於如何使用Meson的文檔,非常簡短的摘要:
- ./ autogen.sh&& ./configure&&製造&& sudo make install
- 變為:
- meson build&&忍者-C build&& sudo ninja -C build install
- 單元文件獲得了對新JobRunningTimeoutUSec =設置的支持,該設置允許在作業運行時配置超時。這對於設置.device單位的作業超時特別有用。
- 單元文件獲得了兩個新選項ConditionUser =和ConditionGroup =用於根據運行systemd用戶實例的用戶/組的標識來條件化單元。
- systemd-networkd現在了解.network文件的[VXLAN]部分中的新FlowLabel =設置,以及[Bridge]中的Priority =,GVRP = + MVRP = + LooseBinding = + ReorderHeader = in [VLAN]和[Route]中的GatewayOnlink = + IPv6Preference = + Protocol =。它還獲得了對GENEVE鏈接和IPv6地址標籤配置的支持。 [Network]部分獲得了新的IPv6ProxyNDP =設置。
- .link文件現在了解新的Port =設置。
- systemd-networkd的DHCP支持獲得了對DHCP選項119(域搜索列表)的支持。
- systemd-networkd使用路由器廣告協議獲得了對IPv6地址範圍的支持。新的.network配置部分[IPv6Prefix]可用於配置要服務的範圍。這是基於RA的新的,最小的本機服務器實現來實現的。
- journalctl的--output = switch獲得了對時間戳顯示為精確ISO日期值的模式的新參數“short-iso-precise”的支持。
- systemd-udevd的“net_id”內置現在可以從IBM PowerVM VIO設備和ACPI平台設備生成穩定的網絡接口名稱。
- 現在可以使用新的MulticastDNS =配置文件選項顯式啟用/禁用systemd-resolved中的MulticastDNS支持。
- systemd-resolved現在可以選擇使用libidn2而不是libidn來處理國際化域名。對libidn2的支持應該被認為是實驗性的,默認情況下不應該啟用。
- “machinectl pull-tar”及相關調用現在可以使用SUSE樣式的.sha256校驗和文件驗證下載的圖像,此外還有現有的使用Ubuntu樣式的SHA256SUMS文件進行驗證的支持。
- sd-bus獲得了對新sd_bus_message_appendv()調用的支持,該調用是va_list,相當於sd_bus_message_append()。
- sd-boot獲得了使用SHIM / MOK驗證圖像的支持。
- SMACK代碼學習了對“onlycap”的支持。
- systemd-mount --umount現在可以更明智地確定如何在安裝或設備路徑下正確卸載設備。
- 刪除了與systemd-resolved通信失敗時調用libnss_dns作為libnss_resolve回退的代碼。這個後備是多餘的,並且干擾了[!UNAVAIL = return]後綴。有關建議的配置,請參閱nss-resolve(8)。
- 現在可以重新啟動systemd-logind而不會丟失狀態。它使用FDSTORE =機制在系統管理器中存儲它管理的設備的文件描述符。請注意,可能需要對其他組件進行進一步更改才能使用此功能(例如,Xorg具有監聽systemd-logind停止的代碼,並在logind停止或重新啟動時終止自身,以避免使用過時的文件描述符進行圖形化設備,現在適得其反,必須恢復,以便重新啟動systemd-logind是安全的。請參閱https://cgit.freedesktop.org/xorg/xserver/commit/?id=dc48bd653c7e101。)
- 使用環境變量KERNEL_INSTALL_MACHINE_ID調用所有內核安裝插件,該變量設置為/ etc / machine-id給出的計算機ID。如果文件丟失或為空,則變量為空,BOOT_DIR_ABS是臨時目錄的路徑,在所有插件退出後刪除該目錄。因此,如果KERNEL_INSTALL_MACHINE_ID為空,則所有插件都不應該在BOOT_DIR_ABS中放置任何內容。
<強>要求強>:
- 啟用CONFIG_HOTPLUG需要2.6 Linux內核或更高版本才能運行。
- 建議您也安裝Linux Hotplug腳本,但沒有必要使其正常工作。
評論沒有發現