Это краткая статья о том, как без переустановки организовать 64-битную архитектуру на вашем 32-битном Debian/Deabian-based дистрибутиве (который вы могли по-невнимательности загрузить вместо 64bit).
* Ваше железо должно изначально поддерживать amd64, магию творить никто не собирается.
* Это может повредить систему, так что действуйте очень осторожно.
* Всё проверялось на Debian10-buster-i386.
* Не делайте этого, если хоть что-то здесь не понимаете.
Сразу к делу, если высумaсшедший всё взвесили, начинаем подготовку пакетов (в принципе здесь порядок не имеет значения, но по пунктам удобнее)
1. Выбираем amd64 в /etc/apt/sources.list, вставляя ' [arch=amd64] ' между deb\deb-src и URL
Это нужно для того, чтобы в будущем загружались только 64-х битные пакеты.
2.Добавляем amd64 в dpkg, чтобы он не ругался:
3.Обновляем список пакетов:
Разумеется всё это не имеет смысла без 64-х битного ядра, поэтому устанавливаем его:
Место $VERSION подставить нужную версию ядра.
После установки ядра grub перенастроится автоматически.
После перезагрузки наша система уже сможет работать с amd64, но с пакетами могут возникнуть некоторые проблемы. У меня для их решения было достаточно выполнить данные команды:
Хотя сильно на этот счёт беспокоится тоже не стоит — все нужные пакеты со временем сами установятся как зависимости, а ненужные удаляются так:
После приведённых выше операций можно опять поправить sources.list, убрав ' [arch=amd64] ',
чтобы с пакетами не было проблем.
Теперь в вашем распоряжении находится 64-битная система!
* Ваше железо должно изначально поддерживать amd64, магию творить никто не собирается.
* Это может повредить систему, так что действуйте очень осторожно.
* Всё проверялось на Debian10-buster-i386.
* Не делайте этого, если хоть что-то здесь не понимаете.
Dpkg, apt и sources.list
Сразу к делу, если вы
1. Выбираем amd64 в /etc/apt/sources.list, вставляя ' [arch=amd64] ' между deb\deb-src и URL
Пример
# Base reps
deb [arch=amd64] http://deb.debian.org/debian/ buster main contrib non-free
deb-src [arch=amd64] http://deb.debian.org/debian/ buster main contrib non-free
# Update reps
deb [arch=amd64] http://deb.debian.org/debian/ buster-updates main
deb-src [arch=amd64] http://deb.debian.org/debian/ buster-updates main
# Security reps
deb [arch=amd64] http://security.debian.org/debian-security/ buster/updates main
deb-src [arch=amd64] http://security.debian.org/debian-security/ buster/updates main
Это нужно для того, чтобы в будущем загружались только 64-х битные пакеты.
2.Добавляем amd64 в dpkg, чтобы он не ругался:
$ sudo dpkg --add-architecture amd64
3.Обновляем список пакетов:
$ sudo apt update
Ядро
Разумеется всё это не имеет смысла без 64-х битного ядра, поэтому устанавливаем его:
$ sudo apt install linux-headers-$VERSION-amd64 linux-image-amd64
Место $VERSION подставить нужную версию ядра.
После установки ядра grub перенастроится автоматически.
Завершение
После перезагрузки наша система уже сможет работать с amd64, но с пакетами могут возникнуть некоторые проблемы. У меня для их решения было достаточно выполнить данные команды:
$ sudo apt --fix-broken install
$ sudo apt full-upgrade
Хотя сильно на этот счёт беспокоится тоже не стоит — все нужные пакеты со временем сами установятся как зависимости, а ненужные удаляются так:
$ sudo apt autoremove
После приведённых выше операций можно опять поправить sources.list, убрав ' [arch=amd64] ',
чтобы с пакетами не было проблем.
Теперь в вашем распоряжении находится 64-битная система!
amarao
Мягко говоря, нет. Вы показываете как на 32-битной архитектуре начать использовать 64-битное ядро. userspace при этом остаётся 32-битным. Самая большая боль — с dpkg (переустановите dpkg с 32 бит на 64 бит с помощью dpkg...) и libc.
Мои робкие заметки о миграции реального боевого ноута с 32 бит на 64 несколько сильно длиннее и путаннее.
medium.com/@george.shuklin/my-upgrade-from-i386-to-amd64-and-fix-dpkg-without-dpkg-72c730369912
Sid_Pic Автор
У меня с этим проблем небыло: apt сам всё аккуратно заменил. С остальным соглашусь.
tuupic
Когда-то давно пересобирал gentoo с 32 бита на 64. Вот там было весьма длинно и путанно.