1

我正在尝试在 Ubuntu 11.04 上使用apt-get.

当我尝试时:

$ sudo apt-get install selinux

我收到以下错误:

以下软件包具有未满足的依赖关系:
selinux : PreDepends: grub-pc 但它不可安装
E: 损坏的软件包

然后我下载了selinux-utilsselinux-basics.

在此之后,我检查了selinux下面的文件,/etc/sysconfig但我找不到它。

另外,当我尝试

$ setenforce 1

它返回:

setenforce:SELinux 被禁用

有什么依赖关系?我应该下载什么?我该如何解决这个问题?

4

3 回答 3

0

我建议卸载 AppArmor,因为它可能与 SELinux 冲突:

移除 apparmor
移除 apparmor-util

于 2013-12-19T21:32:53.123 回答
0

在 Linux 发行版下运行 SELinux 需要三件事:支持 SELinux 的内核、SELinux 用户空间工具和库以及 SELinux 策略。我猜您的内核是在未启用 SELinux 选项的情况下编译的,和/或与您的引导加载程序(grub-pc)相关的问题。 是来自内核文档。

如果你想使用 SELinux,你可能会想使用发行版提供的策略,或者从 http://oss.tresys.com/projects/refpolicy安装最新的参考策略版本

但是,如果您想安装一个虚拟策略进行测试,您可以使用 scripts/selinux 下提供的“mdp”。请注意,这需要安装 selinux 用户空间 - 特别是您将需要 checkpolicy 来编译内核,并需要 setfiles 和 fixfiles 来标记文件系统。

  1. 在启用 selinux 的情况下编译内核。
  2. 键入“make”编译 mdp。
  3. 确保您没有在启用 SELinux 和真实策略的情况下运行。如果是,请在禁用 selinux 的情况下重新启动,然后再继续。
  4. 运行 install_policy.sh: cd scripts/selinux sh install_policy.sh

第 4 步将创建一个对您的内核有效的新虚拟策略,其中包含一个 selinux 用户、角色和类型。它将编译策略,将您的 SELINUXTYPE 在 /etc/selinux/config 中设置为 dummy,将编译后的策略安装为“dummy”,并重新标记您的文件系统。

于 2013-10-28T18:56:47.280 回答
0

看起来你没有 GRUB(引导加载程序)。我猜 SELinux 需要对内核进行一些更改,因此请使用 GRUB 安装您的系统。比仅通过 'apt-get install selinux' 安装 SELinux 是正确的。

于 2013-06-16T12:16:32.680 回答