[Comm] Права в /etc/*

Genix =?iso-8859-1?q?genix_=CE=C1_list=2Eru?=
Чт Янв 13 18:38:06 MSK 2005


Dolgov OV wrote:
> On Thu, 13 Jan 2005 17:13:52 +0300  Aleksey Birukov wrote:
> 
>>После неудачных экспериментов с системой пришлось восстановить /etc/*
>>из резервной копии. Сначало все было нормально...
>>Потом оказалось, что я восстановил файлы с некорректными правами.
>>Владелец всех файлов root:root. Поэтому не работают некоторые
>>программы. Например kcheckpass (не могу разблокировать скринсейвер, на
>>каких файлах изменить владельца не знаю). Вроде все остальное пока
>>работает. Снова восстановить из резервной копии не могу, т.к. в
>>системе уже сделаны некоторые изменения.
>>
>>Кто сталкивался с такой проблемой помогите!
> 
> 
> rpm -V --all
> 
> Правда операция длительная. Потом смотреть выданные несоответствия
> касательно содержимого /etc. Правда я не помню, покажет ли необходимые
> права.

когда-то давно этот вопрос уже возникал в этой рассылке, и тогда 
решилось, что можно сделать так:

===============================

From: Sodom
To: community
Subject: [Comm] по поводу прав
Date: Mon, 5 Apr 2004 16:02:07 +0400
Здравствуйте, уважаемые.
Хочу поделиться опытом - вдруг кому пригодится.
Сделал chmod 644 ./*
как видите - на ПОДкаталог.
Но что-то там в мозгах компутерных (или моих :-) замкнуло и очнулся я 
уже, когда на весь корень на все стояли эти права.
Лечил:
1. загрузился в rescue c установочного CD.
2. Подмонтировал ручками всю систему в /mnt/tmp/
3. Ничтоже сумняшись сдал права 755 на /mnt/tmp/sbin , /mnt/tmp/bin , 
/mnt/tmp/usr/sbin , /mnt/tmp/usr/bin и на все загрузочные скрипты в 
/etc/rc.d/
этого хватило для (хоть и с ошибками) загрузки системы и локального логина.
4. Затем rpm -qa > /tmp/rpms - имена всех пакетов, установленных в системе.
5. Дальше совсем простой скриптик:
#!/bin/bash
while read string ; do
rpm -ihv --replacepkgs /files/$string*
done < /tmp/rpms
этот скрипт просто-напросто берет из репозитория пакетов (в моем случае 
- копия сизифа) в каталоге /files/ имена пакетов, совпадающие с именами 
установленных в системе и принудительно их переустанавливает. Через 
полчаса система жила.

Что хочу добавить - конечно же это не панацея. Мне надо было как можно 
быстрее восстановить систему. Самый легкий путь - не самый правильный. 
Пришлось править потом права, к примеру на /etc/sudoers на /usr/bin/sudo 
(для того чтобы можно было sudo пользоваться) и по-мелочи.


-- С уважением,
Sodom mailto:sodom на sodom.ru

Origin: Сколько голов, столько умов. Но первых всегда больше.

===============================

только в данном случае,

* загружаться с live-cd нет необходимости (приступай к 4 пункту)
* вместо 4-го пункта я бы сделал что-то типа

find /etc/ -exec rpm -qf {} \; | sort | uniq > /tmp/rpms

возможно придется подчистить руками, удалив оттуда предупреждения о не 
соответствии файла ни одному пакету

-- 
У каждого в башке свои тараканы...



Подробная информация о списке рассылки community