2 新機能および変更点
特に明示されていないかぎり、このリリースのOracle Linux 9で導入された次の新機能、主な拡張機能、バグ修正およびその他の変更は、x86_64と64ビットArm (aarch64)の両方のプラットフォームに適用されます。
オペレーティング・システムおよびソフトウェア管理
このOracle Linux 9リリースでは、OSおよびソフトウェア管理に関連する次の機能、拡張機能、および変更が導入されています。
DNFにoffline-upgradeコマンドを追加
Oracle Linuxに、DNF system-upgrade
プラグインのdnf offline-upgrade
コマンドが追加されました。リブートの後、パッケージ更新の影響を受ける可能性のあるライブラリがロードされる前に、パッケージ・インストールを実行することにより、アップグレード時のシステムを保護するには、オフライン・アップグレードが役立ちます。
この機能には、--advisory
、--security
、--bugfix
などのセキュリティ・アドバイザ・フィルタを適用して、パッケージおよびその依存関係のダウンロードを、指定したアドバイザに限定するオプションが含まれています。
インフラストラクチャ・サービス
このOracle Linux 9リリースでは、インフラストラクチャ・サービスに関連する次の機能、拡張機能および変更が導入されています。
chronyをバージョン4.3に更新
chrony
パッケージがバージョン4.3に更新されました。主な機能および変更点は次のとおりです。
- ネットワーク・タイム・プロトコル(NTP)測定の長期分位数ベースのフィルタリング。これを有効にするには、
maxdelayquant
オプションをpool
、server
またはpeer
ディレクティブに追加します。 - 選択ログで、ソースの
chronyd
選択に関する詳細情報を提供します。これを有効にするには、selection
オプションをlog
ディレクティブに追加します。 - ハードウェア・タイムスタンプおよびPulse-Per-Secondハードウェア・クロック(PHC)参照クロックを使用する場合の同期の安定性が向上しました。
- 温度補償水晶発振器(TCXO)、オーブン制御水晶発振器(OCXO)、原子時計など、フリーランニング安定クロックを使用したシステム・クロックの安定化。
- 最大ポーリング・レートが1秒当たり128メッセージに増えました。
FRRoutingをバージョン8.3.1に更新
frr
パッケージがバージョン8.3.1に更新されました。主な機能および変更点は次のとおりです。
- FRRデーモンを管理するための新しいコマンド:
show thread timers
はFRRのタイマー・データを表示します。 -
新しいボーダー・ゲートウェイ・プロトコル(BGP)関連コマンド:
set as-path replace
: BGPルートの自律システム(AS)パス属性を新しい値に置き換えます。match peer
: BGPルート・マップの構成時に特定のBGPピアまたはグループを照合します。ead-es-frag evi-limit
: EVPNで指定した期間内に送信できるEVIフラグメントごとのイーサネットA-Dの数に制限を設定します。match evpn route-type
: ルート・ターゲット、ルート識別子、MAC/IPルートなど、特定のタイプのEVPNルートに対するアクションを指定するために使用します。
-
プロトコル非依存型マルチキャスト(PIM)デーモンの新しいコマンド:
debug igmp trace detail
: 詳細なトレースを使用したインターネット・グループ管理プロトコル(IGMP)メッセージのデバッグを有効にします。ip pim passive
: インタフェースをパッシブに設定し、PIMメッセージの送信を無効にします。
- Open Shortest Path First (OSPF)プロトコルの新しいコマンド:
show ip ospf reachable-routers
は、コマンドの実行時に到達可能なルーターのリストを表示します。 - ECMP、EVPNおよびMPLSのステータスを含む、
show zebra
コマンドの新しい出力。
詳細は、https://github.com/FRRouting/frr/releases?q=8.3.1&expanded=trueを参照してください。
FRRのSELinuxルールは、新機能および変更がリリースされる際にSELinuxとの統合を改善するためにfrr
パッケージに追加されました。
Very Secure FTP Daemonをバージョン3.0.5に更新
Very Secure FTP Daemon (vsftpd
)がバージョン3.0.5に更新されました。主な機能および変更点は次のとおりです。
- セキュアな接続にTLSバージョン1.2以降を使用するためのデフォルトの要件。
- 最新のFileZillaクライアントで使用するための互換性の更新。
バージョン2.15に更新されたpowertop
powertop
パッケージがバージョン2.15に更新されました。主な機能および変更点は次のとおりです。
- 一般的な修正と安定性の向上
- RyzenプロセッサおよびKaby Lakeプラットフォームとの互換性の向上
- Lake Field、Alder Lake N、Raptor Lakeのプラットフォーム機能の有効化
- Ice Lake NNPIおよびMeteor Lakeのモバイルおよびデスクトップ機能の有効化
systemd-sysusers統合のパッケージ更新
systemd-sysusers
ユーティリティは、パッケージのインストール時にシステム・ユーザーおよびグループを作成し、パッケージの削除時にそれらを削除します。systemd-sysusers
ユーティリティと統合するために、複数のパッケージが更新されました。更新されたパッケージは、次のとおりです。
-
chrony
-
dhcp
-
radvd
-
squid
周波数同期用のsynce4lパッケージを追加
synce4l
パッケージで、PTPクロックにより物理レイヤーで周波数を正確に同期するのに役立つハードウェア機能であるSyncE (同期イーサネット)を含むデバイスを管理します。SyncEは、特定のネットワーク・インタフェース・カード(NIC)およびネットワーク・スイッチで使用でき、通信会社の無線アクセスネットワーク(RAN)アプリケーションで正確な時間同期を実現して、通信効率を向上するのに役立ちます。詳細は、https://github.com/intel/synce4lを参照してください。
TuneDをバージョン2.20.0に更新
tuned
パッケージがバージョン2.20.0に更新されました。主な機能および変更点は次のとおりです。
- 実行時にプラグインインスタンス間でデバイスを移動しやすくするためのAPI更新。
-
plugin_cpu
モジュールの更新:pm_qos_resume_latency_us
機能は、各CPUがアイドル状態からアクティブ状態に遷移するために許容される最大時間を制限します。Intel® _pstate
スケーリング・ドライバは、使用シナリオに基づいてシステムの電源管理をチューニングするためのスケーリング・アルゴリズムを提供します。
バージョン4.17.5に更新更新されたsamba
samba
パッケージがアップストリーム・バージョン4.17.5にアップグレードされました。主な機能および変更点は次のとおりです。
- メタデータのワークロードが高い場合のサーバー・メッセージ・ブロック(SMB)サーバーのセキュリティ関連のパフォーマンスの向上。
- ステータス情報をJSON形式で表示するための、smbstatusコマンドへの
--JSON
オプションの追加。 - Samba構成をPythonプログラムから直接読み書きしやすくするための、
smbconf
Python APIへのsamba.smb.conf
およびsamba.samba3.smb.conf
モジュールの追加。
サーバー・メッセージ・ブロック・バージョン1 (SMB1)プロトコルは、Samba 4.11以降では非推奨です。SMB1は、今後のリリースで削除される予定です。Sambaを起動する前に、データベース・ファイルをバックアップしてください。smbd
、nmbd
またはwinbind
サービスが起動されると、Sambaによってそのtdb
データベース・ファイルが自動的に更新されます。tdb
データベース・ファイルのダウングレードはサポートされていません。Sambaを更新した後、testparm
ユーティリティを使用して/etc/samba/smb.conf
ファイルを検証します。
セキュリティ
このOracle Linux 9リリースでは、セキュリティに関連する次の機能、拡張機能および変更が導入されています。
バージョン4.9に更新されたLibreswan
次の機能が追加されました:
-
addconn
およびwhack
に対する{left,right}pubkey=
-
Cryptoに対するKDFセルフテスト
-
seccomp
のsyscall許可リストの更新 -
ECDSA公開キーに対するホストの表示の認証キー(
showhostkey
)のサポート、およびPEMでエンコードされた公開キーの--PEM
オプションによる表示 - インターネット・キー交換プロトコル・バージョン2 (IKEv2)および
pluto
IKEデーモンの新機能
OpenSSLをバージョン3.0.7に更新
OpenSSLパッケージがバージョン3.0.7に更新されました。主な機能および変更点は次のとおりです。
- 様々なバグ修正および改善
- デフォルトのプロバイダに、
RIPEMD160
ハッシュ関数が追加されました。
SELinuxユーザー空間パッケージをバージョン3.5に更新
SELinuxユーザー空間パッケージがバージョン3.5に更新されました。影響を受けるパッケージは、libselinux
、libsepol
、libsemanage
、checkpolicy
、mcstrans
およびpolicycoreutils
です。主な機能および変更点は次のとおりです。
-
sepolicy
ユーティリティに、PythonおよびGTKの更新が複数含まれています。また、マニュアル・ページも更新され、欠落していた説明がいくつか追加されました。 libselinux
が改善され、PCRE2
ライブラリによるヒープ・メモリーの使用量が削減されました。-
libsepol
パッケージが更新され、ポリシーの検証がより厳格になり、カーネル・ポリシーのアクセス・ベクター(AV)ルールの属性が拒否されるようになりました。 fixfiles
スクリプトは、SIGINT
シグナルの一時バインド・マウントをアンマウントしますsemodule
の--rebuild-if-modules-changed
が、--refresh
オプションに置き換わりました。- バグ修正と、エラーおよび説明(翻訳修正を含む)の改善。
バージョン1.3.7に更新されたOpenSCAP
OpenSCAPパッケージがバージョン1.3.7に更新されました。主な機能および変更点は次のとおりです。
- OVALフィルタの処理時のエラーが修正されました。
- XPathが一致しない場合に、無効な空の
xmlfilecontent
アイテムをOpenSCAPが出力しなくなりました。 使用可能なメモリーの確認に失敗しました
というエラーが削除されました。
バージョン0.1.66に更新されたSCAPセキュリティ・ガイド
SCAPセキュリティ・ガイド(SSG)パッケージがバージョン0.1.66に更新されました。主な機能および変更点は次のとおりです。
accounts_passwords_pam_faillock_audit
の導入によるルールaccount_passwords_pam_faillock_audit
の非推奨-
よりセキュアな構成を取得するための、Oracle Linux 9の
stig
およびstig_gui
ドラフト・プロファイルの更新。
Rsyslogを更新
RSyslogが更新され、いくつかの変更が追加されました。主な機能および変更点は次のとおりです。
- TLS暗号化リモート・ロギングの追加の認証局(CA)証明書のリストを指定するために使用できる新しい
NetstreamDriverCaExtraFiles
ディレクティブ。新しいディレクティブは、ossl
(OpenSSL) Rsyslogネットワーク・ストリーム・ドライバでのみ使用できます。 - Rsyslogログ処理システムに対する権限が、Rsyslogに必要な権限に制限されるように改善されました。この更新によって、Rsyslogのセキュリティが強化されますが、既存の機能には影響しません。
SELinuxポリシーにより、Rsyslogが起動時に権限の削除可能
前の項目で説明されているRsyslogログ処理システムの権限制限の結果として、SELinuxポリシーが更新され、rsyslog
サービスが起動時に権限を削除できるようになりました。
Clevisは構成に外部トークンを使用可能
Clevisに新しい-e
オプションが追加され、これを使用して外部トークンIDを指定し、cryptsetup
中にパスワードを入力しないようにできます。外部トークンIDを使用すると、構成を自動化できます。
Tangがsystemd-sysusersを使用
Tangサーバーは、systemd-sysusers
サービスを介してシステム・ユーザーおよびグループの追加を処理して、ユーザー管理を簡略化し、sysuser.d
ファイルの優先度を高くすることでシステム・ユーザー作成をオーバーライドするオプションを提供します。
FapolicydがRPMデータベースのフィルタリングを提供
fapolicyd
が信頼データベースに格納するRPMデータベース・ファイルのリストを、新しい/etc/fapolicyd/RPM-filter.conf
構成ファイルを編集することによりカスタマイズできます。この機能を使用すると、デフォルトの構成フィルタでオーバーライドして、RPMでインストールされるどのアプリケーションを許可または除外するかを指定できます。
GnuTLSが復号化と暗号化時にPKCS#7パディングを処理
GnuTLSのgnutls_cipher_encrypt3
およびgnutls_cipher_decrypt3
ブロック暗号関数は、一部のプロトコルで必要なPKCS#7paddingを透過的に処理します。これらの関数をGNUTLS_CIPHER_PADDING_PKCS7
フラグと組み合せて使用すると、元のプレーンテキストの長さがブロック・サイズの倍数でない場合にパディングを自動的に追加または削除できます。
NSSが1023ビットより短いRSAキーに非対応
ネットワーク・セキュリティ・サービス(NSS)ライブラリが更新され、すべてのRSA操作の最小キー・サイズが128から1023ビットに変更されました。次のNSSの機能は使用できなくなりました。
- 1023ビットより短いRSAキーの生成。
- 1023ビットより短いRSAキーを使用したRSA署名の署名または検証。
- 1023ビットより短いRSAキーを使用した値の暗号化または復号化。
libsshによるスマート・カードのサポート
スマート・カードは、Public-Key Cryptography Standard (PKCS) #11 Uniform Resource Identifier (URI)を介してサポートされます。したがって、libssh
SSHライブラリ、およびlibssh
を使用するアプリケーションで、スマート・カードを使用できます。
libsshを0.10.4に更新
libssh
ライブラリがバージョン0.10.4に更新され、次のサポートが含まれています。
- OpenSSL 3.0
- スマート・カードが追加されました。
- 2つの新しい構成オプション
IdentityAgent
およびModuliFile
が追加されました。
この更新では、OpenSSLの1.0.1より前のバージョンはサポートされなくなりました。さらに、デジタル署名アルゴリズム(DSA)のサポートが無効になり、SCP APIとpubkey
APIおよびprivatekey
APIの両方が非推奨になりました。
scap-security-guideルールとRainerScriptログの互換性
scap-security-guide
のルールとRainerScript構文の互換性が実現されました。したがって、scap-security-guide
ルールで、使用可能な両方の構文のRsyslogログ・ファイルの所有権、グループ所有権および権限をチェックおよび修正できます。
Keylimeを6.5.2に更新
このバージョンには、様々な機能強化とバグ修正が含まれており、主なものを次に示します。
- CVE-2022-3500で報告された脆弱性に対処しました。
- Keylimeエージェントは、実行中のスクリプト間に競合状態が存在する場合に、IMAアテステーションに失敗しなくなりました。
-
/usr/share/keylime/create_mb_refstate
スクリプトのセグメンテーション・フォルトが修正されました。 -
require_ek_cert
オプションが有効になっている場合、EK検証中にレジストラが失敗しなくなりました
ネットワーク
このOracle Linux 9リリースでは、ネットワーキングに関連する次の機能、拡張機能および変更が導入されています。
NetworkManagerをバージョン1.42.2に更新
NetworkManager
パッケージがバージョン1.42.2に更新されました。主な機能および変更点は次のとおりです。
- イーサネット・ボンドは、ソース・ロード・バランシング用に構成できます。
- NetworkManagerは、
loopback
デバイス上の接続を管理できます。 - IPv4等コスト・マルチパス(ECMP)ルート管理が含まれています。
- 仮想ローカル・エリア・ネットワーク(VLAN)接続での
802.1ad
タグ付けが可能になりました。 nmtui
アプリケーションは、Wi-Fi WPA-Enterprise、802.1X認証を備えたイーサネットおよびMACsec接続プロファイルで使用できます。- NetworkManagerが更新され、すべてのアドレスでIPv6重複アドレス検出(DAD)に失敗した場合は、DHCPv6リースが拒否されるようになりました。
詳細は、https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/blob/1.42.2/NEWSを参照してください。
NetworkManagerのECMPルーティングで重みを使用可能
IPv4等コスト・マルチパス(ECMP)ルートを定義するときに、weight
プロパティを使用してNetworkManagerを構成できるようになりました。マルチパス・ルーティングを構成して、ネットワーク・トラフィックの負荷分散を行い、安定させることができます。weight
プロパティには、1から256の値を指定できます。weight
プロパティを使用する単一ホップ・ルートとして、複数のネクストホップ・ルートを定義する必要があります。ルートにweight
プロパティが設定されていない場合、ルートはECMPルートにマージされません。
NetworkManagerでbalance-slbボンディング・モードを使用可能
NetworkManagerで、ソース・ロード・バランシングの構成に使用されるbalance-slb
ボンディング・モードを使用できます。balance-slb
モードは、xmit_hash_policy
=vlan+srcmac
を使用してソース・イーサネット・アドレスのトラフィックを分割し、NetworkManagerはトラフィック・フィルタリングに必要なnftables
ルールを自動的に追加します。
NetworkManagerの複数のネットワークにわたる柔軟なDNS構成
/etc/Networkmanager/NetworkManager.conf
ファイルの[global-dns]
セクションは、[global-dns-domain-*]
セクションでnameserver
の値を指定せずに構成できます。nameserver
構成を回避することで、実際のDNS解決のためにネットワーク接続によって提供されるDNSサーバーに依存しながら、/etc/resolv.conf
ファイルでDNSを構成できます。この更新により、複数のネットワークにわたるDNSの構成が簡単になります。
NetworkManagerでVLANプロトコルを指定可能
vlan
インタフェース・タイプは、NetworkManagerのprotocol
プロパティを使用して構成し、カプセル化用に識別されるタグを制御するVLANプロトコルを指定できます。このプロパティは、802.1Q
(デフォルト)または802.1ad
のいずれかに設定できます。
NetworkManagerで管理対象外インタフェースにVLANを構成可能
NetworkManagerでは、VLANを構成するときに、管理対象外のネットワーク・インタフェースをベース・インタフェースとして構成できます。NetworkManagerによって明示的に変更されないかぎり、VLANベース・インタフェースはそのまま維持されます。
NetworkManagerでloopbackインタフェース接続を構成可能
NetworkManagerでは、追加のIPアドレス、DNS構成、インタフェースおよびMTU設定にバインドされていないルーティングを提供するようにloopback
インタフェースを構成できます。
nmstate APIがDNSサーバー・エントリのIPv6リンクローカル・アドレスを受入れ
nmstate
APIが更新され、DNSサーバー・エントリのIPv6リンクローカル・アドレスを受け入れるようになりました。次のように<link-local_address>
%<interface>
形式を使用します。
dns-resolver: config: server: - fe80::deef:1%enp1s0
nmstate APIのすべてのインタフェースにデフォルトのMTU範囲プロパティを追加
min-mtu
およびmax-mtu
の値のデフォルト・プロパティはすべてのインタフェースに設定されるため、必要なMTUが範囲外の場合、nmstate
は使用可能なMTU範囲を示します。
firewalldをバージョン1.2に更新
firewalld
パッケージがバージョン1.2に更新されました。主な機能および変更点は次のとおりです。
- 新しいサービス(Kodi JSON-RPC、EventServer、netdata、IPFSなど)。
- フェイルセーフ・モードを使用すると、システムが保護された状態が維持され、
firewalld
サービスの起動時にエラーが発生した場合でもネットワーク通信が継続されます。ユーザー構成でエラーが発生した場合、または別の起動の問題によってfirewalld
サービスが失敗した場合、firewalld
はフェイルセーフのデフォルトに戻ります。 - 一部の
firewalld
ポリシー・コマンドのCLIでタブ補完が更新されました。
conntrack-toolsをバージョン1.4.7に更新
conntrack-tools
パッケージがバージョン1.4.7に更新されました。主な機能および変更点は次のとおりです。
- 新しい
IPS_HW_OFFLOAD
フラグ。これは、conntrack
エントリのハードウェアへのオフロードを指定します。 - 新しい
clash_resolve
およびchaintoolong
統計カウンタ。 - IPアドレス・ファミリによるイベントのフィルタリング。
conntrackd.conf
ファイルは、'on'および'off'のシノニムとして'yes'または'no'の値を受け入れます。- デーモンの起動時にユーザー空間ヘルパーを自動的にロードするように構成できます。ユーザーは、
nfct add helper
コマンドを手動で実行する必要はありません。 -o userspace
コマンド・オプションが削除され、ユーザー空間でトリガーされたイベントが常にタグ付けされます。- 外部注入の問題は警告としてのみ記録されます。
- キャッシュ・エントリを検索するときにconntrack IDが無視され、古い失効したエントリが置き換えられます。
ssdp cthelper
モジュールでのIPv6M-SEARCH
リクエストの解析が修正されました。nfct
ライブラリでは遅延バインディングが必要なくなりました。- プロトコル値の解析が改善され、無効な値の検出が向上しました。
xdp-toolsをバージョン1.3.1に更新
xdp-tools
パッケージがバージョン1.3.1に更新されました。主な機能および変更点は次のとおりです。
-
新しいユーティリティ・コマンド:
xdp-bench
: 受信側でのXDPベンチマークの実行。xdp-monitor
: カーネル・トレース・ポイントを使用したXDPエラーおよび統計のモニタリング。xdp-trafficgen
: XDPドライバ・フックを介したトラフィックの生成および送信。
-
libxdp
ライブラリの新機能:- プログラムを
AF_XDP
ソケットにアタッチする際の参照カウントが改善されたため、ソケットの使用時にアプリケーションでXDPプログラムを手動で切り離す必要がなくなりました。 -
新しい関数がライブラリに追加されました。
xdp_program__create()
(xdp_program
オブジェクトの作成用)xdp_program__clone()
(xdp_program
参照のクローニング用)xdp_program__test_run()
(BPF_PROG_TEST_RUN
カーネルAPIを介したXDPプログラムの実行用)xdp_multiprog__xdp_frags_support()
、xdp_program__set_xdp_frags_support()
およびxdp_program__xdp_frags_support()
関数が、XDPfrags
またはマルチバッファXDPを使用してプログラムをロードするために追加されました。
LIBXDP_BPFFS_AUTOMOUNT
環境変数を設定すると、libxdp
ライブラリは、bpffs
仮想ファイル・システムが見つからない場合は自動的にマウントします。また、ライブラリ機能のサブセットは、bpffs
がマウントされていない場合でも機能するようになりました。
- プログラムを
このバージョンでは、ネットワーク・デバイスにロードされているXDPディスパッチャ・プログラムのバージョン番号も変更されます。以前のバージョンと新しいバージョンのlibxdp
およびxdp-tools
は同時に使用できません。libxdp
1.3ライブラリには、古いバージョンのディスパッチャが表示されますが、自動的にアップグレードされません。libxdp
1.3でロードされたプログラムは、以前のバージョンのライブラリでロードされたプログラムでは動作しません。
カーネルおよびシステム・ライブラリ
次の重要な機能、機能強化および変更点が、現在のOracle Linux 9バージョンに同梱されているRed Hat Compatible Kernel (RHCK)に適用されています。
BPF機能をアップストリームLinux 6.0のバージョンに更新
Red Hat Compatible Kernel (RHCK)のBerkeley Packet Filter (BPF)機能が、アップストリームLinux 6.0に更新されました。カーネル・モジュールのBPF Type Format (BTF)に依存するすべてのBPF機能が有効になります。これには、トレース用のBPFトランポリンの使用、Compile Once - Run Everywhere (CO-RE)原則の可用性、および複数のネットワーク関連機能が含まれます。また、カーネル・モジュールにはデバッグ情報も含まれています。つまり、実行中のモジュールを検査するためにdebuginfo
パッケージをインストールする必要がなくなりました。実行中のカーネルで使用可能なBPF機能の完全なリストの詳細は、bpftool feature
コマンドを使用します。
コマンドライン引数の解析を向上させるためにtunaコマンドを更新
tunaコマンドはargparse
を使用してコマンドライン引数の解析を向上させ、CLIはコマンドとオプションの標準化されたメニューを表示できるようになりました。次のタスクを実行できるようになりました。
- アプリケーションおよびカーネル・スレッドの属性を変更します。
- 名前または番号で割込み要求(IRQ)を操作します。
- プロセス識別子を使用してタスクまたはスレッドを操作します。
- CPUまたはソケット番号を使用してCPUおよびCPUセットを指定します。
tuna -h
コマンドを使用して、コマンドライン引数および対応するオプションを出力することもできます。
この機能はUEKでも機能します。
ファイル・システムおよびストレージ
このOracle Linux 9リリースでは、ファイル・システムおよびストレージに関連する次の機能、拡張機能および変更が導入されています。
nvme-cliをバージョン2.2.1に更新
nvme-cli
パッケージがバージョン2.2.1に更新されました。主な機能および変更点は次のとおりです。
- NVMeサブシステム・トポロジを表示する新しい
nvme show-topology
コマンド。 uint128
データ・フィールドが正しく表示されます。libnvme
依存関係がバージョン1.2に更新されました。libuuid
依存関係が削除されました。
Stratisがプール内で一貫したブロック・サイズを強制
プール内でブロック・サイズが混在しているデバイスが存在する場合に、エッジ・ケースの潜在的な問題が発生する可能性があります。この強制により、ユーザーは、異なるブロック・サイズを持つデバイスが含まれるプールを作成したり、異なるブロック・サイズを持つ新しいデバイスをプール内の既存のデバイスに追加できません。その結果、プール失敗のリスクが軽減されます。
動的プログラミング言語、Webサーバーとデータベース・サーバー
このOracle Linux 9リリースでは、プログラミング言語、Webサーバーおよびデータベース・サーバーに関連する次の機能、拡張機能、および変更が導入されています。
Python 3.11を使用可能
Python 3.11はパッケージpython3.11
で提供されます。Python 3.11と互換性のある追加のパッケージ・スイートも提供されます。主な機能および変更点は次のとおりです。
- パフォーマンスが向上しました。
- 新しい
match
キーワード(他の言語のswitch
と同様)は、構造パターン一致に使用できます。 - エラー・メッセージ(閉じられていない小カッコや大カッコを示すなど)が改善されました。エラーの原因となった式を示すトレースバック内の正確なエラー位置。デバッグおよびその他のユースケースの正確な行番号。
- 定義をカッコで囲んで複数行にわたるコンテキスト・マネージャを定義する機能。
- タイプ・ヒントおよび
typing
モジュールに関連する様々な新機能(新しいX | Y
タイプの和集合演算子、可変個引数ジェネリックス、新しいSelf
タイプなど)。 - TOMLの解析に使用できる新しい
tomllib
標準ライブラリ・モジュール。 - 例外グループおよび新しい
except*
構文を使用して、関連性のない複数の例外を同時に生成および処理する機能。
Gitをバージョン2.39.1に更新
git
バージョン管理システムがバージョン2.39.1に更新されました。主な機能および変更点は次のとおりです。
git log
コマンドにgit describe
出力の書式プレースホルダが含まれています:git log --format=%(describe)
-
git commit
コマンドに--fixup<commit>
オプションが含まれているため、ログ・メッセージを変更せずにコミットの内容を修正できるようになりました。この更新により、次も使用できるようになりました。--fixup=amend:<commit>
オプションは、メッセージと内容の両方を変更します。--fixup=reword:<commit>
オプションは、コミット・メッセージのみを更新します。
git clone
コマンドに、シャロー・リポジトリからのクローニングを無効にする--reject-shallow
オプションが含まれています。git branch
コマンドに--recurse-submodules
オプションが含まれています。-
git merge-tree
コマンドを使用して、次のことができます。- 2つのブランチをマージできるかどうかをテストします。
- ブランチがマージされた場合にマージ・コミットが発生するツリーを計算します。
safe.bareRepository
構成変数で、ベア・リポジトリをフィルタで除外できます。
バージョン3.2.0に更新されたgit-lfs
Git Large File Storage (LFS)
拡張機能がバージョン3.2.0に更新されました。主な機能および変更点は次のとおりです。
Git LFS
は、純粋なSSHベースのトランスポート・プロトコルを導入しました。Git LFS
はマージ・ドライバを提供します。git lfs fsck
コマンドは、ポインタが正規であり、必要なLFSファイルの形式が正しいことを確認します。- NT LAN Manager (NTLM)認証プロトコルが削除されました。かわりにKerberosまたはBasic認証を使用してください。
nginx:1.22をモジュール・ストリームとして使用可能
nginx 1.22
Webおよびプロキシ・サーバーは、nginx:1.22
モジュール・ストリームとして使用できるようになりました。新機能および変更点は次のとおりです。
- OpenSSL 3.0統合、およびOpenSSL 3.0を使用する場合の
SSL_sendfile()
関数の処理。 - PCRE2ライブラリとの統合。
mail
プロキシ・モジュールでのPOP3およびIMAPのパイプライン処理。また、Auth-SSL-Protocol
およびAuth-SSL-Cipher
ヘッダー行は、メール・プロキシ認証サーバーに渡されます。
ssl_conf_command
やssl_reject_handshake
など、複数の新しいディレクティブを使用できます。- 複数のディレクティブ(
proxy_cookie_flags
、proxy_ssl_certificate
、proxy_ssl_certificate_key
、grpc_ssl_certificate
、grpc_ssl_certificate_key
、uwsgi_ssl_certificate
およびuwsgi_ssl_certificate_key
)で変数を使用できます。 - ストリーム・モジュールの
listen
ディレクティブは、新しいfastopen
パラメータを使用して、ソケットをリスニングするためにTCP Fast Open
モードを使用できるようになりました。 - 新しい
max_errors
ディレクティブがmail
プロキシ・モジュールに追加されました。 -
nginx
は次の場合に常にエラーを返します。CONNECT
メソッドが使用されています。Content-Length
ヘッダーとTransfer-Encoding
ヘッダーの両方がリクエストに指定されています。- リクエスト・ヘッダー名に空白または制御文字が含まれています。
Host
リクエスト・ヘッダー行に空白または制御文字が含まれています。
nginx
は、Transfer-Encoding
ヘッダーを含むすべてのHTTP/1.0リクエストをブロックします。nginx
は、Application Layer Protocol Negotiation (ALPN)を使用してHTTP/2接続を確立するようになり、Next Protocol Negotiation (NPN)プロトコルを使用できなくなりました。
mod_securityをバージョン2.9.6に更新
Apache HTTPサーバーのmod_security
モジュールがバージョン2.9.6に更新されました。主な機能および変更点は次のとおりです。
modsecurity.conf-recommended
ファイル内のパーサーのアクティブ化ルールが調整されました。- HTTPマルチパート・リクエストの解析が改善されました。
- 新しい
MULTIPART_PART_HEADERS
コレクション。 - マイクロ秒のタイムスタンプの解決は、フォーマットされたログ・タイムスタンプで使用されます。
- 欠落していたエントリに対して地理的国が更新されました
postgresql:15モジュール・ストリームの追加
PostgreSQLバージョン15は、postgresql:15
モジュール・ストリームとして提供されています。PostgreSQL 15には、バージョン13に対するいくつかの新機能および拡張機能が含まれています。詳細は、https://www.postgresql.org/docs/release/15.0/を参照してください。
モジュール・ストリームのライフサイクル情報は、Oracle Linux: 製品ライフサイクル情報で入手できます。
nodejs:18 バージョン18.14がnpmバージョン9を含む
更新されたNode.js 18.14
には、バージョン8からバージョン9にSemVerがメジャー・アップグレードされたnpm
が含まれています。この更新では、セキュリティを向上させるために、スコープなしの認証構成のサポートが削除されています。この更新により、現在のnpm
構成の調整が必要になる場合があります。
スコープなしの認証トークンを使用する場合は、.npmrc
ファイルでレジストリ・スコープのトークンを生成して指定してください。.npmrc
ファイルに_auth
を使用する行(///registry.npmjs.org/:_auth
など)が含まれている場合は、これらの行を///registry.npmjs.org:_authToken=${NPM_TOKEN}
に置き換えます。次に、生成されたスコープありのトークンを適用します。
コンパイラおよび開発ツール
このOracle Linux 9リリースでは、コンパイラおよび開発ツールに関連する次の機能、拡張機能、および変更が導入されています。
コンパイラおよび開発ツールの更新
Oracle Linux 9.2では、次のシステム・ツールチェーン・コンポーネントが更新されました。
- GCC 11.3.1
- glibc 2.34
- binutils 2.35.2
Oracle Linux 9.2では、次のパフォーマンス・ツールおよびデバッガが更新されました。
- GDB 10.2
- Valgrind 3.19
- SystemTap 4.8
- Dyninst 12.1.0
- elfutils 0.188
Oracle Linux 9.2では、次のパフォーマンス・モニタリング・ツールが更新されました。
- PCP 6.0.1
- Grafana 9.0.9
Oracle Linux 9.2では、次のコンパイラ・ツールセットが更新されました。
- GCCツールセット12
- LLVMツールセット15.0.7
- Rustツールセット1.66.1
- Goツールセット1.19.6
GCCツールセット12を更新
GCCツールセット12は、最新バージョンの開発ツールを提供するコンパイラ・ツールセットです。このツールセットは、AppStream
リポジトリのソフトウェア・コレクションの形式でアプリケーション・ストリームとして使用できます。主な機能および変更点は次のとおりです。
- GCCコンパイラがバージョン12.2.1に更新されました。
annobin
がバージョン11.08に更新されました。
GCCツールセット12では、次のツールおよびバージョンが提供されます。
ツール | バージョン |
---|---|
GCC | 12.2.1 |
GDB | 11.2 |
binutils | 2.38 |
dwz | 0.14 |
annobin | 11.08 |
GCCツールセット12をインストールするには、次のコマンドをrootとして実行します。
sudo dnf install gcc-toolset-12
GCCツールセット12のツールを実行するには:
scl enable gcc-toolset-12 tool
GCCツールセット12のツール・バージョンがこれらのツールのシステム・バージョンをオーバーライドするシェル・セッションを実行するには:
scl enable gcc-toolset-12 bash
LLVMツールセットをバージョン15.0.7に更新
LLVMツールセットがバージョン15.0.7に更新されました。この更新には、C99以降ではデフォルトで-Wimplicit-function-declaration
および-Wimplicit-int
警告を有効にする変更が含まれています。
システムGCCコンパイラを更新
システムGCCコンパイラ(バージョン11.3.1)が更新され、アップストリームのGCCで使用可能な多数のバグ修正および拡張機能が追加されました。GNUコンパイラ・コレクション(GCC)は、C、C++およびFortranプログラミング言語でアプリケーションを開発するためのツールを提供します。
Performance Co-Pilotをバージョン6.0に更新
Performance Co-Pilot (PCP
)がバージョン6.0に更新されました。重要な改善は次のとおりです。
-
バージョン3のPCPアーカイブ:
インスタンス・ドメイン変更デルタ、2038年対応タイムスタンプ、ナノ秒精度のタイムスタンプ、任意のタイムゾーン、およびより大きな(2GBを超える)個々のボリューム全体で使用される64ビット・ファイルのオフセットはすべて、
/etc/pcp.conf
ファイルでPCP_ARCHIVE_VERSION
設定を構成することによって使用できます。バージョン2のアーカイブはデフォルトのままです。
-
PCP全体ではOpenSSLのみが使用されます。Mozilla NSS/NSPRの使用は中止されました。
libpcp
、PMAPI
クライアントおよびPMCD
の暗号化の使用は影響を受けます。これらの要素は、すでにOpenSSLを使用していたpmproxy
HTTPSサポートおよびredis-server
によって一貫して構成および使用されるようになりました。 -
タイムスタンプを使用する
PCP
ライブラリ・インタフェースの新しいナノ秒精度のタイムスタンプPMAPI
呼出しは、オプションで使用するために含まれていますが、既存のツールでは完全な下位互換性が維持されています。 -
次のツールおよびサービスが更新されました。
-
pcp2elasticsearch
- 認証機能が有効になっています。
-
pcp-dstat
top-alike
プラグインを使用できます。-
pcp-htop
- 最新の安定したアップストリーム・リリースに更新されました。
-
pmseries
sum
、avg
、stdev
、nth_percentile
、max_inst
、max_sample
、min_inst
およびmin_sample
関数が追加されました。-
pmdabpf
- CO-RE (Compile Once - Run Everywhere)モジュールが追加されました。
-
pmdabpftrace
- 自動起動スクリプトの例が
/usr/share
ディレクトリに移動されました。 -
pmdadenki
- 複数のアクティブなバッテリを使用できます。
-
pmdalinux
- 最新の
/proc/net/netstat
の変更の更新。 -
pmdaopenvswitch
- 追加のインタフェースおよびカバレッジ統計が追加されました。
-
pmproxy
- リクエスト・パラメータをリクエスト本文で送信できるようになりました。
-
pmieconf
- Open vSwitchメトリックの複数の
pmie
ルールが追加されました。 -
pmlogger_farm
- ファーム・ロガーのデフォルト構成ファイルが追加されました。
-
pmlogger_daily_report
- 効率化のためのコード変更。
-
grafanaをバージョン9.0.9に更新
grafana
パッケージがバージョン9.0.9に更新されました。主な機能および変更点は次のとおりです。
- 時系列パネルがデフォルトの視覚化オプションになり、グラフ・パネルに置き換わりました
- 新しいヒートマップ・パネル
- 新しいPrometheusおよびLokiクエリー・ビルダー
- Grafanaアラートを更新
- UI/UXおよびパフォーマンスの改善
- ライセンスをApache 2.0からGNU Affero General Public License (AGPL)に変更
オプトインの実験機能として、次のものが提供されています。
- 新しい棒グラフ・パネル
- 新しい状態タイムライン・パネル
- 新しいステータス履歴パネル
- 新しいヒストグラム・パネル
仮想化
このOracle Linux 9リリースでは、仮想化に関連する次の機能、拡張機能および変更が導入されています。
passtパッケージを導入
このパッケージを使用すると、libvirt
(qemu:///session
)の非特権接続モードで実行されている仮想マシンおよびコンテナにそれぞれpasst
およびpasta
ネットワーク接続を構成できます。これら2つの機能により、IPv6についてさらに次の改善を行いました。
- 近隣探索プロトコル(NDP)レスポンダおよびDHCPv6の使用
- IPv6上のTCPおよびUDPプロトコルでのポート転送
この更新により、passt
パッケージが追加され、passt
およびpasta
ネットワーク接続を使用できるようになりました。その結果、libvirt
(qemu:///session
)の非特権接続モードで実行される仮想マシンおよびコンテナにそれぞれpasst
およびpasta
を設定できます。
passt
の使用方法の詳細は、libvirtのアップストリーム・ドキュメントを参照してください。
Podmanコンテナでpasta
を使用するには、-network pasta
コマンドライン・オプションを使用します。
コンテナ
このOracle Linux 9リリースでは、コンテナに関連する次の機能、拡張機能および変更が導入されています。
Podmanイメージ用の複数のGPGキー
/etc/containers/policy.json
ファイルは、信頼できるGPGキーのリストを含むkeyPaths
フィールドを受け入れます。コンテナ・ポリシーでの複数のGPGキーの使用は、Podmanが複数のGPGキーのいずれかによって署名されたイメージをインストールできるようにするテクノロジ・プレビュー機能です。
container-toolsパッケージおよびPodmanを更新
Podman v4.4のcontainer-tools
パッケージが更新されました。このパッケージには、Podman、Buildah、Skopeo、crun
およびrunc
の各ツールが含まれています。この更新では、次の機能と変更が提供されています:
- Podman v4.4以降の
journald
エントリからコンテナに関する情報を直接監査できます。Podmanの監査を有効にするには、container.conf
構成ファイルを変更し、events_container_create_inspect_data=true
オプションを[engine]
セクションに追加します。監査データはpodman container inspectコマンドの出力と同等のJSON形式です。 - コンテナおよびポッドのネットワークを更新するpodman network updateコマンドが追加されています。
-
/usr/libexec/podman/pre-exec-hooks
または/etc/containers/pre-exec-hooks
にプラグイン・スクリプトを作成することにより、Podmanに実行前フックを構成してコンテナ操作を制御するために使用できます。実行前スクリプトは、/etc/containers/podman_preexec_hooks.txt
という名前のファイルが存在する場合にのみ実行されます。すべてのプラグイン・スクリプトがゼロ値を返す場合は、podman
コマンドが実行されます。それ以外の場合は、失敗したスクリプトによって返された終了コードでpodman
コマンドが終了します。 - Buildahバージョンを出力するpodman buildx versionコマンドが追加されました。
- コンテナ起動時のヘルス・チェックを使用して、通常のヘルス・チェックがアクティブ化される前に、コンテナが完全に起動されていることを確認するコマンドをトリガーできます。
- 新しいDocker互換性オプションおよび別名が含まれています。
- kubeコマンドの統合によるKubernetesの統合の改善: podman kube generateおよびpodman kube playにより、
podman generate kube
およびpodman play kube
コマンドが置き換えられています。 podman kube play
コマンドで作成されたSystemd管理のポッドは、io.containers.sdnotify
注釈(または特定のコンテナの場合はio.containers.sdnotify/$name
)を使用してsd-notifyと統合されるようになりました。podman kube play
で作成されたSystemd管理のポッドは、io.containers.auto-update
注釈を使用して自動更新できます。
重要な変更点の詳細は、アップストリームのリリース・ノートを参照してください。
AardvarkおよびNetavarkでカスタムDNSサーバーを選択可能
AardvarkおよびNetavarkネットワーク・スタックを使用するコンテナに対してカスタムDNSサーバーを選択できます。ホスト上のデフォルトのDNSサーバーではなく、お客様のDNSサーバーをコンテナで使用できます。カスタムDNSサーバーを有効にするには、containers.conf
構成ファイルにdns_servers
フィールドを追加するか、新しい--dns
オプションを使用してpodmanコマンドの実行時にDNSサーバーのIPアドレスを指定します。--dns
オプションにより、container.conf
ファイルに設定されている値がオーバーライドされます。
Skopeoを使用したSigstoreキー・ペアの生成
skopeo generate-sigstore-keyコマンドを使用して、Skopeoでsigstoreキーペアを生成できます。詳細は、skopeo-generate-sigstore-key
マニュアル・ページを参照してください。
Toolboxユーティリティの提供
toolboxユーティリティを使用すれば、追加のトラブルシューティング・ツールをシステムに直接インストールしなくても、コンテナ・コマンドライン環境にアクセスできます。Toolboxは、PodmanとOpen Container Initiativeのその他の標準的なコンテナ技術を使用しています。詳細は、toolbxを参照してください。