Je semble être coincé entre une limitation NFS et une limitation Cron. J'ai donc le cron racine (sur RHEL5) qui exécute un script shell qui, entre autres choses, doit rsync certains fichiers sur un montage NFS. Et les fichiers sur le montage NFS sont la propriété de l'utilisateur apache avec le mode 700, donc seul l'utilisateur apache peut exécuter la commande rsync - en cours d'exécution comme root génère une erreur d'autorisation (NFS étant un cas rare, apparemment Quand je veux juste exécuter le rsync à la main, je peux utiliser "sudo -u apache rsync ..." Mais pas de travail dans cron - il dit "sudo: désolé, vous doit avoir un tty pour exécuter sudo ". Je ne veux pas exécuter le script entier en tant qu'apache (c'est-à-dire depuis la commande crontab d'Apache) car d'autres parties du script requièrent root - c'est juste une commande qui doit être exécutée en tant qu'apache. Et je préférerais vraiment ne pas changer le mode sur les fichiers, car cela impliquera des changements significatifs à d'autres applications.Comment exécuter une commande en tant qu'utilisateur différent d'un cronjob racine?
Il doit y avoir un moyen d'accomplir "sudo -u apache" de cron ??
merci! voler
Pourrait être mieux servi en déplaçant cela sur SuperUser.com. – Robert
Il s'agit d'une vieille question, mais elle est toujours très bonne dans les classements de recherche, et aucune des réponses n'aborde les raisons pour lesquelles les autorisations root ne s'appliquent pas au montage NFS. Pour quelqu'un d'autre qui trébuche sur cela, la raison est root_squash. Ce blog a une explication assez décente pour laquelle cette option est nécessaire et généralement définie par défaut. http://fullyautolinux.blogspot.com/2015/11/nfs-norootsquash-and-suid-basic-nfs.html – BryKKan