Bir NFS sınırlaması ve bir Cron sınırlaması arasında sıkışmış gibi görünüyor.
Bu yüzden, diğer şeylerin yanı sıra, bazı dosyaları bir NFS bağdaştırıcısı üzerinde rsync gereken bir kabuk betiği çalıştıran (RHEL5 üzerinde) kök cron'um var. Ve NFS mount'undaki dosyalar, mod 700 ile apache kullanıcısına aittir, bu nedenle sadece apache kullanıcısı rsync komutunu çalıştırabilir - root olarak çalışan bir izin hatası verir (NFS, nadir bir durumdur, görünüşte, root kullanıcısının nerede olduğu) tümüyle güçlü değil?)
Sadece rsync'i elle çalıştırmak istediğimde, "sudo -u apache rsync ..." yi kullanabilirim. Ama sudo cron'da hiçbir workie yok - "sudo: pardon, sudo 'yu çalıştırmak için bir tty'ye sahip olmalısınız" diyor.
Tüm betiği apache (yani apache'nin crontab dosyasından) olarak çalıştırmak istemiyorum çünkü betiğin diğer kısımları root gerektiriyor - bu sadece apache olarak çalıştırılması gereken bir komut. Ve gerçekten diğer uygulamalarda önemli değişiklikler içereceğinden, dosyalardaki modu değiştirmemeyi tercih ederim.
Cron'dan "sudo -u apache" yi başarmanın bir yolu olmalı?
Teşekkürler! soymak