Bash 检查SeLinux状态
我想使用以下代码检查SeLinux的状态,例如强制、允许、禁用。如果状态为“其他”然后为“已禁用”,则我将建议用户禁用Selinux 我正在一个.sh文件中运行以下内容。SeLinux的当前状态是允许的。运行以下代码将在else子句中结束Bash 检查SeLinux状态,bash,centos7,Bash,Centos7,我想使用以下代码检查SeLinux的状态,例如强制、允许、禁用。如果状态为“其他”然后为“已禁用”,则我将建议用户禁用Selinux 我正在一个.sh文件中运行以下内容。SeLinux的当前状态是允许的。运行以下代码将在else子句中结束 #! /bin/bash SELINUXSTATUS=getenforce; if [ "$SELINUXSTATUS" == "Permissive" ]; then echo "Disable SeLinux"; else echo "
#! /bin/bash
SELINUXSTATUS=getenforce;
if [ "$SELINUXSTATUS" == "Permissive" ]; then
echo "Disable SeLinux";
else
echo "All Good. Continue...";
fi;
试一试
当前,您的脚本只需将
selinux状态设置为文本字符串getenforce
$(command)
是bash
中的魔法,它运行命令并捕获其输出。您必须使用SELINUXSTATUS=$(getenforce)
。
现在,变量SELINUXSTATUS只是字符串“getenforce”。正如@Jon所说:
SELINUXSTATUS=$(getenforce)
运行getenforce
commandf,捕获其输出并将变量设置为该值。或者
SELINUXSTATUS=`getenforce`
做同样的事情。(请注意,这些是反引号…不是常规单引号。)
但是请注意,getenforce
有三种可能的结果;i、 e.禁用
,允许
和强制执行
哇,谢谢你,伙计。我将在几分钟内把这标记为一个答案。
SELINUXSTATUS=`getenforce`