linux宽松模式,SELinux 宽容模式(permissive) 强制模式(enforcing) 关闭(disabled) 几种模式之间的转换...

SELinux 宽容模式(permissive) 强制模式(enforcing) 关闭(disabled) 几种模式之间的转换

在Android的root相关的文章里经常会看到关于SElinux,Android4.3以后引进SElinux。

###SELinux 的启动、关闭与查看

1、并非所有的 Linux distributions 都支持 SELinux

目前 SELinux 支持三种模式,分别如下:

•enforcing:强制模式,代表 SELinux 运作中,且已经正确的开始限制 domain/type 了;

•permissive:宽容模式:代表 SELinux 运作中,不过仅会有警告讯息并不会实际限制 domain/type 的存取。这种模式可以运来作为 SELinux 的 debug 之用;

•disabled:关闭,SELinux 并没有实际运作。

2,查看SELinux的模式

# getenforce Enforcing <==就显示出目前的模式为 Enforcing

3,查看 SELinux 的政策 (Policy)?

[root@master oracle]# sestatus

SELinux status: enabled <==是否启动 SELinux

SELinuxfs mount: /selinux <==SELinux 的相关文件资料挂载点

Current mode: enforcing <==目前的模式

Mode from config file: enforcing <==设定档指定的模式

Policy version: 21

Policy from config file: targeted <==目前的政策为何?

4,通过配置文件调整SELinux的参数

[root@www ~]# vi /etc/selinux/config

SELINUX=enforcing <==调整 enforcing|disabled|permissive

SELINUXTYPE=targeted <==目前仅有 targeted 与 strict

5,SELinux 的启动与关闭

【重要常识】上面是预设的政策与启动的模式!你要注意的是,如果改变了政策则需要重新开机;如果由 enforcing 或 permissive 改成 disabled ,或由 disabled 改成其他两个,那也必须要重新开机。这是因为 SELinux 是整合到核心里面去的, 你只可以在 SELinux 运作下切换成为强制 (enforcing) 或宽容 (permissive) 模式,不能够直接关闭 SELinux 的!

同时,由 SELinux 关闭 (disable) 的状态到开启的状态也需要重新开机啦!所以,如果刚刚你发现 getenforce 出现 disabled 时, 请到上述文件修改成为 enforcing 吧!

【重点】如果要启动SELinux必须满足以下两个点:

所以,如果你要启动 SELinux 的话,请将上述的 SELINUX=enforcing 设定妥当,并且指定 SELINUXTYPE=targeted 这一个设定, 并且到 /boot/grub/menu.lst 这个文件去,看看核心有无关闭 SELinux 了呢?

[root@www ~]# vi /boot/grub/menu.lst

default=0

timeout=5

splashimage=(hd0,0)/grub/splash.xpm.gz

hiddenmenu

title CentOS (2.6.18-92.el5)

root (hd0,0)

kernel /vmlinuz-2.6.18-92.el5 ro root=LABEL=/1 rhgb quiet selinux=0

initrd /initrd-2.6.18-92.el5.img

如果要启动 SELinux ,则不可以出现 selinux=0 的字样在 kernel 后面!

【问题】通过上面的学习我们知道,如果将启动着的SELinux改为禁用,需要重启电脑,我们不想重启电脑又不想开启SELinux该怎么办呢?

【答案】将强制模式改为宽松模!

[root@www ~]# setenforce [0|1]

选项与参数:

0 :转成 permissive 宽容模式;

1 :转成 Enforcing 强制模式

范例一:将 SELinux 在 Enforcing 与 permissive 之间切换与查看

[root@www ~]# setenforce 0

[root@www ~]# getenforce Permissive

[root@www ~]# setenforce 1

[root@www ~]# getenforce Enforcing

6,查看已启动程序的type设定

[root@master oracle]# ps aux -Z

LABEL USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

