резервная база данных в разделе Linux от раздела окон!

Вы просто не можете сделать этого. Нет никакого пути ¹, сделать процесс может изменить среду своего родителя (или его текущий каталог, о котором Вы могли бы думать затем).

На самом деле еще меньше - happending, чем Вы думаете.

  • Не все make реализации отражают присвоение на делание PATH переменная в среде; GNU делает (найденный на Linux, и другие системы) делает, но BSD делают, не делает.
  • Каждая командная строка под целью работает в отдельной подоболочке. (Кроме некоторого более старого BSD делают реализации.) Так export PATH строка работает на оболочке, которая завершается сразу впоследствии. Не то, чтобы эта строка сделала бы что-либо во-первых — если PATH определяется в той точке, это - потому что это уже находится в среде оболочки.

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

. ./define-my-variables.sh

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

  • Последовательность новой строки обратной косой черты разделяется, делают, таким образом, оболочка не будет видеть новой строки там.
  • Не забудьте снабжать префиксом каждую строку вкладкой, тем не менее.
  • Ошибочное поведение Make состоит в том, чтобы прерваться, если команда перестала работать. Оболочка не сделает этого по умолчанию, и отказ любой команды, но последнего останется незамеченным по умолчанию, таким образом, необходимо будет работать set -e.
install:
    set -e; \
    . ./define-my-variables.sh; \
    mkdir -p bin; \
    …

¹ Обязательное примечание: никакой нормальный путь. Даже удаленно вызов chdir через ptrace от отладчика не будет работать, как с большинством оболочек, потому что им не нравится изменять их текущий каталог под их ногами.

1
31.10.2010, 03:35
3 ответа

Я не понимаю, почему Вы думаете, что необходимо переустановить 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 не полностью надежны, особенно если файловая система не была размонтирована чисто.

4
27.01.2020, 23:14

Почему использование ext2explore если можно загрузиться от Ubuntu LiveCD? Вы уверены, что необходимо переустановить Windows также? Маловероятно, что это повреждается в ходе установки.

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

3
27.01.2020, 23:14

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

Если Вам действительно нужны базы данных, и Вы использовали MySQL, то можно найти их под /var/lib/mysql/ на разделе Linux. Вам, вероятно, будут нужны все файлы в том каталоге и его подкаталогах. Обратите внимание, что архивация тех файлов из Ubuntu является, вероятно, лучшей идеей, потому что это сохранило бы полномочия (там, вероятно, уже вопрос на этом сайте, как сделать это).

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

0
27.01.2020, 23:14

Теги

Похожие вопросы