chown - İşleme izin verilmiyor


37

Ben minime olarak giriş yaptım.

Neden sahip olduğum dosyayı su imtiyazları olmadan vermeme izin vermediğini anlamıyorum. Açıkçası sudo kullanabilirim ama nedenini anlamak isterim? www-data grubu nedeniyle mi?

chown minime:www-data user-functions.php

ls -lh

-rw-r--r--  1 minime minime    24K Jan  6 16:11 user-functions.php

Error:

chown: changing ownership of `user-functions.php': Operation not permitted

Yanıtlar:


51

Ayrıcalıklı olmayan kullanıcılar (root değil) chowndiğer kullanıcı adlarına dosyalayamaz. Kullanmak için chown, bir kullanıcının hedef kullanıcının ayrıcalıklarına sahip olması gerekir. Başka bir deyişle, rootbir dosyayı yalnızca başka bir kullanıcıya verebilir.

As açıkladı Burada (teşekkürler @slhck):

Yalnızca dosyanın kullanıcı kimliğine eşit etkin bir kullanıcı kimliğine sahip veya uygun yetkilere sahip işlemler bir dosyanın sahipliğini değiştirebilir. _POSIX_CHOWN_RESTRICTED, yol için geçerliyse:

  • Kullanıcı kimliğini değiştirmek, uygun yetkilere sahip işlemlerle sınırlıdır.

  • Grup kimliğini değiştirmek, dosyanın kullanıcı kimliğine eşit, ancak kullanıcı sahibi kimliğine eşitse ve (uid_t) -1 ve gruba eşitse, uygun yetkilere sahip olmayan bir kullanıcı kimliğine sahip bir işleme izin verilir. Çağıran sürecin 'etkin grup kimliğine veya ek grup kimliğinden birine.

Bunun arkasındaki mantık , bu Unix ve Linux cevabındaki @Gilles tarafından güzel bir şekilde açıklanmıştır :

Bu kısıtlamanın nedeni, başka bir kullanıcıya bir dosya vermenin, nadiren, ancak yine de önemli durumlarda kötü şeylerin olmasına izin vermesidir. Örneğin:

  • Bir sistemde disk kotaları etkinse, Alice, yalnızca kendisi tarafından erişilebilen bir dizin altında dünyaca yazılabilir bir dosya oluşturabilir (bu nedenle başka hiç kimse bu dizine yazılabilir dosyaya erişemez) başka bir kullanıcı Bill. Dosya, yalnızca Alice dosyayı kullanabilse bile Bill'in disk kotası altında sayılır.
  • Alice, Bill'e bir dosya verirse, Bill'in bu dosyayı oluşturmadığına dair hiçbir iz yoktur. Dosya yasadışı veya başka bir şekilde tehlikeye atılan veriler içeriyorsa, bu bir sorun olabilir.
  • Bazı programlar, bir isteği doğrulamak için giriş dosyalarının belirli bir kullanıcıya ait olmasını gerektirir (örneğin, dosya programın bu kullanıcı adına uygulayacağı bazı talimatlar içerir). Bu genellikle güvenli bir tasarım değildir, çünkü Bill, sözdizimsel olarak doğru talimatları içeren bir dosya oluştursa bile, bunları belirli bir zamanda yürütmeyi amaçlamamış olabilir. Bununla birlikte, Alice'in keyfi içerikli bir dosya oluşturmasına ve Bill'den girdi olarak alınmasına izin vermek işleri daha da kötüleştirebilir.


Thanks @slhck manSayfayı kontrol ettim ve bundan açıkça bahsedilemedi, cevap güncellendi.
terdon

harika! Şimdi çok açık ... peki ya milime www data grubunun bir parçası ise

@SandroDzneladze Hayır, yemek istediğiniz kullanıcı ile aynı kullanıcı kimliğine sahip olmanız gerekir.
terdon
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.