Я не понимаю, почему Вы думаете, что необходимо переустановить Linux (или Windows, в этом отношении). У Вас, кажется, была неудача, что потери мощности посреди обновления сделали Вашу установку Linux неприменимой (или по крайней мере не легко применимые), но это не означает, что это не восстанавливаемо.
Самый легкий способ восстановиться состоял бы в том, чтобы загрузиться с живого CD или диска USB (предпочтительно из Ubuntu 10.04, хотя любой достаточно недавний Linux должен работать). (Вероятно, возможно восстановить Вашу установку путем начальной загрузки его конкретным способом, но живой подход CD немного легче.) Следующие команды предполагают, что у Вас есть оболочка (командная строка), работающая как корень (администратор).
Если у Вас есть интерфейс, который предлагает монтировать Вашу существующую установку Linux, сделайте то, что она говорит Вам. Иначе сделайте это вручную: использовать fdisk -l
видеть, какие разделы Вы имеете и определяете местоположение системного раздела. Смонтируйте его к некоторому месту. Также смонтируйте procfs и sysfs под ним. Например, если Ваш раздел Linux идет /dev/sda99
, выполненный
mkdir /media/linux
mount /dev/sda99 /media/linux
mount -t proc proc /media/linux/proc
mount -t sysfs sysfs /media/linux/sys
Запустите “подсессию” в установке Linux с chroot:
chroot /media/linux
У Вас должна теперь быть оболочка в Вашей установке Linux. Выполненный apt-get install
или dpkg --configure -a
продолжать обновление. (Иногда выполняющий эти команды несколько раз может избавиться от ошибок или по крайней мере позволить большому количеству вещей прогресс, даже если несколько пакетов заблокированы ошибкой.) Возможно, что катастрофический отказ оставил систему в состоянии, где те команды не достаточно; если так, спросите снова, сообщив о сообщениях об ошибках, которые Вы видите.
Обратите внимание, что я не рекомендую получить доступ к Вашему разделу Linux из Windows, если цель состоит в том, чтобы извлечь важные данные. Инструменты Windows для доступа к файловой системе Linux не полностью надежны, особенно если файловая система не была размонтирована чисто.
системный журнал автоматически разделяет дублирующиеся строки, но здесь они не дубликат, потому что ядро вставляет метку времени (в микросекундах начиная с начальной загрузки) прежде, чем отправить к системному журналу.
Та метка времени может выглядеть избыточной начиная с меток времени системного журнала журналы также, но это и его гранулярность могут быть полезны в отладке проблем ядра (потому что метки времени системного журнала менее точны и может быть задержка между фактическим событием и системным журналом, штампующим его, и потому что в случаях где системный журнал или /var
не стали, хорошо видеть метки времени в dmesg
вывод).
Можно отключить те метки времени kmsg путем выполнения:
echo N | sudo tee /sys/module/printk/parameters/time
Или сделайте это постоянным путем конфигурирования загрузчика для передачи printk.time=N
к командной строке ядра Linux.
комментарий phunehehe совершенно правилен:
logrotate
.На основе Вашего другого вопроса я предполагаю, что это - машина Ubuntu, в этом случае он, вероятно, выполняет rsyslog (или можно установить его). Попробовать ps aux | grep syslog
видеть.
rsyslog позволяет Вам фильтровать строки с основанными на свойстве фильтрами. Например, фильтры могут быть соответствиями литеральной строки или regexes. Пример из документов:
:msg, contains, "error" ~
'~' указывает, что это сообщение должно быть отброшено. Таким образом, Вы могли легко записать один из них для завершенного подавления сообщений от ошибочного драйвера. Обратите внимание, что это технически не удаляет дубликаты: не будет никаких строк с этой зарегистрированной ошибкой.
dmesg
, но при входе через системный журнал дубликаты будут очищены. Я знаю, что системный-журнал-ng может/, делают это, не знайте о rsyslog. – Patrick 23.09.2012, 20:44