uyarı: Güvensiz dünya yazılabilir yön / usr / local / bin PATH, mod 040777


172

Bu komutu her çalıştırdığımda rails server:

uyarı: Güvensiz dünya yazılabilir yön / usr / local / bin PATH, mod 040777

Burada bir çözüm aradım ve şöyle yazdılar: chmod go-w /usr/local/bin

Ama bu hatayı alıyorum:

chmod: / usr / local / bin'de dosya modu değiştirilemiyor: İşleme izin verilmiyor

Bu arada OS X kullanıyorum.


7
Bir T-Mobile geniş bant USB dongle için yazılımı yükledikten hemen sonra aynı sorunu yaşadım ve bunu yapmaktan sorumlu olup olmadığını merak ediyordum. Herhangi bir şans eseri de dongle kullanıyor musunuz?
Peter Nixey

5
Evet bir Virgin (Avustralya) mobil USB dongle yükledikten sonra anladım
nocache

3
OMG, gerçekten mi? Bu bilgi için teşekkürler! Ayrıca, T-Mobile dongle yazılımını çalıştırmayı denedikten sonra izinlerimin * olduğunu fark ettim.
Oto Brglez

AU (Japon taşıyıcı) tarafından çalışmak için bazı komut satırı sihirbazını gerektiren bir LTE dongle kullanıyorum ...
Nicolas Miari

Yanıtlar:


278

Bunu yapmak için root erişiminizin olması gerekir. Zaten yönetici kullanıcı değilseniz, yönetici olarak oturum açın. Ardından izinleri değiştirmek için 'sudo' kullanın:

sudo chmod go-w /usr/local/bin

Açıkçası, bu, 'sudo' dışında / usr / local / bin'e artık malzeme yükleyemeyeceğiniz anlamına gelecektir, ancak muhtemelen yine de yapmamalısınız.


Yukarıdaki komutu yazarsam: sudo: / etc / sudoers mod 0644, 0440 olmalı Segmentation
error

@Xandman: Segmentasyon hatası ile ilgili ne olduğunu bilmiyorum; programlar bunu yapmamalıdır (özellikle sudo gibi güvenlikle ilgili olanlar). Açıkçası, birisi sisteminizdeki dosya izinleriyle kurcaladı - Onlara isyan eylemini okumanızı tavsiye ederim. Bu arada, muhtemelen bir tavuk ve yumurta durumuyla karşı karşıyasınız; / etc / sudoers üzerindeki izinleri düzeltinceye kadar 'sudo' kullanamazsınız ve 'sudo' kullanmadan / etc / sudoers üzerindeki izinleri düzeltemezsiniz. En iyi düzeltmenin ne olduğundan emin değilim ...
Jonathan Leffler

1
Sanırım o zaman kendimi asmalıyım. Pencerelerden geçiş yaptığımdan beri MAC'imle uğraşıyorum. Bunu bir windows dizüstü bilgisayar yapmaya çalıştı. Muhtemelen aptalca bir şey yaptım
Xandman

1
Yorum için teşekkürler Jonathan, izinleri kontrol etmem için bana bir fikir verdin. İzinleri Disk İzlencesi ile tamir ettim ve şu komutu çalıştırdığımda: sudo chmod go-w / usr / local / bin içinden geçmeyecek.
Xandman

@Xandman: Tekrarlayan bir suçlu olduğunuzu kanıtlayana kadar asmaya gerek yok. "Geçmeyecek" diyorsunuz - ne şekilde çalışmıyor? 'Sudo' ile kendi parolanızı sağlarsınız ('su' ile genellikle hedef kullanıcının kök parolasını sağlarsınız). Bunlardan bazılarını sıralamak için, kök girişini (yönetici olarak Sistem Tercihleri, IIRC) etkinleştirmeniz ve kök olarak düzeltme izinlerine gitmeniz gerekebilir. Bu, kendinizi kendinizi yanlışlıkla asmamanız için yeterli bildiğinizi varsayar. Veya kurulumu sıfırdan yeniden yapmak daha iyi olabilir; izinleri ne kadar değiştirdiğinize bağlıdır.
Jonathan Leffler

63

Burada aynı hatayla karşılaştım MacOSX 10.6.8 - yoldaki herhangi bir dizinin (ebeveynler dahil) dünya yazılabilir olup olmadığını görmek için yakut kontroller gibi görünüyor. Benim durumumda hiçbir şey yaratmadığı için mevcut bir / usr / local / bin yoktu.

bu yüzden yapmak zorundaydım

sudo chmod 775 /usr/local

uyarıdan kurtulmak için.