system_u:system_r:init_t root 1 0.0 0.4 2060 520 ? Ss May07 0:02 init [5 system_u:system_r:kernel_t root 2 0.0 0.0 0 0 ? S< May07 0:00 [migra] system_u:system_r:kernel_t root 11 0.0 0.0 0 0 ? S< May07 0:00 [kacpi] system_u:system_r:auditd_t root 4022 0.0 0.4 12128 560 ? S

说明:其实这些东西我们都不用管,都是SELinux内置的。只要学会在强制和宽松模式间转换就行了!

小结附:

关闭SELinux的方法:

修改/etc/selinux/config文件中的SELINUX="" 为 disabled ,然后重启。

如果不想重启系统,使用命令setenforce 0

注:

setenforce 1 设置SELinux 成为enforcing模式

setenforce 0 设置SELinux 成为permissive模式

在lilo或者grub的启动参数中增加:selinux=0,也可以关闭selinux

#---------------------------------------------------------------

查看selinux状态:

/usr/bin/setstatus -v

如下:

SELinux status:                 enabled

SELinuxfs mount:                /selinux

Current mode:                   permissive

Mode from config file:          enforcing

Policy version:                 21

Policy from config file:        targeted

getenforce/setenforce查看和设置SELinux的当前工作模式

#-----------------------------------------------------------------------

查看SELinux状态:

1、/usr/sbin/sestatus -v ##如果SELinux status参数为enabled即为开启状态

SELinux status: enabled

2、getenforce ##也可以用这个命令检查

关闭SELinux:

1、临时关闭(不用重启机器):

setenforce 0 ##设置SELinux 成为permissive模式

##setenforce 1 设置SELinux 成为enforcing模式

1

2、修改配置文件需要重启机器:

修改/etc/selinux/config 文件

将SELINUX=enforcing改为SELINUX=disabled

重启机器即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/561510.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux vim emmet,前端开发神器Emmet.vim使用笔记

Emmet.vim的安装请看&#xff1a;http://www.cnblogs.com/yunie-akira/p/3554065.htmlEmmet.vim简介Emmet,原来叫Zen Coding&#xff0c;由Sergey Chikuyonok开发&#xff0c;是快速开发HTML和CSS的编辑器插件。支持 Sublime Text、Notepad、Eclipse等等。官方的Emmet并不支持v…

深度Linux修改分辨率6,Deepin 修改自定义分辨率

之前我有篇文章是写显示器超频问题&#xff0c;当时感觉Deepin超频麻烦&#xff0c;折腾换成了Win10&#xff0c;但用了断时间后&#xff0c;感觉Win10真的不好用&#xff0c;夜览模式软件适配差&#xff0c;CPU占用率高&#xff0c;字体颗粒感强&#xff0c;显示器看着眼睛很累…

linux标准i o实例,9.3. 一个 I/O 端口例子

## 9.3. 一个 I/O 端口例子我们用来展示一个设备驱动内的端口 I/O 的例子代码, 操作通用的数字 I/O 端口; 这样的端口在大部分计算机系统中找到.一个数字 I/O 端口, 在它的大部分的普通的化身中, 是一个字节宽的 I/O 位置, 或者内存映射的或者端口映射的. 当你写一个值到一个输…

linux下如何bash文件,Linux系统的文件管理命令及bash的相关工作特性

一、Linux系统的文件管理命令&#xff1a;1 \pwd:printing working directory2 \cd:change directory cd [/PATH/TO/SOMEDIR/]可带可不带&#xff0c;切换回家目录&#xff1b;注意&#xff1a;bash中~表示家目录&#xff1b;cd ~&#xff1a;切换回自己的家目录&#xff…

2019浙江C语言二级答案,2019年下半年二级C语言试题及答案

机遇总是有的&#xff0c;如果把握不住&#xff0c;不要怨天忧人&#xff0c;原因只是自己不够优秀&#xff1b;不要把时间当垃圾处理&#xff0c;唯有珍惜光阴、努力刷二级C语言试题&#xff0c;才能提升生命的质量。1)若有以下语句&#xff1a;typedef struct S{ int g;char …

c语言鸡兔同笼的程序,C语言:鸡兔同笼问题

鸡兔同笼。已知鸡兔总头数为h(设为30)&#xff0c;总脚数为f(设为90)&#xff0c;求鸡兔各几只。代码一&#xff1a;#includemain(){int h,f,x,y;printf("请输入总头数和总脚数:");scanf("%d%d",&h,&f);x2*h-f/2;yf/2-h;printf("总头数为%d,总…

c语言成绩管理系统开题报告,学生信息管理系统,开题报告(共篇).doc

学生信息管理系统,开题报告(共篇).doc学生信息管理系统,开题报告(共10篇)&#xff1a;开题 信息管理系统 报告 学生 论文开题报告有查重吗 居民信息网络管理系统 学生信息管理系统c语言篇一&#xff1a;学生信息管理系统开题报告毕 业 设 计(论 文)开 题 报 告题目&#xff1a;…

计算机二级c语言填空题答案唯一吗,计算机二级C语言上机填空题及答案.doc

计算机二级C语言上机填空题及答案2、给定程序中&#xff0c;函数fun的功能是建立一个NN的矩阵。 矩阵元素的构成规律是&#xff1a;最外层元素的值全部为1&#xff1b;从外向内第2层元素的值全部为2&#xff1b;第3层元素的值全部为3&#xff0c;…依次类推。例如&#xff0c;若…

C语言字符串倒排,C语言兑现简单的倒排文件索引

C语言实现简单的倒排文件索引inver.h文件#ifndef INVERT_FILE_H#define INVERT_FILE_H#include#includetypedef struct _invertfile_ {unsigned int tablelen;void **table;//unsigned int offset;unsigned int nodecount;}if_t;typedef struct _word_{unsigned int id;unsigne…

c语言 段位,C语言 段位

C语言允许在一个结构体中以位为单位来指定其成员所占内存长度&#xff0c;这种以位为单位的成员称为“位段”或“位域”在结构体中位段的定义格式为&#xff1a;unsignede &#xff1a;&#xff1b;例如&#xff1a;structbytedata{unsigned a:2; /*位段a,占2位*/unsigned b:6;…

win10定时关机c语言,win10定时关机在哪?win10设置定时关机的三种方法

win10定时关机在哪&#xff1f;很多win10用户可能还不会设置定时关机&#xff0c;下面脚本之家小编就给大家带来win10设置定时关机的三种方法&#xff0c;一起来看看吧&#xff01;方法一&#xff1a;Win10定时关机命令&#xff1a;shutdown –s –t 3600后面的3600代表秒&…

c语言中ndigit用法,求C语言中头文件及函数的含意的总分类

ALLOC。H 说明内存管理函数(分配、释放等)。ASSERT。H 定义 assert调试宏。BIOS。H 说明调用IBM—PC ROM BIOS子程序的各个函数。CONIO。H 说明调用DOS控制台I/O子程序的各个函数。CTYPE。H 包含有关字符分类及转换的名类信息(如 isalpha和toascii等)。DIR。H 包含有关目录和路…

Android实现自定义相册,在Android Gallery App中创建自定义相册

您可以使用这种方式在Gallery应用中创建相册.该名称显示为“app images”.String path Environment.getExternalStorageDirectory().toString();File dir new File(path, "/appname/media/app images/");if (!dir.isDirectory()) {dir.mkdirs();}File file new Fi…

android 多级分组,android 二级菜单(类似QQ分组)

注意点&#xff1a;1)适配器BaseExpandableListAdapter2)数据源(数组、集合都行)(重点)/*** Created by mb on 2014/11/18.* 二级菜单适配器*/public class MyExpandableListAdapter extends BaseExpandableListAdapter {private Context context;List groups;//String [] grou…

android 清理工具,Android 版 Avira Optimizer 是 Android 手機清理工具

隨著時間推移&#xff0c;應用程式、相片、視訊和音樂會塞滿您的手機或平板電腦&#xff0c;拖慢系統性能。適用於 Android 的 Avira Optimizer 是最佳的 Android 清理工具&#xff0c;其中包括&#xff1a;Smart Booster如需加快開機、優化流程和實現流暢的 Android 設備&…

android编译日志在哪,Android编译环境中的JDK存放位置

this.p{ m:2,b:2,loftPermalink:,id:fks_081066082085084067092086081095080081089075087087,blogTitle:Android编译环境中的JDK存放位置,blogAbstract:因为Ubuntu 10.04已经不带有SUN JDK&#xff0c;所以这个需要到sun网站上下载&#xff0c;并手动安装。所以&#xff0c;这个…

华为鸿蒙系统HarmonyOS手机,华为鸿蒙系统2.0适配哪些机型

华为鸿蒙系统2.0适配机型大部分都是华为手机&#xff0c;那么都有哪些手机适合这个系统呢&#xff0c;用户想要使用鸿蒙系统应该在哪去申请呢&#xff0c;别着急下面我们一起了解吧。华为鸿蒙系统2.0适用机型推荐HarmonyOS 2.0手机开发者Beta公测招募入口&#xff1a;点击进入同…

webstorm 运行android,Windows React Native环境搭建:webstorm+android studio 及解决热更新

工具准备&#xff1a;SDKAndroid SDK Build-tools&#xff1a;23.0.1SDK Platform&#xff1a;Android N 、6.0 、5.1.1、5.0.1、4.4.2、4.1.2Android模拟器镜像&#xff1a;6.0、5.1和4.1python使用 python2nodejs使用官网最新即可更改源&#xff1a;npm config set registry …

android 日期时间类,Android 日期时间等转换工具类

package com.easyder.util;import java.text.SimpleDateFormat;import java.util.Date;/*** 日期时间等转换工具类.** author Administrator**/public class DateTool {/*** long类型的日期时间值转换成MM/dd/yyyy HH:mm:ss格式** param millis* return*/public String getDate…

android内部类broadcastreceiver,android 公开静态内部类BroadcastReceiver

当想实现广播接收功能时&#xff0c;因java 是单继承&#xff0c;所以一般一个类都会extends Activity&#xff0c;所以会想到内部类来extends BroadcastReceiver,这中间可能会出现两种异常1&#xff1a;java.lang.RuntimeException: Unable to instantiatereceiver com.examp…