Çıkış dosyası, istemci işleminiz tarafından değil, mysqld işlemi tarafından oluşturulur. Bu nedenle çıktı dosyasının mysqld işleminin uid ve gidine ait olması gerekir.
Bir uid altındaki bir işlemden veya dosyaya erişebilen bir adımdan erişiyorsanız, dosyaya erişmek için sudo yapmaktan kaçınabilirsiniz. Başka bir deyişle, mysqld, uid'e ait dosyaları ve "mysql"/"mysql" komutlarını yaratırsa, kendi hesabınızı "mysql" grubuna ekleyin. Ardından, dosyanın izin moduna grup erişimi de dahil olmak kaydıyla, dosyaya erişebilmeniz gerekir.
Düzenleme:
Sen rwxrwxrwt bir dizin izni modu ile,/tmp dosya siliyorsunuz. Yapışkan biti ('t'), dosya veya dizin üzerindeki izinlerden bağımsız olarak, uid dosyanızın sahibi ile aynıysa dosyaları kaldırabileceğiniz anlamına gelir.
Çıktı dosyanızı yapışkan biti olmayan başka bir dizine kaydederseniz, dosyayı normal şekilde çıkarabilmeniz gerekir.
yapışkan (8) için kılavuz sayfasında bu pasaj oku
YAPIŞKAN DİZİNLERİNİZİ
bir dizin 'yapışkan 'biraz ayarlanır ya da daha doğru bir ekleme okunur dizin olur, dosyaların silinmesinin kısıtlandığı bir dizin. Yapışkan bir dizindeki bir dosya, kullanıcı dizin için yazma izni varsa ve kullanıcı dosyanın sahibi, dizinin sahibi veya süper kullanıcısa, yalnızca bir kullanıcı tarafından kaldırılabilir veya yeniden adlandırılabilir. Bu özellik, genel olarak yazılabilir olması gereken/tmp gibi dizinlere yararlı bir şekilde uygulanır, ancak kullanıcılara, diğerlerinin dosyalarını rasgele silme veya yeniden adlandırma lisansını reddetmelidir.
yapabilir bu kadar "mysql"/"mysql" ve modifiye 666. Ekledim kendimi mysql grubuna yazdım ve hala onu silemiyorum. –
Dosyanın bulunduğu dizinde sahiplik ve izinler nelerdir? –
I * bence * Bill'in UNIX'teki bir dosyayı silebilmek için (bu, dir listelemeyi günceller) içeren direkte yazma izninizin olması gerekir. Yani "chgrp mysql" dir ve "chmod ug + rwX" mysql-group kullanıcısına direk yazma izni verir. – joelhardi