Подсказка: используйте etckeeperв старой системе и новой системе и после установки всех дополнительных пакетов ( dselectи dpkg -l), установленных в старой системе, объедините ваши изменения по сравнению с файлами конфигурации dist в новую систему;) ...
0xC0000022L
Ответы:
4
К сожалению, как и в других ОС, для этого нет «пути обновления». Вы почти наверняка должны будете сделать переустановку.
Что касается сохранения ваших данных, резервное копирование вашего домашнего каталога было бы хорошей идеей наряду с любыми другими данными и должно быть легко импортировано в вашу новую установку.
Всегда делайте резервную копию своих данных, прежде чем пытаться что-либо!
Я не просто скопировал бы /etcв случае небольших различий между требованиями к конфигурации для 64-битных компиляций пакетов, но взял бы копию и затем diffскопировал копию против недавно установленной 64- битной системы, но это сработало бы. Скорее всего, количество изменений невелико, поэтому выполнение этого и внесение необходимых изменений вручную, будем надеяться, не вызовет особых трудностей.
Копирование, /etcкак вы предлагаете, должно работать хорошо - я бы просто сделал это дольше, ради паранойи. Копирование /home, основная проблема при переходе с одной установки на другую, более вероятно, будет полностью безопасным.
Если вы просто хотите перейти на 64-разрядную версию, чтобы использовать больше оперативной памяти, а не потому, что вам конкретно нужно использовать 64-разрядные приложения, вы можете просто использовать 64-разрядное ядро с 32-разрядным пользовательским пространством. Debian фактически предоставляет пакеты ядра a64 в своих репозиториях i386, так что это можно сделать так же просто, как aptitude install linux-image-2.6-amd64, к сожалению, в Ubuntu, поэтому вам не придется собирать собственное ядро, которое может не стоить времени + хлопот, если вы не что технически опытный (т.е. это является простым, но толькоесли вы уже скомпилировали свое собственное ядро, вам будет удобно с процессом). Если вы запускаете 64-битное ядро с 32-битным пользовательским пространством, то отдельное приложение может по-прежнему иметь доступ не более ~ 3 ГБ (в некоторых случаях только ~ 2 ГБ), но к системе в целом (все процессы вместе плюс такие вещи ядра, как IO кеш и буферы) можно использовать столько, сколько вам нужно. Для этих целей каждая VMWare VM считается одним приложением - таким образом я запускаю один из моих старых хостов VM (виртуальные машины используют ~ 7 ГБ в общей сложности с 64-разрядным ядром, 32-разрядным пользовательским интерфейсом и 32-разрядным VMWare), поскольку это было быстрее чем полное обновление 64-битной операционной системы хоста, когда я обновил ЦП компьютера до 64-битной и добавил дополнительную оперативную память - я бы предположил, что аналогичные решения для виртуальных машин будут действовать так же.
Разве это не то же самое, что использование ядра 'linux-image-server' с включенным PAE?
Кирилл Васильевич Лядвинский
Насколько я понимаю, процессорам, совместимым с AMD64, не нужно переключаться между режимами для одновременного запуска 32-битного и 64-битного кода, так что здесь нет дополнительной неэффективности и нет проблем с отображением памяти, которые использует PAE либо (кажется, что 32-битные приложения используют только 4 ГБ или меньше своего виртуального адресного пространства). Я могу ошибаться, но я считаю, что смешивание 32- и 64-битного кода таким образом, чтобы получить дополнительную адресуемую память, менее неэффективно, чем PAE.
Дэвид Спиллетт
6
В прошлом месяце я переустанавливал свою машину с 32-битной 10.10 до 64-битной 10.10, не теряя никаких данных. Единственный прием - выбрать инструменты для изменения размера диска, а не форматировать весь диск при переустановке 64-битной Ubuntu 10.10.
+1. На самом деле, я видел, что это тоже сделано (Debian и Ubuntu), и, похоже, оно работало безупречно.
0xC0000022L
0
Запуск 32-битного пользовательского пространства на 64-битном ядре может вызвать проблемы, как только задействуются системные средства. Например, использование 32-битной libalsa в 64-битном ядре будет почти работать, но будет довольно ненадежным и нестабильным, потому что структуры данных ioctl, определенные в asound.h, имеют разные размеры и расположения при компиляции с 64-битной и 32-битной архитектурами.
Таким образом, использование jackd -d alsa -X alsaraw (или его эквивалента jackd2) приведет к прерыванию с ошибочным утверждением при вызове 32-битной утилиты на 64-битном ядре. Стандартная звуковая операция будет намного менее надежной, так как количество буферов интерпретируется неправильно.
В общем, любые структуры данных ядра должны быть объявлены таким образом, чтобы их размеры не отличались между 32- и 64-битными ядрами, или же 32-битный код должен уметь использовать различные определения структуры в соответствии с архитектурой ядра.
В общем, вам, вероятно, лучше переустановить с нуля и перенести свой домашний раздел / каталог.
Об этом спросили (и ответили) более 7 лет назад. Не могли бы вы немного прояснить, какую новую информацию вы несете? Пожалуйста, посмотрите, как ответить и принять наш тур .
etckeeper
в старой системе и новой системе и после установки всех дополнительных пакетов (dselect
иdpkg -l
), установленных в старой системе, объедините ваши изменения по сравнению с файлами конфигурации dist в новую систему;) ...Ответы:
К сожалению, как и в других ОС, для этого нет «пути обновления». Вы почти наверняка должны будете сделать переустановку.
Что касается сохранения ваших данных, резервное копирование вашего домашнего каталога было бы хорошей идеей наряду с любыми другими данными и должно быть легко импортировано в вашу новую установку.
Всегда делайте резервную копию своих данных, прежде чем пытаться что-либо!
источник
Я не просто скопировал бы
/etc
в случае небольших различий между требованиями к конфигурации для 64-битных компиляций пакетов, но взял бы копию и затемdiff
скопировал копию против недавно установленной 64- битной системы, но это сработало бы. Скорее всего, количество изменений невелико, поэтому выполнение этого и внесение необходимых изменений вручную, будем надеяться, не вызовет особых трудностей.Копирование,
/etc
как вы предлагаете, должно работать хорошо - я бы просто сделал это дольше, ради паранойи. Копирование/home
, основная проблема при переходе с одной установки на другую, более вероятно, будет полностью безопасным.Если вы просто хотите перейти на 64-разрядную версию, чтобы использовать больше оперативной памяти, а не потому, что вам конкретно нужно использовать 64-разрядные приложения, вы можете просто использовать 64-разрядное ядро с 32-разрядным пользовательским пространством. Debian фактически предоставляет пакеты ядра a64 в своих репозиториях i386, так что это можно сделать так же просто, как
aptitude install linux-image-2.6-amd64
, к сожалению, в Ubuntu, поэтому вам не придется собирать собственное ядро, которое может не стоить времени + хлопот, если вы не что технически опытный (т.е. это является простым, но толькоесли вы уже скомпилировали свое собственное ядро, вам будет удобно с процессом). Если вы запускаете 64-битное ядро с 32-битным пользовательским пространством, то отдельное приложение может по-прежнему иметь доступ не более ~ 3 ГБ (в некоторых случаях только ~ 2 ГБ), но к системе в целом (все процессы вместе плюс такие вещи ядра, как IO кеш и буферы) можно использовать столько, сколько вам нужно. Для этих целей каждая VMWare VM считается одним приложением - таким образом я запускаю один из моих старых хостов VM (виртуальные машины используют ~ 7 ГБ в общей сложности с 64-разрядным ядром, 32-разрядным пользовательским интерфейсом и 32-разрядным VMWare), поскольку это было быстрее чем полное обновление 64-битной операционной системы хоста, когда я обновил ЦП компьютера до 64-битной и добавил дополнительную оперативную память - я бы предположил, что аналогичные решения для виртуальных машин будут действовать так же.источник
В прошлом месяце я переустанавливал свою машину с 32-битной 10.10 до 64-битной 10.10, не теряя никаких данных. Единственный прием - выбрать инструменты для изменения размера диска, а не форматировать весь диск при переустановке 64-битной Ubuntu 10.10.
источник
Запуск 32-битного пользовательского пространства на 64-битном ядре может вызвать проблемы, как только задействуются системные средства. Например, использование 32-битной libalsa в 64-битном ядре будет почти работать, но будет довольно ненадежным и нестабильным, потому что структуры данных ioctl, определенные в asound.h, имеют разные размеры и расположения при компиляции с 64-битной и 32-битной архитектурами.
Таким образом, использование jackd -d alsa -X alsaraw (или его эквивалента jackd2) приведет к прерыванию с ошибочным утверждением при вызове 32-битной утилиты на 64-битном ядре. Стандартная звуковая операция будет намного менее надежной, так как количество буферов интерпретируется неправильно.
В общем, любые структуры данных ядра должны быть объявлены таким образом, чтобы их размеры не отличались между 32- и 64-битными ядрами, или же 32-битный код должен уметь использовать различные определения структуры в соответствии с архитектурой ядра.
В общем, вам, вероятно, лучше переустановить с нуля и перенести свой домашний раздел / каталог.
источник