第2章 既知の問題
この章では、Unbreakable Enterprise Kernelリリース4の既知の問題について説明します。
2.1 btrfs
-
skinnyメタデータ機能は、UEK R3と互換性がないため、デフォルトで有効化されません。 (バグID 22123918)
-
btrfs filesystem balanceコマンドでは、特定の状況でRAIDレベルの変更が可能であることが警告されず、操作を取り消す選択肢が表示されません。 (バグID 16472824)
-
duなどのコマンドで、遅延割当てでのバイト数が変化しているときに、btrfsファイル・システムのファイル・サイズに整合性のない結果が表示される場合があります。 (バグID 13096268)
-
btrfsがコピーオンライトであるということは、ファイル・システム上のすべての操作で、最初にディスク・スペースが必要になるということです。 スペースが残っていないディスクでは、すべての操作を実行できず、ファイルの削除もできない場合があります。 回避策として、操作を再試行する前にsyncを実行します。 これでもうまくいかない場合は、-o nodatacowオプションを指定してファイル・システムを再マウントし、ファイルを削除してスペースを解放してください。 https://btrfs.wiki.kernel.org/index.php/ENOSPCを参照してください。
-
btrfs quota enableコマンドを、空ではないファイル・システムで実行すると、既存のファイルがスペース使用に対してカウントされません。 これらのファイルを削除すると、使用レポートにマイナスの数字が表示される場合があり、ファイル・システムにアクセスできなくなります。 回避策として、ファイル・システムの作成直後にquotaを有効にします。 ファイル・システムにすでにデータを書き込んだ場合は、もうquotaを有効にできません。 (バグID 16569350)
-
btrfs quota rescanコマンドは現在実装されていません。 このコマンドは再スキャンを実行せず、メッセージも表示せずに戻ります。 (バグID 16569350)
-
ファイル内のデータを上書きするときに、ファイルの途中から始めると、btrfs qgroup showによって表示されるスペース使用回数では、この上書きされたスペースが2回カウントされます。 (バグID 16609467)
-
ファイル・システムでbtrfsck --init-csum-treeを実行した後、同じファイル・システムで単純なbtrfsckを実行すると、このコマンドによって、以前は表示されなかったBackref不一致エラーが表示されます。 (バグID 16972799)
-
Btrfsでは、btrfsファイル・システムを作成する対象デバイスをトラッキングします。 その後、これらのデバイスをbtrfs以外のファイル・システムで再利用すると、デバイス・スキャンの実行時またはRAID-1ファイル・システムの作成時に次のようなエラー・メッセージが表示される場合があります。
ERROR: device scan failed '/dev/cciss/c0d0p1' - Invalid argument
これらのエラーは無視しても問題ありません。 (バグID 17087097)
-
-sオプションを使用して、セクター・サイズをページ・サイズとは異なるmkfs.btrfsに指定した場合、作成されるファイル・システムはマウントできません。 デフォルトでは、セクター・サイズは、ページ・サイズと同じになるように設定されます。 (バグID 17087232)
-
UEK R4で使用する
btrfs-progs
とbtrfs-progs-devel
パッケージは、ol6_x86_64_UEKR4
とol7_x86_64_UEKR4
ULNチャネルとol6_UEKR4
とol7_UEKR4
Oracle Linux yumサーバー・リポジトリで利用できます。 UEK R3では、これらのパッケージは、ol6_x86_64_latest
およびol7_x86_64_latest
ULNチャネルとol6_latest
およびol7_latest
Oracle Linux yumサーバー・リポジトリで利用可能になりました。
2.2 DIF/DIXはextファイルシステムではサポートされていません
SCSI規格に追加されたDIF (Data Integrity Field)およびDIX (Data Integrity Extension)機能は、メモリー管理システムによるバッファ内のデータの変更試行を正しく処理できるファイルシステムに依存しています書き込みのためにキューに入れられます。
ext2、ext3、およびext4ファイルシステム・ドライバは、チェックサムの失敗や論理ブロック・ガードのチェックに失敗しましたというエラーを引き起こすI/Oの間にページが変更されるのを防ぎません。 XFSなどの他のファイルシステムもサポートされています。 (バグID 24361968)
2.3 起動時にコンソールが停止したように見える
ASPEEDグラフィック・コントローラでハードウェア上のOracle Linux 6を起動すると、udev
の開始後の起動プロセス中にコンソールが停止したように見える場合があります。 ただし、システムは正常に起動しており、アクセス可能です。 回避策は、nomodeset
を/etc/grub.conf
のカーネル・ブート・パラメータとして追加します。 (バグID 22389972)
2.4 DTrace
-
プローブ定義の引数の宣言は、
enum
、struct
、union
などの派生型を使用して宣言できません。 -
次のコンパイラの警告は、
string
型のプローブ定義の引数では無視できます(D型ですがC型ではありません)。provider_def
.h:line#
: warning: parameter names (without types) in function declaration -
dlopen()
を最初のスレッド以外のスレッドで実行するustack()
、usym()
、uaddr()
およびumod()
下のマルチスレッド・プロセスは、dlopen()
で使用するシンボルに対して厳密なシンボル解決を実行しません。 (バグID 20045149)
2.5 LXC下でのip_local_port_rangeパラメータ
lxc-1.1
以降およびUEK R4では、ip_local_port_range
は、読取り専用ではなく、Oracle Linuxコンテナの/proc/sys/net/ipv4
下の読取り書込み可能パラメータです。 (バグID 21880467)
2.6 DockerのOverlayfsエラー
yum installをoverlayfsファイル・システム上のコンテナ内で実行すると、次のエラーが発生して失敗します:
Rpmdb checksum is invalid: dCDPT(pkg checksums): package_name
このエラーは、Dockerfileビルドを破壊し、upstreamの既知の問題です(https://github.com/docker/docker/issues/10180を参照してください。)
回避策は、パッケージのインストールの前に、touch /var/lib/rpm/*を実行します。 (バグID 21804564)