대소문자를 구분하지 않는 tmpfs/ramfs를 마운트할 수 있나요?

대소문자를 구분하지 않는 tmpfs/ramfs를 마운트할 수 있나요?

특정 파일 작업에 대해 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 비용은 아닙니다.

관련 정보