日期:2014-05-16  浏览次数:21149 次

linux 内核启动错误和selinux参数 Kernel panic -not syncing:Attempted to kill init

今天在装某个软件的时候,修改了selinux参数。修改selinux 的某个参数值为Disable。导致 linux系统不能启动。出现如下错误 Kernel panic -not syncing:Attempted to kill init!

?

后经过向群友请教和自己操作和互联网搜索,终于找到了解决办法。

在linux启动界面出现时,按f2进入如下界面:

?

?

?

按e进入如下界面

?移动到第2个选项,再按e进入编辑

?

在后面输入 selinux=0

按回车。

返回到原来界面,

再按b,就可以启动了。

?

?

以下为转载自:

http://tech.srcsky.com/os/linux/349502.html

SELINUX从理解到动手配置。

SELinux 可以为你的系统提供较棒的安全防护。 使用者能被分配预先定义好的角色,以便他们不能存取文件或者访问他们不拥有的程序。

    Selinux的启用与关闭

    编辑/etc/selinux/conf文件

    SELINUX=enforcing(强制:违反了策略,你就无法继续操作下去)

    Permissive(有效,但不强制:违反了策略的话它让你继续操作,但是把你的违反的内容记录下来)

    Disabled(禁用)

    禁用的另一种方式:在启动的时候,也可以通过传递参数selinux给内核来控制它

    编辑/etc/grup.conf

    title Red Hat Enterprise Linux Server (2.6.18-8.el5)

    root (hd0,0)

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

    initrd /initrd-2.6.18-8.el5.img

    SELINUXTYPE=targeted

    此参数可选项:targeted和strice。分别是targeted只控制关键网络服务,strice控制所有的服务

    查询selinux的状态

    [root@linuxas ~]# /usr/sbin/getenforce

    Enforcing

    [root@linuxas ~]# sestatus -bv

    SELinux status: enabled

    SELinuxfs mount: /selinux

    Current mode: enforcing

    Mode from config file: enforcing

    Policy version: 21

    Policy from config file: targeted

    查看selinux加载的内核模块

    [root@linuxas selinux]# semodule -l

    amavis 1.1.0

    ccs 1.0.0

    clamav 1.1.0

    dcc 1.1.0

    evolution 1.1.0

    iscsid 1.0.0

    mozilla 1.1.0

    mplayer 1.1.0

    nagios 1.1.0

    oddjob 1.0.1

    pcscd 1.0.0

    pyzor 1.1.0

    razor 1.1.0

    ricci 1.0.0

    smartmon 1.1.0

    查看selinux错误日志

    [root@linuxas selinux]# sealert -a /var/log/audit/audit.log

    SElinux的图形化管理工具

    [root@linuxas selinux]# system-config-selinux

    Selinux的基本操作

    查看文件:ls –Z(--context)

    [root@linuxas ~]# ls -Z

    drwx------ root root root:object_r:user_home_t Desktop

    -rw------- root root system_u:object_r:user_home_t anaconda-ks.cfg

    -rw-r--r-- root root root:object_r:user_home_t install.log

    -rw-r--r-- root root root:object_r:user_home_t install.log.syslog

    [root@linuxas ~]# ls --context

    drwx------ root root root:object_r:user_home_t Desktop

    -rw------- root root system_u:object_r:user_home_t anaconda-ks.cfg

    -rw-r--r-- root root root:object_r:user_home_t install.log

    -rw-r--r-- root root root:object_r:user_home_t install.log.syslog

    查看文件系统的扩展属性:getfattr

    [root@linuxas ~]# getfattr -m. -d /etc/passwd

    getfattr: Removing leading '/' from absolute path names

    # file: etc/passwd

    security.selinux="system_u:object_r:etc_t:s0\000"

    查看的文件的 security.selinux 属性中储存了此文件的安全上下文, 所以上面例子中的上下文就是 system_ubject_r:etc_t 。

    所有运行了SE Linux的ext2/3文件系统上都有 security.selinux 这个属性。

    更改文件的扩展属性标签:chcon (不能在 /proc 文件系统上使用,就是说 /proc 文件系统不支持这种标记的改变。)

    [root@linuxas test]# ls --context aa.txt

    -rw-r--r-- root root root:object_r:user_home_t aa.txt

    [root@linuxas test]# chcon -t etc_t aa.txt

    [root@linuxas test]# ls --context aa.txt

    -rw-r--r-- root root root:object_r:etc_t aa.txt

    恢复原来的文件标签: restorecon

    [root@linuxas test]# restorecon aa.txt

    [root@linuxas test]# ls -Z aa