PHP Exec Solaris svcadm

0 Cevap php

Ben Solaris makinede PHP bir svcadm komutu çalıştırmak için çalışıyorum.

Ben şu anda gerçekten çalıştırmak istiyorum ve svcadm komutu iki komut var aşağıdaki işlevi var.

Ben de bu kodu çok güvensiz ve kamuya maruz asla farkındayım.

private function RestartApacheImmediately(){
    var_dump($this->exec_enabled());
    $output = array();
    $returnvar = "";
    $cmd = 'who 2>&1';
    //$cmd = 'svcadm -v restart apache 2>&1';
    echo $cmd;
    $return = exec($cmd, $output, $returnvar);
    var_dump($output);
    var_dump($return);
    var_dump($returnvar);
}

X ve y: ben kim çalıştırdığınızda, ben iki kullanıcılara olsun.

Hizmet Yönetimi / etc / user_attr içinde profilleri gibi x ve y hem de yapılandırılır.

Bir çalışma yukarıda $ cmd üzerinden yorumladı, ben stderr'e aşağıdaki çıktıyı alıyorum:

svcadm: Could not set restarter_actions/auxiliary_tty property of svc:/network/http:apache: permission denied.

Herhangi bir fikir?

EDIT aşağıdaki gibidir: Çözünürlük oldu:

I, yukarıda tarif edilen yöntemi kullanarak user_attr çalışmak için bu var. Ancak, ne ben keşfettim httpd sunucusu 'kim' komutu yürütülmesi üzerine rapor php farklı bir kullanıcı olarak çalışan olmasıydı. Bu yüzden z oldu, x veya y değildi. Kabuğunda root olarak giriş yaparken basit bir ps-e yaparak bu belirlenir.

0 Cevap