我在用libvirt-php管理我的虛擬機,我需要關閉/銷毀多姆。
為此,我使用了以下 php 腳本:
<? php $conn=libvirt_connect("xen:///");
$name=libvirt_domain_lookup_by_id($conn,4);
$dest=libvirt_domain_destroy($name);
回顯 $dest; ?>
當我在 xampp 伺服器上運行它時,我得到以下輸出:
警告:libvirt_domain_destroy() [function.libvirt-domain-destroy]:禁止操作 virDomainDestroy 在第 5 行的 /opt/lampp/htdocs/xampp/byname.php 中進行唯讀存取。
這是文檔:http://libvirt.org/php/api-reference.html#libvirt_domain_destroy
答案1
根據您的 Apache 版本,您的設定檔可能會駐留在不同的位置,但是一旦找到正確的文件,語法是相同的。
若要變更 Apache 運行的使用者和群組,請在全域範圍內編輯以下指令:
User www-data
Group www-data
www-data
若要建立一個沒有登入權限的系統帳戶,請執行下列命令:
sudo adduser --system --group --no-create-home www-data --quiet
確保此使用者帳戶安全(例如,透過刪除不需要的所有內容的權限)超出了本答案的範圍。嘗試提出「如何限制使用者對檔案系統和命令的存取」之類的問題。
授予 www-data 編輯虛擬機器的權限可能需要將 www-data 新增至具有權限的另一個群組,或需要您修改系統上的檔案群組。
根據常問問題對於 libvirt-php,所有虛擬機器都以本機使用者的權限運行,因此將 www-data 新增至群組users
可能就足夠了。
adduser www-data users