Utilisez proc_open qui vous permet de créer un tube personnalisé pour alimenter les données (mot de passe de l'utilisateur) lorsque vous y êtes invité. Voir les commentaires sur le lien pour les moyens de créer un tuyau de mot de passe personnalisé.
Mettez à jour, puisque vous ne pouvez pas lire.
Snippet de commentaire par snowleopard à point amusées NOSPAMPLEASE point au com dot au 05 juin 2008 02h46 au deux fois auparavant lien mentionné. Vous avez juste besoin d'appliquer cela à votre propre situation.
// Set up the descriptors
$Descriptors = array(
0 => array("pipe", "r"),
1 => array("pipe", "w"),
2 => array("pipe", "w"),
3 => array("pipe", "r") // This is the pipe we can feed the password into
);
// Build the command line and start the process
$CommandLine = $GPGPath . ' --homedir ' . $HomeDir . ' --quiet --batch --local-user "' . $Identity . '" --passphrase-fd 3 --decrypt -';
$ProcessHandle = proc_open($CommandLine, $Descriptors, $Pipes);
if(is_resource($ProcessHandle)) {
// Push passphrase to custom pipe
fwrite($Pipes[3], $PassPhrase);
fclose($Pipes[3]);
Utilisez visudo pour effectuer l'édition. –
vi est douloureux, mais avec nano, vous pouvez sérieusement bousiller le fichier sudoers ... me suis bloqué une fois sur une instance ec2, parce que je ne pouvais pas sudo: P –
@PeteHerbertPenito: Vous pouvez utiliser nano avec visudo. Ajoutez simplement la ligne 'Defaults editor =/usr/bin/nano' ou similaire à vos sudoers. Ensuite, à l'avenir, utilisez toujours 'visudo'! Il vérifie la syntaxe pour vous. –