Назад | Перейти на главную страницу

Случайно rm -rf / usr / * как root, что теперь?

Мой коллега случайно удалил / usr / * data, запустив: rm -rf /usr/*. А теперь это большая проблема. У нас было много хороших данных об этой машине. В результате большинство команд не работают. Есть ли способ восстановить машину? Я не особо разбираюсь в восстановлении данных.

Пожалуйста, помогите мне указать решение / процедуру. Некоторая информация об этой машине приводится ниже. Дайте мне знать, если потребуется дополнительная информация.

-bash-3.00# uname -a
Linux penguin 2.6.9-5.EL #1 Wed Jan 5 19:22:18 EST 2005 i686 i686 i386 GNU/Linux
-bash-3.00# fdisk -l

Disk /dev/hda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/hda1   *           1          13      104391   83  Linux
/dev/hda2              14        9729    78043770   8e  Linux LVM
-bash-3.00#

Прежде всего, загрузитесь с живого компакт-диска или диска восстановления и сделайте резервную копию своих данных. Вы также можете включить системные конфигурации из / etc.

Вы можете попробовать выполнить переустановку того, что у вас есть, оставив разделы, которые вы хотите оставить нетронутыми. Пока вы не хранили свои хорошие данные в каких-либо системных разделах (и, будем надеяться, не в / usr), вы сможете сохранить их во время установки.

Если ничего не помогает, установите с нуля и восстановите из резервной копии.

Подумайте об изменении доступа вашего коллеги.

Я предполагаю, что вы используете Redhat просто потому, что это то, что использую я:

Шаг 1. Поскольку у вас не должно быть реального хранилища данных в / usr (man hier), вы сможете переустановить все системные двоичные файлы с помощью:

cd /root
rpm -Va > filename
rpm -qf `cat filename | awk '{print $3}'` | sort | uniq > filename2
yum reinstall `cat filename2`

Однако если у вас есть данные в / usr, которые не были установлены дистрибутивом, забудьте все, что я только что сказал, поскольку использование диска уменьшит шансы на то, что вы сможете восстановить удаленные данные.

Мои рекомендации:

  1. Google "восстановить для Linux", и вы найдете что-то вроде http://www.r-tt.com/data_recovery_linux/. Вы можете использовать это для восстановления любых документов, которые вы хотите восстановить.
  2. Сделайте шаг, чтобы избежать этого в будущем. Вам нужен метод создания копии раздела, что-то вроде Acronis TrueImage для Linux. Если вы запустите Acronis TrueImage для Linux, он скопирует полный клон жесткого диска в файл (который вы можете сохранить в автономном режиме для безопасности), поэтому вы всегда можете восстановить с нуля, если что-то пойдет не так в будущем.

Первое правило восстановления данных: Прекратите использовать диск

Как предлагает Gravitas, отменить удаление возможно, но чем больше вы используете диск, тем больше вероятность того, что освобожденные сектора будут перезаписаны новыми данными. Даже просто файлы журнала в режиме ожидания, загруженной системы может быть достаточно, чтобы снизить ваши шансы на восстановление. Приведенные выше рекомендации хороши, но убедитесь, что вы выполняете их с диском в качестве ведомого устройства; либо с Live CD, либо путем подключения и установки диска в другой системе.

Что касается процедуры. Если вы считаете, что это было разовое событие, считайте это усвоенным уроком. Если вы беспокоитесь, что это может повториться снова, измените пароли root и внедрите строго контролируемый sudo (http://aplawrence.com/Basics/sudo.html)

После этого я бы не стал доверять системе, пока ее не переустановили с нуля. Вы можете вернуть его в работоспособное состояние, но безопаснее выполнить блиц.

Восстановить кладжи могут сработать, если вы потеряли один или два файла, но после удаления такого большого фрагмента данных я не думаю, что погоня за этим будет продуктивным использованием времени.

Предложения о копировании файлов из другой системы могут помочь вам вернуться к работе, но могут оставить вашу систему в «нечистом» состоянии, когда не все вернется на прежнее место.

Я рекомендую выполнить чистую установку на другой диск (или другой компьютер), а затем вручную смонтировать старый диск (или загрузить старый компьютер с Live CD) и скопировать важные данные.

Затем расценивайте это как предупреждение и

  1. Убедитесь, что у вас есть автоматическая и актуальная резервная копия этих «хороших данных», чтобы больше никогда не оказаться в такой ситуации.
  2. Проверьте, у кого есть административный доступ к системе, и установите политики для того, когда и как она используется. Ваш коллега должен был работать как root, чтобы делать то, что они пытались сделать?

Попробуйте установить тот же самый дистрибутив (RHEL4, судя по ядру) где-нибудь еще и вручную скопируйте важные двоичные файлы и библиотеки в / usr. Попробуйте получить список установленных пакетов с помощью rpm -qa (rpm находится в / bin, а списки и переменные хранятся в / var, так что это может работают в некоторой степени). Переустановка с нуля была бы лучшим вариантом, но если это критическая система, это тушит пожар. Что ж, приближаются выходные, так что они могут быть заняты :)

О предотвращении: если вы создадите файл с именем «-i» (без кавычек), это предотвратит случайное попадание rm -rf * в этот каталог, потому что он будет запрашивать каждый файл. Попробуйте в тестовом каталоге. Вы можете создать файл с помощью «touch - -i» (двойной дефис означает «не интерпретировать ничего после этого как вариант».

Вы можете скопировать весь каталог / usr с того же сервера или компьютера, с того же ч / б и конфигурационного сервера. Это сработает. Но просто убедитесь, что вы сделали символические ссылки, поскольку мы

Я рекомендую вам сделать копию этого диска / дисков, прежде чем пытаться что-либо вроде переустановки, восстановления или восстановления. Если у вас есть хорошие резервные копии, вероятно, довольно безопасно просто загрузиться с аварийного компакт-диска и восстановить / usr из резервной копии, но я предполагаю, что у вас нет хороших резервных копий, если вы задаете этот вопрос. :-)

Если у вас есть данные, которые вы хотите сохранить на диске, ВСЕГДА попробуйте восстановление на копии диска, а не на оригинале.