리눅스 : 대소 문자 구분 파일 시스템


13

Linux 파일 시스템을 대소 문자를 구분하기 위해 어떤 방법이 있습니까?

Windows에서 개발 한 asp.net 응용 프로그램이 있지만 Linux에 넣을 때 항상 대문자로 표기 / 맞춤법에 문제가 있습니다.

한 가지 방법은 로컬 호스트 SMB 공유를 / var / www에 마운트하는 것입니다. 다른 사람이 있습니까?


14
깨진 앱을 해결하기 위해 운영 체제를 해킹하는 것보다 응용 프로그램을 수정하는 것이 쉽지 않습니까?
Aaron Tate

2
이 웹 앱이 아파치를 통해 제공되고 있습니까? mod_speling을 사용할 수 있습니다.
Zoredache

2
"혹은 웹 개발자가 파일 이름 지정, 고통의 고통에 일관성을
갖도록

답변:


15

Mono에서 실행되는 앱 내에서만 대소 문자를 구분하지 않는 IOMAP경우 Windows와 마찬가지로 환경 변수를 사용하여 대소 문자를 무시하도록 할 수 있습니다 .

사용에 대한 자세한 내용은 여기를 참조 하십시오 : http://www.mono-project.com/IOMap


15

거기의 대소 문자를 구분하지 EXT3 드라이버 는 드라이버에 패치-와 함께 자신 만의 커널을 압연하고 있기 때문에 생산에 그런 일이 나에게 조금 겁 것이다 실행, 솔직히,하지만. (예, 예. 우리는 항상 "하루에 다시"그랬지만 1997 년과 같았습니다 ...)

대소 문자를 구분하지 않는 FUSE 구현 ciopfs 가 있습니다. 패치 된 커널보다 프로덕션 환경에서 사용하는 것이 훨씬 덜 무섭습니다.

/var/www폴더 계층에 VFAT와 같이 대소 문자를 구분하지 않는 파일 시스템을 사용할 수도 있습니다 . 이 경우 루프백 마운트를 사용하여 디스크 파티셔닝을 망칠 필요가 없습니다.


ciopfs는 쓰레기입니다, 나는 그것을 시도했습니다, 그것은 대문자를 무시하고 소문자로만 매핑합니다 ...
Quandary

1
@Quandary Run awk '/^ciopfs/ {print $2}' /proc/mounts그러면 사용할 디렉토리 이름이 출력됩니다. 실행 후의 ciopfs a/ b/파일에 액세스하거나 수정해서는 안됩니다 a/.

@Quaryary 소문자 제약은 프로젝트 페이지에 바로 쓰여지고 꽤 분명합니다. 사용하기 전에 또는 RTFM을 처리하기 위해 개선하기 위해 노력 했습니까?
Michael Shigorin

8

괴롭힘.
내 자신의 질문에 대답.
이것은 실제로 가능합니다.
변형 1 :
X-MB 크기의 .dsk 파일 (dd 포함)을 만든 다음 옵션 O (OS2 호환성-= 대소 문자 구분 안 함)를 사용하여 해당 파일에 JSF 파일 시스템을 만든
다음 해당 파일을 원하는 폴더에 루프 마운트 .

(apt-get install jfsutils)
dd if=/dev/zero of=jfs.dsk bs=1048576 count=150
mkfs.jfs -O jfs.dsk
mkdir -p /mnt/jfs
mount /volumes/jfs.dsk /mnt/jfs -t jfs -o loop
umount /mnt/jfs/

변형 2 :
OS를 설치할 때 디스크를 수동으로 분할하고 원하는 위치에 마운트하는 JFS 형식의 다른 파티션을 만듭니다.
모든 것이 작동하고 실행 중일 때 해당 파티션을 다시 포맷 할 수 있습니다 (경고-해당 파티션의 모든 데이터가 지워짐-올바른 파티션을 선택했는지 확인하고 아직 데이터가 없는지 확인하십시오).

마운트 된 파티션을 마운트 해제하십시오

umount /web

재 포맷 :

mkfs.jfs -O /dev/hda5

파티션을 다시 마운트

mount /dev/hda5 /web

이제 실행

blkid

새로운 partition-uuid를 얻습니다.
이제 / etc / fstab으로 이동하여 / dev / hda5의 이전 uuid를 새 것으로 교체하십시오.

이 작업을 잘못 수행하는 경우 비상 부팅 모드 시작을 참조하십시오
.


그래서 당신은 이것을 7 년 반 동안 다루어 왔습니까?!?! 당신은 이제 당신이 다루고있는 "개발자"가 초등학교 / 초등학교에서 그것을 만들었을 것이라고 생각할 것입니다.
Andrew Henle

3
@Andrew Henle : 아니요. 실제로 대소 문자 구분 Windows 파티션 (ext3)과 같은 다른 솔루션을 선택했습니다. 이제 문제는 .NET Core로 재 포장되었으며 이것이 내가 생각해 낸 해결책입니다. 이제 퓨즈 / 사이프, smb, hfs / hpfs +, 해킹 된 extX-fs, 루프 마운트 또는 그 쓰레기가 없어도 대소 문자를 구분하지 않는 Linux 파티션이 있습니다. 이것이 올바른 방법입니다. 그리고 지금까지 아무도 지난 7 년 동안 실제로이 질문에 만족스럽게 대답 한 사람이 없었습니다.
Quandary
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.