Red Hat Training
A Red Hat training course is available for RHEL 8
9.3. キャッシュの設定
現在、Red Hat Enterprise Linux 8 は cachefiles
キャッシュバックエンドのみを提供します。cachefilesd
デーモンは cachefiles
を開始し、管理します。/etc/cachefilesd.conf
ファイルは、cachefiles
によるキャッシュサービスの提供方法を制御します。
キャッシュバックエンドは、キャッシュをホストしているパーティション上の一定の空き領域を維持することで動作します。空き領域を使用する他の要素に応じてキャッシュを増大および縮小し、root ファイルシステム (ラップトップなど) で安全に使用できるようにします。FS-Cache ではこの動作でデフォルト値を設定します。これは、キャッシュカリング制限 で設定できます。キャッシュカリング制限の設定方法は、キャッシュカリング制限の設定 を参照してください。
この手順では、キャッシュを設定する方法を説明します。
前提条件
cachefilesd パッケージがインストールされ、サービスが正常に起動しました。サービスが実行中であることを確認するには、次のコマンドを使用します。
# systemctl start cachefilesd # systemctl status cachefilesd
ステータスは active (running) である必要があります。
手順
キャッシュとして使用するディレクトリーをキャッシュバックエンドで設定するには、次のパラメーターを使用します。
$ dir /path/to/cache
一般的に、キャッシュバックエンドディレクトリーは、以下のように
/etc/cachefilesd.conf
内に/var/cache/fscache
として設定されます。$ dir /var/cache/fscache
キャッシュバックエンドのディレクトリーを変更する場合、selinux コンテキストは
/var/cache/fscache
と同じである必要があります。# semanage fcontext -a -e /var/cache/fscache /path/to/cache # restorecon -Rv /path/to/cache
- キャッシュを設定する際に、/path/to/cache をディレクトリー名に置き換えます。
selinux コンテキストを設定するコマンドが機能しない場合は、以下のコマンドを使用します。
# semanage permissive -a cachefilesd_t # semanage permissive -a cachefiles_kernel_t
FS-Cache は、
/path/to/cache
をホストするファイルシステムにキャッシュを保存します。ラップトップでは、root ファイルシステム (/
) をホストのファイルシステムとして使用することが推奨されますが、デスクトップマシンの場合は、キャッシュ専用のディスクパーティションをマウントするより慎重に行ってください。ホストファイルシステムはユーザー定義の拡張属性に対応する必要があります。FS-Cache はこの属性を使用して、整合性のメンテナーンス情報を保存します。ext3 ファイルシステム (つまり
デバイス
) のユーザー定義の拡張属性を有効にするには、次のコマンドを実行します。# tune2fs -o user_xattr /dev/device
代わりに、マウント時にファイルシステムの拡張属性を有効にするには、次のコマンドを使用します。
# mount /dev/device /path/to/cache -o user_xattr
設定ファイルを置いたら、
cachefilesd
サービスを起動します。# systemctl start cachefilesd
起動時に
cachefilesd
が起動するように設定するには、root で次のコマンドを実行します。# systemctl enable cachefilesd