Burada bir soru, kök olmayan herhangi bir şey: MacOS'taki tekerlek işleminin / usr / local'de bir şey yaratması gerekiyor mu?


9
Evet,775 => root(7) group(7) others(5), 7 => read(4) + write(2) + execute(1), and 5 => read(4) + execute(1)
crizCraig

8

Deneyin: sudo chmod go-w /usr/local/bin

/ Usr / local / bin dizini root(yani yönetici) hesabına aittir , bu nedenle ona yazabilseniz bile, üzerindeki izinleri değiştiremezsiniz. sudoKomut aracı "root olarak aşağıdaki komutu çalıştırın" ve Sistem Tercihleri diyaloglarda bu kilit ikonuna tıklayarak gibi bir çok çalışır.


7

OSX'te de aynı sorunu yaşadım. İzinleri Onarmak için Disk Yardımcı Programları çalıştırılarak düzeltilebilir. Peter Nixey ile aynı fikirdeyim: Benim durumumda 3G dongle'ım sürücüsünü yüklediğinde veya yeniden yüklediğinde ortaya çıkıyor. Daha sonra İzinleri Onarma sorunu çözer.


7

Mountain Lion kullanıyorum. Ne yaptım / usr / local ve Bilgi Al oldu. Üzerinde Paylaşım ve İzinler var. Okuma ve yazma izinlerine sahip olanların yalnızca kullanıcı ve Yönetici olduğundan emin olun. Diğer herkesin yalnızca okuma erişimi olmalıdır. Bu benim sorunumu sıraladı.

Normalde yardımcı olan disk disk yardımcı programları ve onarım izinleri de.


3

Aynı şekilde, görünüşe göre benim / usr / local klasörüm dünya yazılabilirdi, bu yüzden 755 yaptım

# chmod 755 /usr/local

Ayrıca kullandığım bir Hauwei mobil donanım kilidinin de / usr / local dizinine dünya çapında yazılabilir dizinler yüklediği ortaya çıktı


3

OSX çalıştırıyorsanız ve bunu sık sık alıyorsanız, göz önünde bulundurmanız gereken iyi bir şey de yerleşik bir OSX izinleri düzeltme aracı kullanmaktır. Dizinlerinizin modunu değiştirmediyseniz, başka bir şey yaptı ve diğer dizinlerin de aşırı izinlere sahip olma şansı var - bu araç onları fabrika varsayılanlarına sıfırlayacaktır, bu iyi bir güvenlik fikri. Apple yığınında bu süreç hakkında harika bir rehber var .


3

Koşman gerek

sudo chmod o-w -R /usr/local 

2
benim için -R doğrudan chmod sonra olmalısudo chmod -R o-w /usr/local/
bormat

2

Ben bile benzer bir sorunla karşılaştım. Ubuntu 12'de KDE kullanıyorum ve ana klasörümde oynarken Grup ve Diğerleri için izinleri, ana klasöre sağ tıklayıp özellikleri görüntüleyip "içeriği görüntüleyebilir ve değiştirebilir" olarak yanlışlıkla değiştirdim ve hepsini unuttum.

Uyarım şuydu:

warning: Insecure world writable dir /home/my_home_folder in PATH, mode 040777

Yani benim durumumda ev klasörü oldu. İzin değişikliklerini çözdüm ve testlerimi çalıştırmak için raylar sunucusunu veya komisyon görevlerini çalıştırırken bu uyarıları almayı bıraktım.


1

Ayrıca OSX Snow lepard'da hem / usr / local / bin ve / etc / sudoers ile aynı problemi yaşıyorum. Yönetici olarak giriş yaptığımda ve terminal aracılığıyla izinleri değiştirmeye çalıştığımda bile, yine de "İşlem değil " izin verdi. Ve bu klasörlerin iznini almak için aşağıdakileri yaptım.

Terminalden, / etc / sudoers dosyasına eriştim ve pico editörü kullanarak aşağıdaki kodu ekledim: username ALL = (ALL) ALL "username" yerine MAC OS hesap adınızı yazın


0

MacOSX 10.11 burada aynı hatayı vardı - yoldaki herhangi bir dizinin (ebeveynler dahil) dünya yazılabilir olup olmadığını görmek için yakut kontrolleri gibi görünüyor. Benim durumumda hiçbir şey yaratmamış gibi / usr / local / bin mevcut değildi.

Terminalinizde bu komutu çalıştırın. Sudo chmod 775 / usr / local komutunu deneyin Mac'inizde herhangi bir parolanız varsa, parolayı girmeniz gerekir. Şimdi bu sorun düzeltilecek.


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.