1

У меня очень странные вещи с SELinux.
Мой пост может быть немного беспорядочным, потому что я не совсем понимаю, что происходит.

Перед всем рассказом у меня была хорошая и очень стабильная установка Linux:

CentOS 5.5  
uname -a:  
    Linux andreys-comp 2.6.18-194.8.1.el5xen #1 SMP
    Thu Jul 1 19:41:05 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux  

getenforce  
echo $? 
0  

Но однажды (вчера) я решил сделать yum update и параллельно:
cvs -d:pserver:anonymous@SELinux.cvs.sourceforge.net:/cvsroot/SELinux -z3 co nsa
(cvs загрузил все файлы в каталог /SELinux, который создал сам)

После загрузки я прочитал README, где написано, что для полной установки самостоятельно скомпилированного SELinux мне нужно сделать:

make menuconfig  
make  
make install  

Я только сделал (!), Но сразу после этого мой компьютер сошел с ума.
Я не знаю, все ли это из-за обновления системы, или компиляции SELinux, или и того и другого, но Firefox прекратил показывать страницы, и когда я пытаюсь запустить system-config-SELinux, которую я недавно установил, я получаю

/usr/lib64/Python2.4/site-packages/SELinux/_SELinux.so: undefined symbol: SELinux_check_securetty_context  

и не беги.
После этого я перезагрузил систему, во время работы системы у меня возникает паника ядра и что-то вроде: "не удалось применить политику SELinux" (точно не помню, сообщение не остается на экране достаточно времени, потому что компьютер выключается)
Поэтому я запустил LiveCD для отключения SELinux в файле /etc /SELinux /config, но (!) (наступает момент кульминации), когда я запускаю ls на / из файловой системы LiveCD, я вижу:

[root@livecd /]# ls -la  
total 180  

drwxr-xr-x   4 root root     0 Aug  9 18:23 SELinux  

Но это виртуальная файловая система! Я помню, что cvs загрузил весь исходный код в /SELinux .
Это контекст этой директории: system_u:object_r:security_t
Более того, каталог /SELinux даже содержал файлы внутри него. Одним из них было нулевое символьное устройство.
Это обычный каталог файловой системы LiveCD? Или это мой недавно созданный каталог cvs в каком-то загадочном хранилище и коварно смонтированный в корневой файловой системе LiveCD?

После этого я смонтировал корневую файловую систему моего жесткого диска, выполнил ls и обнаружил, что каталог SELinux остается там вполне компетентно:

[root@livecd VolGroup00-LogVol01]# ls -la  
total 240  

drwxr-xr-x   2 root   root    4096 Jun  5 07:01 SELinux  

но (!) этот каталог теперь был пуст внутри! Это контекст каталога: system_u:object_r:file_t

Это монтирования, которые были в режиме LiveCD:

/dev/mapper/live-rw on / type ext3 (rw,noatime) 
proc on /proc type proc (rw)  
sysfs on /sys type sysfs (rw)  
devpts on /dev/pts type devpts (rw,gid=5,mode=620)  
tmpfs on /dev/shm type tmpfs (rw)  
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)  
/dev/hdc on /mnt/live type iso9660 (ro)  
/dev/sda2 on /mnt/disc/sda2 type ext3 (ro)  
/dev/sda6 on /mnt/disc/sda6 type vfat (ro,uid=500)  
/dev/mapper/VolGroup00-LogVol01 on /mnt/lvm/VolGroup00-LogVol01 type ext3 (rw)  
/dev/mapper/VolGroup00-LogVol00 on /mnt/lvm/VolGroup00-LogVol00 type ext3 (ro)  

После всего этого я отключил SELinux в соответствующем файле:

SELinux=disabled  
SELinuxTYPE=targeted  
SETLOCALDEFS=0   

И я перезагрузил свой компьютер. После загрузки я снова запускаю ls для пользователя root и вижу, что у меня снова есть каталог SELinux, но он снова пуст!

[root@andreys-comp SELinux]# pwd  
/SELinux  
[root@andreys-comp SELinux]# ls  
[root@andreys-comp SELinux]#   

Больше этого Когда я загрузился с жесткого диска, я установил файл squashfs.img на LiveCD и ext3fs.img на нем, который содержит всю корневую файловую систему, и вот что я вижу:

[root@andreys-comp isotemp2]# mount  

/isotemp/LiveOS/ext3fs.img on /isotemp2 type ext3 (ro,loop=/dev/loop1)  

[root@andreys-comp isotemp2]# ls -l  
total 180  

drwxr-xr-x  2 root root  4096 Oct  2  2009 SELinux  

[root@andreys-comp isotemp2]# cd SELinux/  
[root@andreys-comp SELinux]# ls  
[root@andreys-comp SELinux]#   

Это также пусто! Где весь код SELinux?

Теперь, может быть, я много расскажу о папках SELinux, но вопрос о моих общих проблемах с SELinux для меня не менее важен.
Таким образом, если я включаю SELinux, я получаю панику ядра (даже если я на уровне выполнения 1).
После загрузки с LiveCD и отключения его все снова работает.

Итак, у меня есть два вопроса:

  1. Где все скомпилированные объекты SELinux?

  2. Как вернуть гармонию и мир в мир моего компьютера?

1 ответ1

0

Вы можете попробовать загрузить live CD, выполнить chroot на свой диск, смонтировать все подходящие точки монтирования (указать) и попробовать что-то вроде (это может быть неправильно, но я думаю, вы поняли)

yum remove selinux
yum install selinux

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .