x32 -> x64
akakernel 7 января, 2012 - 18:19
Есть два сервера, которые собраны на x32. Сервера боевые, что-то делать с ними продолжительное время проблематично.
Давно уже чешутся руки перевести их на х64, но ставить все по новой - большой риск остаться без головы.
Вопрос такой: если загрузиться с х64 ядра и пересобрать мир и собрать под систему сооветствующее ядро, будет ли все работать?
»
- Для комментирования войдите или зарегистрируйтесь
Если сервера боевые и у вас
Если сервера боевые и у вас чешутся ручки, то советую вам их просто почесать, если не хотите искать новую работу.
А по сути загрузившись просто с 64 битным ядром у вас всё равно будет 32 битное окружение, компилятор и прочее, собрать по обычному ни чего не получится, только cross компиляция.
Да и вообще так вам уж сразу проще винты форматнуть, чем устраивать такой длительный развал системы.
По уму берёте отдельную машину, на ней всё собираете, настраиваете, ради теста можете перенести (скопировать) с ваших серверов необходимые данные и проверить их работу / использование на собранной вами системе на отдельном ПК, когда всё настроите делаете stage4, без ваших скопированных данных и разворачиваете его на одном из ваших "боевых" серверов.
Если всё удачно - то приступаете ко второму.
Но перед любыми действиями не забудьте сделать полный бэкап.
Даже в handbook`е написано, что менять CFLAGS и CHOST нельзя, особенно CHOST, а вы хотите это сделать.
.
Мде...
Мы тоже не всего читали Шнитке!.. © В. Вишневский
Что-то я вас не понял. У меня
Что-то я вас не понял.
У меня есть система, собранная с '-march=amdfam10', временно пришлось использовать вместо AMD Phenom II, под который всё и собиралось AMD Athlon x2 6000+, а это уже '-march=k8', система большей частью работала, но периодически были "сегфолты".
А про замену CHOST 'i686-pc-linux-gnu' или 'i586-pc-linux-gnu' на 'x86_64-pc-linux-gnu' можно вообще не говорить, это равносильно сносу системы.
.
Ну, и?.. Каким образом данная тирада, свидетельствующая лишь о (образно выражаясь) нежелательности принятия "внутрь" метилового спирта вместо этилового, подтверждает ваше предыдущее, ну очень мягко говоря, странное утверждение?!
Мы тоже не всего читали Шнитке!.. © В. Вишневский
Ну и чем же оно странное.
Ну и чем же оно странное. Хватит ходить вокруг да около.
http://www.gentoo.org/doc/en/
http://www.gentoo.org/doc/en/change-chost.xml
Это хорошо, но ни вы, ни
Это хорошо, но ни вы, ни Spoiler не внимательны, если вы прочитаете описание темы ТС и моё сообщение, то поймёте, что ТС, по крайне мере я так предположил, хочет сменить CHOS с i686-pc-linux-gnu на x86_64-pc-linux-gnu, в файле /etc/make.conf, а это вообще не возможно.
Так что прежде чем что-либо говорить нужно подумать ...
вот странное утверждение:
вот странное утверждение: "Даже в handbook`е написано, что менять CFLAGS и CHOST нельзя"
Про CHOST там вообще ничего не написано, а про CFLAGS сказано:
А x86 на x64 поменять вполне можно, только придется заэмержить бинарники gcc и glibc, а потом уже бутстрапить систему
Допустим, что моя
Допустим, что моя формулировка не совсем корректна, в вашей выдержке про CHOST ни чего не сказано, но менять кардинально архитектуру (CHOST) с i686 на x86_64 нельзя в любом случае.
И смысл, который я высказал в этой фразе всё же верен, пусть её формулировка не совсем корректна.
Смысл как раз и неверен. Обе
Смысл как раз и неверен. Обе переменные можно менять (на то они и переменные, а не константы). То, что смена CHOST влечет за собой полную пересборку системы (= утановке stage1), это уже второй вопрос.
akakernel написал(а): Давно
По выдержке ТС не видно, что он хочет ставить всё начиная со stage1 или полного разворачивания stage3. ТС хочет в рабочей 32 битной системе сменить CHOST на соответствующий 64 битной системе, по крайней мере я понял так, а это не возможно.
.
Мде...
Мы тоже не всего читали Шнитке!.. © В. Вишневский
.
Вне зависимости от того, чего хочет ТС (и даже нашей "невнимательности"), вы сказали глупость, на которую вам и указали. Ничего страшного, в первые дни нового года допустимо...
Мы тоже не всего читали Шнитке!.. © В. Вишневский
akakernel написал(а):Давно
Промахнулся.
Lazhu
Но не для случая 32 -> 64 :)
Думал примерно над тем же.
Для рабочей станции.
В итоге оказалось лень (куда проще унести наличную конфигурацию на amd64 stage3).
:wq
--
Live free or die
.
Дык самой сутью своей. На то и предоставляются вам сифлаги в виде переменной (а не константы), чтобы вы могли использовать данную возможность по своему усмотрению. Ессно, если вы понимаете, что делаете, а в случае, если не понимаете - то это не ваш дистрибутив, ну или будьте готовы к тому, чтобы "...периодически были "сегфолты"..."
Мы тоже не всего читали Шнитке!.. © В. Вишневский
akakernel написал(а):Давно
По выдержке ТС не видно, что он хочет ставить всё начиная с разворачивания stage3. ТС хочет в рабочей 32 битной системе сменить CHOST на соответствующий 64 битной системе, по крайней мере я понял так, а это не возможно.
Меняйте CHOST и CFLAGS, но не так кардинально, до смены "разрядности" системы. Основная цель моего поста была в том, что бы донести до ТС то, что он хочет и как нельзя делать.
x32-тире x64
Я тут молча поключусь к вашему разговору
может для себя чего найду
--
захотелось также переехать на 64
сразу уперлось во много пробллем
--
1 винт и разделы видятся, как xvda (ставится в ксене)
2 все grub-ы замаскированы! Размаскировка не помогает (сообщение, что это дело тянет еще за собой кучу пакетов)
Единственный вариант grub-static
3 родную комбинацию (hd0,0) вся эта хрень не хавает, хотя под boot выделен раздел в 200m и стоит в начале диска
--
может кто знает, как grub установить в загрузку?
--
в общем вот такой никакой переход
grub 0.97 (grub legacy)
grub 0.97 (grub legacy) собирается только в 32 битную сборку, если у вас 64 битная система и профиль не multilib тогда придётся размаскировать grub2 (grub-1.99) и собирать его, либо использовать lilo.
.
Не обязательно. В своё время с успехом использовал sys-boot/grub-static
Мы тоже не всего читали Шнитке!.. © В. Вишневский
да профиль multilib поставил
да
профиль multilib
поставил grub-static
--
но grub> root(hd0,0) уперто не пролазит
-
Ну даже не знаю, у меня
Ну даже не знаю, у меня профиль multilib и установлен обычный grub-0.97.
Так и должно быть, почему у вас на miltilib профиле не получается поставить обычный grub не ясно.
(*)
Рассказываете руководству о рисках (я не знаю, придумайте что-нибудь) и под это дело требуете у них ТРЕТИЙ сервер, который у вас благополучно с нуля 64-битный. Теперь, когда у вас есть три сервера, один из старых можно заменить на новый, а освободившийся старый обратно делаете 64-битным. Наконец и третий сервер делаете 64-битным. Как-то так.
Самое простое
Самое простое это по методу пустого стакана. Но вот скана нет.
По поводу проблемы, пока все работает, но рано или поздно упрется в масштабируемость. Сейчас там крутится OpenVZ ядро, 32 битное, а хотелось бы Xen х64.
Так что придется ждать, пока руководству петух не клюнет во всем известное место :)
P.S. Вы тут уже сами передрались и без меня =)
Упрётся - купят новый сервер,
Упрётся - купят новый сервер, и на него можно перетянуть виртуалки. Все счастливы ничего не упало.