KVM实例由于selinux设置导致报错error

文章描述了在遇到virsh启动虚拟机时由于SELinux配置问题产生的错误,即使关闭SELinux后问题依然存在。解决方案包括检查并修改虚拟机配置文件中的SELinux标签,或者清除保存的VM状态。此外,还列举了一些kvm管理和虚拟机操作的命令。
摘要由CSDN通过智能技术生成

virsh start name

error: Failed to start domain freeipa
error: unsupported configuration: Unable to find security driver for model selinux
在这里插入图片描述
在这里插入图片描述
看报错和日志基本确定是selinux的原因,但系统关闭selinux并重启以后依旧报错。查资料知晓原因:
由于机器开机状态时,将SElinux的状态信息save在虚拟机中,导致SElinux关闭之后,虚拟找不到对应的label,从而导致vm启动失败。

解决:

virsh edit domain_name查看虚拟机的配置文件中,是否有selinux标签的相关设置,如果有,则将其删除,再启动vm。
vr edit 对应实例,搜索selinux,将该行标签删除,重启成功。

如果没有,则可能已经保存在vm状态中,将原有的状态删除即可(对应路径/var/lib/libvirt/qemu/save),
如下:

virsh managedsave-remove 对应实例

kvm 管理命令

virt-install --virt-type=kvm --name=slavec --vcpus=16 --memory=16384 --location=/home/iso/CentOS-7-x86_64-Minimal-1708.iso --disk path=/home/kubernetes/slavec/slavec.qcow2,size=500,format=qcow2 --network bridge=br0 --graphics none --extra-args='console=ttyS0' --force
命令行管理虚拟机

virsh list          列出当前宿主机上处于运行状态的虚拟机

virsh list --all   列出当前宿主机上所有的虚拟机

virsh start vm1 (虚拟机name) 开启某一台虚拟机

virsh shutdown vm1  (虚拟机name) 正常关闭一台虚拟机

virsh destroy vm1     强制关闭某一台虚拟机

virsh autostart vm1   开机自启动虚拟机vm1

virsh autostart --disable vm1 关闭开机自启动

virsh edit vm1  编辑某个虚拟机的配置文件

virsh pool-list  列出存储池

 virsh snapshot-list vm1 查看虚拟机VM1的快照  (vm1是kvm的虚机的名字)

 virsh snapshot-create-as --domain vm1 --name vm1_20200824 --description "success" 创建kvm快照

 virsh snapshot-info --domain vm1 --snapshotname vm1_20200824 查看快照的消息信息

 qemu-img info /var/lib/libvirt/images/snaptestvm.img 查看kvm快照大小(未测试)

 # virsh snapshot-revert vm1 vm1_20200824 还原虚拟机vm1的快照

 virsh snapshot-delete --domain vm1 --snapshotname vm1_20200824 删除虚拟机vm1的快照 
(先查看快照信息,在进行删除)

——————————————————————————————————————
2)创建新磁盘
qemu-img create -f qcow2(指定磁盘格式) -o size=9G(指定大小) /var/lib/libvirt/images/haha.qcow2(路径和名称)
/var/lib/libvirt/image/为磁盘镜像的默认路径。

3)查看磁盘情况

qemu-img info 磁盘名

4)命令行下创建 && 管理虚拟机

Virt-install: 命令行下创建虚拟机的命令,不过在它后面需要跟上很多的参数
   --name: 虚拟机的名字。
   --disk Location: 磁盘映像的位置。
    --graphics : 怎样连接 VM ,通常是 SPICE 。
   --vcpu : 虚拟 CPU 的数量。
   --ram : 以兆字节计算的已分配内存大小。
   --location : 指定安装源路径
    --network : 指定虚拟网络,通常是 virbr0 或者自己设定的 br0
在Android系统中,SELinux是一种强制访问控制机制,用于保护Android设备免受恶意应用程序和攻击的影响。当系统运行过程中出现SELinux报错时,我们需要对这些报错进行统计和分析,以便更好地了解系统的安全状况。 Android中的SELinux报错通常会被记录在内核日志中,我们可以通过以下步骤来统计这些报错: 1. 获取内核日志:要统计SELinux报错,我们需要首先获取内核的日志信息。可以通过adb工具或第三方应用程序来获取设备的内核日志。 2. 过滤SELinux报错:在获取到内核日志后,我们需要将日志中与SELinux相关的报错进行筛选和提取。可以使用关键词过滤或正则表达式匹配来寻找与SELinux有关的日志条目。 3. 统计报错数量:一旦筛选出SELinux报错,我们可以通过遍历日志文件并计数相应的报错条目来统计报错数量。可以使用脚本或编程语言来自动化这个过程。 4. 分析报错原因:除了统计报错数量,我们还需要对报错进行分析,了解具体的原因和背后的问题。可以查阅相关文档、论坛或专业资料,学习和理解不同类型的SELinux报错,并提供相应的解决方案。 5. 提取关键信息:在分析SELinux报错后,我们可以提取出其中的关键信息,如报错发生的时间、报错的应用程序或进程、报错的具体内容等。这些信息可以帮助我们更好地定位和解决问题。 总结起来,要统计Android中的所有SELinux报错,需要获取内核日志、过滤SELinux报错、统计报错数量、分析报错原因并提取关键信息。这将帮助我们更好地了解系统安全状态,并及时采取措施解决潜在的问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值