dosya sistemi izinleri farklı makinelerde geliştirirken

2 Cevap php

Ben (apache + mysql + php) Ben webapp gelişimi için, farklı linux makinelerde kullandığınız bir taşınabilir hacminin (bir usb sürücüde truecrypt hacmi) yığını bir xampp yüklü.

Bu hacim ext3 olarak biçimlendirilmiş, bu yüzden her makinede aynı kullanıcı olamaz gibi ben izinleri sorunlarla çalıştırılır. Örneğin ben bir projenin git durum diğer makine başladı ve erişim engellendi kontrol etmeye çalıştı.

Ben benzer bir sorun koştu son kez ben chmod 777 mi (ya da chown oldu?) Bütün dizin, bu yüzden benim php dosyaların izin durumu dağınık sanırım. Ben de git dosya ve ben son zamanlarda yüklü symfony web çerçeve gibi özel durumlarda endişe duyuyorum bu sefer.

How should I deal with this situation? I would love to set this permission issue properly.

İlginiz için teşekkürler çok.


Edit : I may need to write a script to locally "sudo chown lampp:lamppusers" each time I use a different machine. Or some git voodoo trick with local-only repositories export? Any idea?

2 Cevap

Bu bulduğum en iyi çözüm gibi görünüyor:

sudo chown -R polypheme:lamppusers webdir

Bu şekilde ben yine benim yerel kullanıcı adı ve benim yerel grup ile tüm dizin sahibi olabilir.

  • Polypheme bir kullanıcı adı
  • lamppusers bir groupname olduğunu
  • webdir tüm web geliştirme dosyalarını içeren dizini

Note that on computer 1 my username is polypheme and I belong to the group lamppusers, and on computer 2 my username is polypheme and I belong to the group lamppusers. The usernames and groupnames are exactly the same. I am not 100% sure this would work perfectly if names happened to be different.

Sorun sadece bir küresel her dosya izni düzleştirmek çok daha karmaşık olduğu gibi ben iyi herhangi chmod değiştirmediniz

chmod -R 744 webdir

Bu Symfony çerçevesinde korumalı dosyaları ile yapmak yanlış bir şey olurdu. Ve. Git / dosyalar çok sanırım. (Gbjbaanb bu konuda haklıydı)

Bu noktada, ben arıyordum ne olduğunu diğer makine, üzerinde olması için kullanılan aynı yapılandırmayı iyileşti. Ben tekrar çalışabilirsiniz.

Knowing this, my question suddenly seems stupid. Well, the multi-computer context makes it tricky enough to be valuable. (To me at least)

(This answer will be validated as soon as it has been properly tested)

Yerine her zamanki izni SELinux'un ACL kullanarak deneyebilirsiniz, ama ben senin için overkill olacağını düşünüyorum - Ben böyle bu yuvarlak bir şekilde olduğunu sanmıyorum.

Ben her kullanıcı her makinede farklı olacak olan kullanıcı ve grup olarak, sadece (chown sahipliğini değiştirir) chmod 777 bütün dizin ayarı tavsiye ederim, gerçekten iyi yapamaz. Burada tek sorun güvenlik - ama onun kendi amaçları için yerel kutuda, ben bir sorun görmüyorum. Size en doğru şekilde erkene istiyorum, bunun üzerine sunucuya dosyaları kopyalamak kadar olmaz.

LDAP sunucusu kimlik doğrulaması deneyebilirsiniz, girdiğiniz kullanıcı adı için uid almak istiyorum ve bu her PC'de aynı kimliği ile eşleştirilir, böylece daha sonra bir kez grup veya sahibini ayarlayabilirsiniz. (Sanırım, LDAP ud dönüşümler ile daha deneyimli birine sormak gerekiyor).