У меня установлена 32-разрядная установка Ubuntu на 64-разрядном оборудовании. Теперь, когда была реализована многоэкранная версия, я хотел бы переключиться на 64-разрядную без необходимости переустановки ОС.
Это одна из multi-arch реализована :
Шон установил свою систему, используя 32-битную версию Ubuntu, но его аппаратное обеспечение - 64-битное, и он хочет переключиться. Он вручную устанавливает версии dpkg и apt amd64, заменяя версии i386 и изменяя, какая архитектура используется по умолчанию; затем он устанавливает пакет amd64 ubuntu-минимальный; затем он устанавливает пакет amd64 ubuntu-desktop. Со временем оставшиеся пакеты i386 автоматически заменяются при обновлении.
Однако, пытаясь следовать инструкциям там, я не могу найти 64-разрядную версию dpkg или apt.
Короче говоря, как я могу переключить 32-разрядную установку на 64-разрядную?
Хороший вопрос. У меня была охота вокруг и за исключением истории пользователя, которую вы цитируете, я не могу найти никаких подробностей о том, как это сделать. Вся документация указывает, что он предназначен только для запуска 32-разрядных приложений на уже 64-разрядной ОС.
Однако, если вы хотите поэкспериментировать, вы можете попробовать следующее (полученное из моей ссылки в [1 ])
echo foreign-architecture amd64 | sudo tee /etc/dpkg/dpkg.cfg.d/multiarch
sudo apt-get install linux-image:amd64
Я думаю, вам нужно будет начать с ядра amd64, так как 32-битный не сможет запускать любые 64-битные двоичные файлы. Однако 64-разрядный должен запускать 32-битные двоичные файлы (если установлена ia32-libs?).
Если вы установили и загрузили 64-битное ядро, вы можете перейти оттуда, чтобы установить apt: amd64, затем выполните пользовательскую историю, как ранее цитировалось, ubuntu-minimal, ubuntu-desktop и т. д.
После того, как apt: amd64 установлен, я думаю, вы можете удалить линию внешней архитектуры, поскольку вы по существу переключились в этой точке.
Отказ от ответственности: у меня нет 32-битной системы для проверки, так что это все догадки. Удачи!
[1] https://wiki.ubuntu.com/OneiricOcelot/TechnicalOverview/Beta1#Improved_handling_of_32-bit_compatibility_on_amd64_systems
Хотя вопрос аналогичен вопросу, возможно ли «обновление», от 32-битной до 64-битной установки? (Если вы еще не прочитали его, прежде чем я попрошу вас попробовать, ответ будет предоставлен.) Я также рекомендую прочитать следующие ссылки:
Возможно ли «обновление»? от 32-битной до 64-битной установки?
Как переключить 32-разрядную установку на 64-разрядную?
Как я могу переключить 32-битная установка на 64-битный?
Возможно ли: Да
Легко: НЕТ!
Если ваша проблема с памятью, то вы должны знать, что 32-битный Ubuntu может читать более 4 ГБ оперативной памяти (до 64 ГБ). Таким образом, использование последней версии 32-битного Ubuntu с компьютером с архитектурой 32 бит или 64 бит и добавлением большего объема оперативной памяти не будет проблемой. Он будет просто читать дополнительную оперативную память и работать.
Возможно, когда я столкнусь с одной и той же проблемой, это будет работать, это то, что я планировал сделать:
Получить 64-разрядную версию ОС, установить в раздел, когда полная копия документы и другие материалы из 32-битной установки, когда все будет безопасно скопировано, вы можете отформатировать остальную часть диска и использовать его.
Эти инструкции заставляют вашу систему загружаться с 64-битным ядром, но не меняют большинство программ пользовательской программы.
После обновления моей системы с 64-разрядным процессором я также хотел установить 64- битное ядро на моем 32-битном 14.04.2 Ubuntu (кодовое имя: Trusty). Для этого я ввел следующие команды как . Эти инструкции заставляют вашу систему загружаться с 64-битным ядром, но не меняют большинство программ пользовательской программы. :
dpkg --add-architecture amd64
apt-get update
apt-get install linux-generic-lts-utopic:amd64
Примечания :
Это может удалить ваше 32-битное ядро как надежное - по умолчанию - поставляется с обновленным ядром (ядро из utopic), см. примечания к выпуску 14.04. В этом случае ваше текущее ядро конфликтует с установленным 64-битным ядром и, следовательно, удаляется. Если вам не нравится эта идея, вы можете попробовать старый 64-разрядный пакет ядра «linux-generic-lts-trusty: amd64». Команда «-add-architecure» имеет важное значение. Без него система пакетов не поддерживает пакеты из разных архитектур, см. Multiarch-HowTo. Чтобы увидеть, что apt-get будет делать с вашей системой, запустите ее с параметрами -Vs, которые позволят «режим подробной версии». Это напечатает все пакеты, которые будут установлены и удалены. Независимо от того, загружается ли система с использованием нового ядра, это зависит от конфигурации grub. В качестве пользователя root запустите update-grub, чтобы сделать обновление grub и распечатать текущую конфигурацию загрузки. Первое изображение в списке будет загружено по умолчанию. Чтобы выбрать другое изображение ядра, я удалил строку GRUB_HIDDEN_TIMEOUT=0 с /etc/default/grub и запустил ее как пользователя root update-grub. Во время загрузки вы можете выбрать другое ядро (у вас есть 10 секунд, чтобы нажать любую клавишу, иначе grub продолжит ядро по умолчанию). Ответ с высшим большинством голосов - с 2011 года и, на мой взгляд, безнадежно устарел. Multiarch позволяет устанавливать пакеты библиотек из нескольких архитектур на одном компьютере без особого шума.Эти ответы несколько устарели. Перекрестная сортировка теперь документирована для Debian на вики Debian, но она по-прежнему не рекомендуется.
Установка ядра из другой архитектуры теперь так же проста, как описано здесь, но новый «apt» не будет распознавать пакеты из предыдущей архитектуры, и поэтому все его интерфейсы могут сообщать много разбитых пакеты. Это либо требует изменения всех зависимостей для другой архитектуры, либо возврата apt и dpkg в 32-разрядный.
Таким образом, лучший подход может состоять в том, чтобы сначала сохранить результаты dpkg --get-selections, strip: i386 и загрузить пакет amd64 для каждой из зависимостей в кеше:
apt-get --download-only install perl:amd64 python3:amd64 python3-gi:amd64 xorg:amd64...
В лучшем случае это может быть медленным и трудоемким решением зависимостей.
Да, линия внешней архитектуры наиболее важна для установки любых кросс-аркадных пакетов. Но после этого сделайте, как упомянули несколько других пользователей:
sudo apt-get update
sudo apt-get install linux-image:amd64
sudo apt-get install linux-modules:amd64
sudo init 6 #reboot into new kernel
sudo apt-get install apt:amd64
sudo apt-get install ubuntu-desktop:amd64
Это должно было сделать это ...
Crossgrading (обновление до другой архитектуры) еще не поддерживается.
Мой рецепт для Ubuntu 16.04 Xenial, протестированный на недавно установленной 32-разрядной виртуальной машине Ubuntu со стандартным системным и SSH-сервером, но без GUI:
sudo -s
dpkg --get-selections > pkg1
dpkg --add-architecture amd64
apt update
apt install linux-image-generic:amd64 thermald
(иначе он установит heatd: amd64 и не будет перезагрузить его под 32-разрядным ядром)
reboot
после перезагрузки с 64-битным ядром:
sudo -s
unset LANG
apt install apt:amd64 apt-utils:amd64
type «Да, делайте, как я говорю!» когда его спросят, он будет безопасным
mkdir /tmp/upgrade
cd /tmp/upgrade
pkgs() { dpkg -l | awk '$4=="'$1'"{print $2}' | awk -F: '{print $1}' | sort -u
}
apt download $(comm -23 <(pkgs i386) <(pkgs amd64))
while ls *amd64*deb
do dpkg -i *amd64*deb
dpkg -l | awk '$1=="ii" && $4=="amd64" {print $2}' | awk -F: '{print $1}' |
while read a
do [ -f ${a}_*amd64*deb ] && rm ${a}_*amd64*deb
done
done
в цикле выше, мы удалим файлы .deb, которые были успешно установлены и получили статус «ii» в списке dpkg.
нам нужно повторить пробеги dpkg -i, так как это не удается с самой первой попытки
reboot
теперь, как с 64-битным ядром, так и с пользовательским пространством, оставшиеся пакеты i386 можно удалить:
dpkg --purge $(dpkg -l | awk '$4=="i386"{print $2}')
список, который вы сохранили в файле pkgs1, который вы можете использовать для любых ваших дальнейших потребностей.
Хороший вопрос. У меня была охота вокруг и за исключением истории пользователя, которую вы цитируете, я не могу найти никаких подробностей о том, как это сделать. Вся документация указывает, что он предназначен только для запуска 32-разрядных приложений на уже 64-разрядной ОС.
Однако, если вы хотите поэкспериментировать, вы можете попробовать следующее (полученное из моей ссылки в [1 ])
echo foreign-architecture amd64 | sudo tee /etc/dpkg/dpkg.cfg.d/multiarch
sudo apt-get install linux-image:amd64
Я думаю, вам нужно будет начать с ядра amd64, так как 32-битный не сможет запускать любые 64-битные двоичные файлы. Однако 64-разрядный должен запускать 32-битные двоичные файлы (если установлена ia32-libs?).
Если вы установили и загрузили 64-битное ядро, вы можете перейти оттуда, чтобы установить apt: amd64, затем выполните пользовательскую историю, как ранее цитировалось, ubuntu-minimal, ubuntu-desktop и т. д.
После того, как apt: amd64 установлен, я думаю, вы можете удалить линию внешней архитектуры, поскольку вы по существу переключились в этой точке.
Отказ от ответственности: у меня нет 32-битной системы для проверки, так что это все догадки. Удачи!
[1] https://wiki.ubuntu.com/OneiricOcelot/TechnicalOverview/Beta1#Improved_handling_of_32-bit_compatibility_on_amd64_systems
Хотя вопрос аналогичен вопросу, возможно ли «обновление», от 32-битной до 64-битной установки? (Если вы еще не прочитали его, прежде чем я попрошу вас попробовать, ответ будет предоставлен.) Я также рекомендую прочитать следующие ссылки:
Возможно ли «обновление»? от 32-битной до 64-битной установки?
Как переключить 32-разрядную установку на 64-разрядную?
Как я могу переключить 32-битная установка на 64-битный?
Возможно ли: Да
Легко: НЕТ!
Если ваша проблема с памятью, то вы должны знать, что 32-битный Ubuntu может читать более 4 ГБ оперативной памяти (до 64 ГБ). Таким образом, использование последней версии 32-битного Ubuntu с компьютером с архитектурой 32 бит или 64 бит и добавлением большего объема оперативной памяти не будет проблемой. Он будет просто читать дополнительную оперативную память и работать.
Возможно, когда я столкнусь с одной и той же проблемой, это будет работать, это то, что я планировал сделать:
Получить 64-разрядную версию ОС, установить в раздел, когда полная копия документы и другие материалы из 32-битной установки, когда все будет безопасно скопировано, вы можете отформатировать остальную часть диска и использовать его.
эти инструкции сделают вашу загрузки системы с 64-разрядным ядром, но не изменять большинство пользовательских программ.
после обновления моя система с 64-разрядным процессором, я также хотел установить 64-битное ядро на мою 32-разрядную убунту 14.04.2 (кодовое имя: верный). Для этого я ввел следующие команды как эти инструкции сделают вашу загрузочную систему с 64-разрядного ядра, но не изменять большинство пользовательских программ.:
dpkg --add-architecture amd64
apt-get update
apt-get install linux-generic-lts-utopic:amd64
Примечания:
это может удалить свой 32-битное ядро, как верный - по умолчанию поставляется с обновленным ядром (ядром из утопические), ознакомиться с 14.04-релизе. В этом случае ваши текущие конфликты ядра с 64-битным ядром к установке и, следовательно, удаляется. Если вам не нравится эта идея, вы могли бы хотеть попробовать более старые 64-разрядных ядра "линукс-универсальный-лц-верный:для amd64" вместо. В "- добавить-конспектом команда" имеет важное значение. Без него система пакет не поддерживает пакеты для разных архитектур, см. Мультиархитектурный-Howto, чтобы увидеть, что apt-get будет делать для вашей системы, запустить его с помощью опции -Vs, которая позволяет "многословный режим моделирования". Это выведет все пакеты были установлены и удалены. Есть ли у вас система загружается с новым ядром зависит от grub конфигурации. Как пользователь root, запустить [F5], чтобы сделать обновление жратвы и печать текущей конфигурации загрузки. Первое изображение в списке будет грузиться по умолчанию. Чтобы выбрать другой образ ядра, я удалил строку GRUB_HIDDEN_TIMEOUT=0 от /etc/default/grub и побежал как пользователь root update-grub. Во время загрузки, теперь вы можете выбрать другое ядро (у вас есть 10 секунд нажмите любую клавишу, иначе жратвы будет продолжать с ядром по умолчанию). Ответ с самого верха голосов от 2011 и безнадежно устарел на мой взгляд. Мультиархитектура позволяет устанавливать пакеты библиотеки из нескольких архитектур на одной машине без особых церемоний.Эти ответы несколько устарели. Перекрестная сортировка теперь документирована для Debian на вики Debian, но она по-прежнему не рекомендуется.
Установка ядра из другой архитектуры теперь так же проста, как описано здесь, но новый «apt» не будет распознавать пакеты из предыдущей архитектуры, и поэтому все его интерфейсы могут сообщать много разбитых пакеты. Это либо требует изменения всех зависимостей для другой архитектуры, либо возврата apt и dpkg в 32-разрядный.
Таким образом, лучший подход может состоять в том, чтобы сначала сохранить результаты dpkg --get-selections, strip: i386 и загрузить пакет amd64 для каждой из зависимостей в кеше:
apt-get --download-only install perl:amd64 python3:amd64 python3-gi:amd64 xorg:amd64...
В лучшем случае это может быть медленным и трудоемким решением зависимостей.
Да, линия внешней архитектуры наиболее важна для установки любых кросс-аркадных пакетов. Но после этого сделайте, как упомянули несколько других пользователей:
sudo apt-get update
sudo apt-get install linux-image:amd64
sudo apt-get install linux-modules:amd64
sudo init 6 #reboot into new kernel
sudo apt-get install apt:amd64
sudo apt-get install ubuntu-desktop:amd64
Это должно было сделать это ...
Crossgrading (обновление до другой архитектуры) еще не поддерживается.
Мой рецепт для Ubuntu 16.04 Xenial, протестированный на недавно установленной 32-разрядной виртуальной машине Ubuntu со стандартным системным и SSH-сервером, но без GUI:
sudo -s
dpkg --get-selections > pkg1
dpkg --add-architecture amd64
apt update
apt install linux-image-generic:amd64 thermald
(иначе он установит heatd: amd64 и не будет перезагрузить его под 32-разрядным ядром)
reboot
после перезагрузки с 64-битным ядром:
sudo -s
unset LANG
apt install apt:amd64 apt-utils:amd64
type «Да, делайте, как я говорю!» когда его спросят, он будет безопасным
mkdir /tmp/upgrade
cd /tmp/upgrade
pkgs() { dpkg -l | awk '$4=="'$1'"{print $2}' | awk -F: '{print $1}' | sort -u
}
apt download $(comm -23 <(pkgs i386) <(pkgs amd64))
while ls *amd64*deb
do dpkg -i *amd64*deb
dpkg -l | awk '$1=="ii" && $4=="amd64" {print $2}' | awk -F: '{print $1}' |
while read a
do [ -f ${a}_*amd64*deb ] && rm ${a}_*amd64*deb
done
done
в цикле выше, мы удалим файлы .deb, которые были успешно установлены и получили статус «ii» в списке dpkg.
нам нужно повторить пробеги dpkg -i, так как это не удается с самой первой попытки
reboot
теперь, как с 64-битным ядром, так и с пользовательским пространством, оставшиеся пакеты i386 можно удалить:
dpkg --purge $(dpkg -l | awk '$4=="i386"{print $2}')
список, который вы сохранили в файле pkgs1, который вы можете использовать для любых ваших дальнейших потребностей.