Linux: Case-INSENSITIVE Dosya Sistemi


13

Linux dosya sistemini VARSAYILAN hale getirmek için hangi yöntemler vardır?

Windows üzerinde geliştirilen asp.net uygulamalarına sahibim, ancak Linux'a koyarken mono üzerinde büyük / küçük harf kullanımı ile ilgili sorunlar var.

Bunun bir yolu, / var / www dizinine bir localhost SMB paylaşımı bağlamaktır. Başka var mı?


14
Uygulamayı düzeltmek, kırık uygulamanın etrafında çalışmak için işletim sistemini kesmekten daha kolay olmaz mıydı?
— Aaron Tate

2
Bu web uygulaması apache üzerinden sunuluyor mu, mod_speling kullanabilirsiniz.
— Zoredache

2
Bu oldukça açık bir durum gibi görünüyor "Ya da web geliştiricilerine dosya adlandırma, ağrı acı ile tutarlı olmalarını öğretebilirsiniz"
— Shadur

Yanıtlar:


15

SADECE Mono altında çalışan uygulamalarda büyük / küçük harf duyarsızlığından bahsediyorsanız, IOMAPmono'ya Windows gibi davayı yoksaymasını bildirmek için ortam değişkenini kullanabilirsiniz .

Kullanımıyla ilgili ayrıntılara buradan bakın: http://www.mono-project.com/IOMap


15

Orada bir var vaka duyarsız ext3 sürücüsü , sürücülerde yamalı-ile kendi özel çekirdek yayıyoruz beri üretimde böyle bir şey, beni biraz korkutur çalışan, açıkçası, ama. (Evet, evet-- bunu her zaman "gün içinde" yaptık, ama bu 1997 gibi ...)

Vaka duyarsızlığını da uygulayan bir FUSE uygulaması, ciopfs var . Üretimde kullanmak benim için yamalı bir çekirdekten çok daha az korkutucu olurdu.

/var/wwwKlasör hiyerarşisi için VFAT gibi büyük / küçük harfe duyarlı olmayan bir dosya sistemi de kullanabilirsiniz . Bu durumda, döngü bölümlemenizle uğraşmak zorunda kalmayacağınız bir geri döngü bağlantısı kullanacağım.


ciopfs bok, ben denedim, sadece küçük harf küçük harf, herhangi bir büyük harf yok sayar ...
— Quandary

1
@Quandary Run awk '/^ciopfs/ {print $2}' /proc/mountsve kullanılacak dizinin adını çıktısını verir. Çalıştırdıktan sonra ciopfs a/ b/altındaki dosyalara erişmemeli veya değiştirmemelisiniz a/.

@Küçük harf kısıtlaması projenin sayfasında yazılır ve oldukça açıktır, kullanım durumunuzu veya en azından RTFM'yi kullanmadan önce onu geliştirmeye çalıştınız mı?
— Michael Shigorin

9

Necromancing.
Kendi sorumu cevaplıyorum.
Bu gerçekten mümkün.
Varyant 1:
X-MB (dd ile) boyutunda bir .dsk dosyası oluşturun, ardından bu dosyada O seçeneğiyle bir JSF dosya sistemi oluşturun (OS2 uyumluluğu - = büyük / küçük harf duyarsız)
Sonra bu dosyayı istenen bir klasöre döngüsel olarak bağlayın .

(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/

Varyant 2:
İşletim sistemini yüklediğinizde, diski manuel olarak bölümleyin ve istediğiniz yere bağladığınız JFS biçiminde başka bir bölüm oluşturun.
Her şey hazır ve çalışır durumdayken, bu bölümü yeniden biçimlendirebilirsiniz (uyarı - bu bölümdeki tüm verileri silecektir - uygun olanı seçtiğinizden emin olun ve üzerinde henüz veri yok):

monte edilmiş bölümü ayır

umount /web

reformasyon:

mkfs.jfs -O /dev/hda5

bölümü yeniden takmak

mount /dev/hda5 /web

Şimdi koş

blkid

ve yeni bölüm-uuid'i alıyorsunuz.
Şimdi / etc / fstab adresine gidin ve / dev / hda5 için eski uuid'i yenisiyle değiştirin.

Bunu yanlış yapıyorsanız, ayrıca bkz
. Acil durum önyükleme moduna hoş geldiniz ...


Yani bununla yedi buçuk yıldır uğraşıyorsun?!?! Şimdiye kadar uğraştığınız "geliştiricilerin" ilkokul / ilkokuldan çıkardığını düşünürdünüz.
— Andrew Henle

3
@Andrew Henle: Hayır, aslında başka bir çözüm seçtik - büyük / küçük harf duyarlı bir pencere bölümü (ext3). Şimdi sorun .NET Core ile yeniden ortaya çıktı ve bu benim bulduğum çözüm. Şimdi sigorta / ciops, smb, hfs / hpfs +, saldırıya uğramış bir extX-fs, loop mount veya herhangi bir saçmalık gerektirmeden büyük / küçük harfe duyarlı olmayan bir Linux bölümüm var. Bu doğru yol. Ve şimdiye kadar, hiç kimse soruyu son 7 yılda tatmin edici bir şekilde cevaplamadı, bu yüzden yapacağımı düşündüm.
— ikilem

Teşekkür ederim, işe aldım. 2020 yılında buna bakan insanlar için, linux çekirdeği 5.2 ve e2fsprogs 1.45 ext4 için kasa katlama desteği eklendiğini unutmayın. Şuna
— Jorge Yanes Diez
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.