Tüm yollarda Cygwin'in / cygdrive önekinden nasıl kurtulurum?


36

Git için Windows ile birlikte gelen ve acayip bir sorunla karşılaşan bash kabuğundan Cygwin'e geçiyorum. Birisi /cygdrive/tüm yollara eklemenin iyi bir fikir olacağını düşünürken, bunun korkunç bir çirkin fikir olduğunu düşünüyorum. Bunu ekleyerek kısmen düzeltebileceğimi belirleyebildim.

mount --change-cygdrive-prefix /
export HOME=/c/Users/BZISAD0

.bashrc dosyamda, fakat PATH değişkenine bir göz atarsam, her şeyde hala / cygdrive / var. Herhalde PATH'i düzeltmek için bir senaryo yazabilirim ama bu zaten yaptığımdan daha kludgey. Daha iyi bir yol olmalı ve ben orada oldukça eminim beri seyahatseverlerin Git en bash kabuk kullanımları (AFAIK) Cygwin eski bir sürümü ve her nasılsa şekilde yapılandırılmış değil başa getirebilir /cygdriveher yerde. Peki, "Emme" düğmesini nasıl sıfıra çevirebilirim?

Gary Larson çizgi

Yanıtlar:


39

/ Etc içinde dolaşmak , Googling’in yapmadığı bir bağlantıyı buldu . Görünüşe göre bunu dosyada kontrol edebilirsiniz /etc/fstab. Sadece yazan bir satır ekle

none / cygdrive binary 0 0

ve problem çözülmeli. Daha fazla kludgey .bashrc dosyasında düzeltmelere gerek kalmadı ve karışıklığa yol açacak $ PATH.


2
Bu yöntemi kullandım ve şimdi yapmaya çalıştığımda ls /, Windows sürücüleri görünmüyor. Kullanırken bile değil ls -l /. Bu bekleniyor mu? Düzeltilebilir mi? Bu fstab içinde ne var:none / cygdrive binary,posix=0,user,acl 0 0
Tibi

Camları sürmenin bir yolu olduğunu bilmiyordum /. Daha önce de aldın mı? (Ya da /cygdrive/?) Her zaman sadece hangi Windows sürücülerini kullanabileceğimi bilmek zorunda olduğum gerçeğiyle yaşadım ve zaten kullanmıyorum.
iconoclast

1
Evet, ls /cygdriveWindows sürücülerini listelemelisiniz. Mesela benim için çıktı c/ e/ f/. Sürücülerin klasörler gibi nasıl işlendiğini unutmayın.
Kat

1
Bu sadece yarısı çalışıyor. İki montaj parçası (gerçek /ve cygdrive) üst üste binmiştir. Kullandığınız sürücüler de alabilirsiniz: Yani /c, vb - ama onlar bir parçası olarak listelenen hiçbir zaman /. Bence gerçek listeleme /içeriğini gizliyor cygdrive. Bunun teknik olarak tanımsız bir davranış olup olmadığını ve akla yatkın bir şekilde bir şeyleri kırabileceğini merak ediyorum. Her neyse, birlikte çalıştığım bir şeyi görmeyi tercih ettiğim için seçim yapıyorum /mnt.
underscore_d

1
@Tibi Eğer mkdir c'ye (veya sürücünüzün adı ne olursa olsun) cd 'ye ve sonra yaparsanız, bu sürücünün takma noktasını boş bir dizine yazmak yerine ls'ye görünür kılacağını keşfettim. Kim düşünebilirdi?
barksdml

10

Birinci yöntem

mount -c /
mount -m > /etc/fstab

İkinci yöntem

echo - / cygdrive acl > /etc/fstab

Örnek


bunu yapmadan önce ve sonra (yöntem 1), /cygwin64 kök dizinine atıfta bulundu ve cd /cişe yaramadı. cd /cİş yapmak için yapmam gerekiyordu mount c: /c.
MM,

/chiç çalışmamalıydım, benim çözümüm bunu hiç
Steven Penny

2
"/ Cygdrive'ın yollarda nasıl kurtulacağını", "/ cgdrive / c yerine / c'nin çalışmasına nasıl izin verileceği" (ve benzer şekilde diğer harfler için) anlamına gelir. PATH'im şimdi gerçekten de / cygdrive / c / bla yerine / c / bla gösterisini gösteriyor
MM

1
2.9.0 (0.318 / 5/3) 2017-09-12 10:18 x86_64 Cygwin, kullanıcının yapmasına cd /cya da yapmasına izin verecek bir yöntemle yapıyor cd c:. cd /Hala kullanarak cygwin64 dir.
Marcel Wilson,

1

Evet, mount çalışması gerekir.

mount -c /

Hâlâ girdileri varsa PATHbakın /cygdrive, o zaman muhtemelen sadece yeniden başlatma gerekir.

Herhangi olup olmadığını da kontrol PATHayarları /etc/profileişaret ettiğini /cygdrive.


Cygwin’i yeniden başlatmak veya tüm makineyi yeniden başlatmak mı demek istiyorsun?
iconoclast

Tüm Cygwin tabanlı süreçleri sonlandırmanız gerektiğini düşünüyorum . Bunu yapmanın en kolay yolu, makineyi yeniden başlatmaktır.
Mikel

Kendi sorularıma cevaplar bulduğumda normalde başkalarının cevaplarını tercih ediyorum, ancak sizinki yeniden başlatma (veya bunun simülasyonunu gerektiriyor) ve benimki cygwin'in belgelerinde bulunan benim olduğu için benimki ile gidiyorum.
iconoclast

Sizinki yeniden başlatmadan çalıştıysa, elbette ki!
Mikel

Ancak makineyi yeniden başlatırsam, bu değişiklik gider. Fstab’da depolananlara geri dönün.
rustyx
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.