Привет! На связи Лили Сивик. Как вы считаете, что можно придумать с Linux, если у вас есть куча времени, сильно модифицированный Xbox 360, старый монитор и ещё более старая клавиатура? Вот сейчас и расскажу.
С чем я работала (да, это характеристики Xbox 360, если их кто-то не знает):
CPU: 3-ядерный 6-поточный процессор IBM PowerPC (big endian) Xenon CPU, работающий на частоте 3,2 ГГц.
Оперативная память: 512 МБ GDDR3, разделенная между CPU и GPU
GPU: неважно, так как Linux не может его использовать
Хранилище: фирменный разъем для жёстких дисков SATA. Не знаю, какая версия SATA.
Первым делом я быстро собрала The Setup™
Просто начала искать в интернете информацию о запуске Linux на Xbox 360. Я знала, что это реализуемо, но не понимала, как. Очень скоро наткнулась на free60.org. Это архив старой Xbox 360 linux wiki с неработающими ссылками и информацией от 2009 года. Оттуда я попала на страницу Sourceforge, где лежал старый liveCD Ubuntu. Я скинула файлы liveCD на fat32-раздел флешки, вставила её в Xbox и запустила XeLL Loader.
После нескольких минут медленной загрузки я попала на рабочий стол.
Отлично, я могу загрузить liveCD, но хочется иметь ещё что-то, что можно установить и изменить. Так что я вернулась на сайт free60 и начала копать дальше. Поиски увенчались успехом, я нашла рабочую ссылку на скачку предварительно скомпилированного ядра Linux 2.6.24.3 и прикинула, что можно установить куда-нибудь корневую файловую систему и заставить её загрузиться оттуда. Итак, теперь нужно найти способ использовать debootstrap для загрузки Debian.
Я знала, что Debian много веков назад отказался от поддержки big endian архитектуры PowerPC, но это не страшно, так как ядро, с которым я должна была работать, тоже ровесник динозавров. Я зашла на страницу истории версий Debian в Википедии, чтобы выяснить, какая версия поставлялась с ядром, наиболее близким к моему, и остановилась на Debian lenny.
Далее мне нужно было решить, как я хочу установить всё это дело на Xbox. Я бы предпочла использовать жёсткий диск, что позволило бы не переживать из-за скоростей USB 2.0, но и свой единственный свободный жёсткий диск под это дело отдавать не хотелось. И в итоге я разобрала корпус и поменяла в нём диски местами. Корпус выкинула, сохранив кабель, который шёл от проприетарного разъёма к обычному SATA. Ну просто для того, чтобы потом легко менять диски местами.
Итак, давайте начнём. Первым делом я подключила жёсткий диск к ноутбуку с помощью обычного адаптера USB-SATA, и попробовала выполнить первый этап debootstrap на винте. Я не могла выполнить этап 2, потому что там нужен chrooting, и, к сожалению, мой ноутбук не очень похож на PowerPC. Поэтому я вставила жесткий диск в Xbox, загрузила Ubuntu liveCD, вошла в файловую систему винчестера и выполнила этап 2. Затем, после создания файлов fstab и сетевых интерфейсов, пришло время отредактировать файл конфигурации для XeLL, чтобы загрузить ядро 2.6.26 и указать на нужное корневое устройство.
Во время загрузки на экран выводилась куча ошибок, но загрузка прошла успешно.
Мне всё ещё хотелось запустить что-то поновее. Последняя версия Debian с поддержкой PowerPC — этоJessie (Debian 8), а для её загрузки требовалось более новое ядро. И это ядро удалось найти! Вот оно, если среди вас есть ещё такие же сумасшедшие, как я.
Теперь можно повторить мой путь с невероятно новым ядром 3.5.4. Можно сказать, что процесс было аналогичен описанному выше. Поэтому не буду повторяться.
Ну что же, теперь у меня есть относительно свежий Linux, запущенный на Xbox. Что же мне теперь с этим делать?
Очевидно (для меня, разумеется), мы попытаемся запустить на нем сервер Minecraft!
На создание мира ушло около 30 минут, и он рухнул почти сразу после того, как я присоединилась к игре. Сервер сразу стал так сильно лагать, что я решила, что он завис и вышла из игры. Но я могу доказать, что подключилась к серверу по крайней мере на секунду!
Ну что же, пришло время нового плана. Может, что-то выгорит с Gentoo? Я взяла tarball stage 3 с сайта gentoo, распаковала его на жёстком диске, загрузила старый Debian, ввела chroot и приступила к работе. Компиляция началась, но в какой-то момент все замерло, и я сдалась.
Да, увы. Вот такой конец. Дальше я не смогла ничего придумать. Буду теперь экспериментировать с PS3. Там должно получиться пройти дальше. Но это уже совсем другая история. И если вам интересно, я её расскажу.
Что ещё интересного есть в блоге Cloud4Y
→ Спортивные часы Garmin: изучаем GarminOS и её ВМ MonkeyC
→ Взлом Hyundai Tucson, часть 1, часть 2
dmitry78
В gentoo может и взлететь - но насколько помню компилятор надо компилировать кустомайзно - под набор команд конкретного камня. теоритически на IBM, с lxde и плюшками скомпилит за неделю. и если уж красноглазить в дженте- компилировать chroot образ под конкретную архитектуру на рабочем десктопе (многопамятном и многопоточном десктопе). вопрос а зачем? понятно если накатить дженту на I-atom micro ATX - 2 sata,2 DDR3 (до 8 Gb вроде), ноутбучный pcmci- для wifi, +2 1гб сетевых + просто PCI + интеловская встройка GPU - Q2 запустил - холодный роутер (на атоме игольчатый радиатор). с файлопомойкой и drop в tcpip правилах
dmitry78
"но насколько помню компилятор надо компилировать кустомайзно " toolchain - gcc, glibc, ядро, ну и обертка уже под управлением ядра - компилять "окружение" - что баш, что rc
и gcc и glibc зависят от версии ядра, а оно еще и Python тянет (профилировщик кернел-селект), зависимости. в общем то еще удовольствие. в отпуске можно было заморочится - годами "пашет" и вроде хорошо
также вроде джента режет не поддерживающиеся команды - но на слабеньком железе жечь электричество , лучше с лайв -сиди (образно говоря про образ) запустить просто тесты - что есть, какие плюхи, собрать в образ на большом пека и уже заливать на DIY имхо- мое мнение.