特定のファイル操作に対してtmpfs / ramfsのパフォーマンスを利用したいが、これらのファイルを使用するプログラム/プロセスは大文字と小文字を区別しないファイルシステムを想定しています。大文字と小文字を区別しないtmpfs / ramfsオプションを許可する文書が見つかりません。
同様の結果を得る他の方法はありますか? [どのように]大文字と小文字を区別しないtmpfs / ramfsを取得できますか?
(注:RHEL / CentOS 7への回答を探していますが、良い解決策がある場合は、他のディストリビューションに簡単に切り替えることができます。)
答え1
/ tmpで大文字と小文字を区別しないファイルシステムを作成するには、次の方法を試してください。
truncate -s 100M /tmp/vfat
losetup /dev/loop0 /tmp/vfat
mkfs.vfat /dev/loop0
mkdir /mnt/vfat
mount /dev/loop0 /mnt/vfat
tmpfs を使用せずに ramfs を使用するには、まず RAM マウントを作成します。
mkdir /mnt/ramfs
mount -t ramfs -o size=110M ramfs /mnt/ramfs
次に、上記の手順に従ってvfatプレースホルダファイル、ファイルシステムを作成してマウントします。
答え2
あなたはそれを使用することができますCIOPFS大文字と小文字を区別するファイルシステムの上に大文字と小文字を区別しないファイルシステムを実装するスタック可能ファイルシステム。
mkdir /tmp/case-sensitive /tmp/case-insensitive
ciopfs /tmp/case-sensitive /tmp/case-insensitive
TMPDIR=/tmp/case-insensitive myapp
fusermount -u /tmp/case-insensitive
CiopfsはヒューズLinuxを含むほとんどのUnixバリアントで利用可能なファイルシステムです。アプリケーションを実行しているユーザーが明示的にFUSEを使用することを許可する必要があるかもしれません(RHELがデフォルトでユーザーがFUSEを使用できるようにするかどうかはわかりません)。
ファイルシステムをスタッキングすると、必然的にわずかなパフォーマンスが低下しますが、これはCPUコストであり、ディスクI / Oコストではありません。