Переселение души: linux на android планшете
Моя история начинается с прочтения данной статьи, после которой я и решился приобрести чудо китайского планшетостроения: superpad. Данный планшет брался как игрушка для «поковырять немного», по совместительству, читалка, игралка на пары и смотрелка в долгую дорогу… Сразу отмечу, что у меня два usb винчестера на 500 гб и 1тб, на которых и хранится все самое важное для веселой жизни, и разбиты они в ntfs и ext4. И, естественно, планшет их не видит.
Вот и первая причина поковыряться. После просмотра 200 страниц форума на xda-developers.com очертились определенные
минусы | плюсы |
---|---|
нужны соответствующие модули ядра linux | обновление прошивки до 2.2, заботливо собранную народными умельцами из стекла и картона + прошивки superpad 2 |
ушлые китайцы исходных кодов ядра под данный девайс не дают и всячески препятствуют их получению… |
На данном этапе все попытки вскрытия данного планшета отложились в долгий ящик. До славного времени для студента – сессии. А так как на сессии студенты делают абсолютно все, лишь бы не по предмету, то веселые ночные посиделки в интернете на заведомо буржуйских сайтах возобновились. И пришла гениальная идея поставить на данный планшет православный linux, в моем случае – ubuntu.
Что из этого вышло, смотрим ниже.
Понятно, что просто так взять и установить не получится… ну что же, где наша не пропадала…
нам понадобятся:
- Linux – у меня kubuntu
- windows – xp проще всего
- хорошее усвоение сознанием двух фраз: «just for fun!» и «спокойствие, только спокойствие».
- образ linux, тут смотреть, как создать свой ; созавать образ нужно под свою архитектура процессора, у меня процессор семейства arm11 с архитектурой arm6, так что ubuntu выше 9.10 – мечта…
Если у вас arm cortex – то вам повезло и для вас открываются славные возможности последней ubuntu и заточенной под планшеты unity. - microsd флэшкарта, отформатированная в три раздела: fat, ext2, куда записывается образ, и swap
рассмотрим основные этапы загрузки android и linux
1. Power on and boot ROM code execution | Power on and boot ROM code execution |
2. The boot loader | The boot loader |
3. The Linux kernel | The Linux kernel |
4. The init process | The init process |
5. Zygote and Dalvik | console(bash, zsh. ) / wm(kde, gnome. ) |
6. The system server | Boot completed |
7. Boot completed |
Как видно, отличия начинаются с этапа выполнения init.
Его-то и проще всего поменять.
Честно напишу, думал, что можно использовать только адроидовский инит и что он намертво прикручен к ядру. И даже получив пример рабочего ramdiskа от другого планшета, не думал, что он заведется…
содержимое ramdiska
bin dev etc home init init.rc lib linuxrc mnt newroot opt proc root sbin sys tmp usr var
В /bin лежит busybox, в /sbin – switch_root ссылкой на него.
Код init из ramdiskа от zt-180
#!/bin/sh echo Starting from initram image. Echo Waiting for SD-CARD wake up. sleep 3 echo "Mounting new rootfs" mount -t ext2 /dev/mmcblk0p2 /newroot && echo OK echo Hold on, switching root. exec switch_root /newroot /sbin/init echo hrm, have a shell instead exec /bin/ash
Остается прошить ramdisk в память (я использовал burntool под xp) и — вуаля, этап загрузки. Да, прошивал я вместо recovery, так что для запуска Linux приходится зажимать клавиши при старте.
Так, этап загрузки пройден и стоит запастись терпением, так как консоль не подает признаков жизни, а все грузится достаточно медлительно.
Настраиваем автологин на первую консоль
В /etc/init/tty1.conf заменяем последнюю строчку на exec /bin/login -f Yor_Login < /dev/tty1 >/dev/tty1 2>&1 потом в своем ~/.bashrc можно прописать команды, которые будут стартовать при автоматическом логине.
Боремся с икс-сервером
У меня он определенно не дружил с тачскрином, xorg.conf и xterm… удалил драйвер synaptic, закинул в ~/.xinitrc следующее:
#!/bin/bash # $Xorg: xinitrc.cpp,v 1.3 2000/08/17 19:54:30 cpqbld Exp $ # /etc/X11/xinit/xinitrc # # global xinitrc file, used by all X sessions started by xinit (startx) # invoke global X session script #. /etc/X11/Xsession xclock -geometry 50x50-1+1 & exec xterm -geometry 80x66+0+0 -name login
Боремся с рабочей средой
Я захотел поставить kde, так как мне безумно нравится отрисовка графики библиотекой qt. Сразу скажу: да, поставилось и завелось, но КАК…
Во-первых, сразу настроил автологин:
в /etc/kde4/kdm/kdmrc находим и меняем под себя следующее
AutoLoginEnable=true # If true, auto-login after logout. If false, auto-login is performed only # when a display session starts up. # Default is false #AutoLoginAgain=true # The delay in seconds before automatic login kicks in. # Default is 0 AutoLoginDelay=3 # The user to log in automatically. NEVER specify root! # Default is "" AutoLoginUser=Login # The password for the user to log in automatically. This is NOT required # unless the user is logged into a NIS or Kerberos domain. If you use this # option, you should "chmod 600 kdmrc" for obvious reasons. # Default is "" AutoLoginPass=Password
и, как написано, делаем chmod 600 kdmrc в консоли под рутом, чтобы нехорошие личности не подсмотрели наш пароль.
Во-вторых, при входе подозрительно долго висела заставка, и я, засомневавшись, вызвал startkde из консоли. После долгого и нудного показа всевозможных ошибок наконец загрузилась плазма в режиме нетбука. Графические эффекты выключены, так как мы сидим под framebufferом, и наблюдаются местами дичайшие тормоза, но все же это kde и оно загрузилось!
Тонкая подстройка всего и вся под себя
У каждого своя, оптимизацию я пока что не проводил, а сделать предстоит очень многое: ускорить загрузку, оптимизировать рабочее пространство. Посматриваю в сторону более легковесного wm – e16 – но пока основным не сделал. так же нужно откалибровать тачскрин, благо что виртуальная клавиатура уже есть в kde.
Посматриваю в сторону openbox + razor-qt .
«Наслаждаемся!»
Итоги
Подключил репозитории debian 6. Не работает в упор звук, не настроен тач и рабочее пространство. Очень не хватает модулей ядра, так что попытаюсь собрать и прикрутить…
Сбиты многие службы и политики, в интернет ходит только под root, но интернет настроен и это радует.
Ps: Да, без модулей ядра подключается только разделы в fat и ext2, что не радует.
usb клавиатура + мышь будут очень ценными при отладке и настройке.
Устанавливаем Linux на Windows-планшет
В данной статье с практическими советами от Chip мы расскажем вам о том, как можно инсталлировать на вашем планшете помимо Windows 8 еще и Linux.
Linux на планшете с Windows 8: подготавливаем загрузочный носитель
Прежде, чем вы приступите к инсталляции Linux на ваш планшет, для начала необходимо будет подготовить загрузочный носитель, на котором будет сохранен дистрибутив операционной системы Linux.
- В первую очередь необходимо выяснить, какой «образ» необходим для вашего планшета. В этом примере используется Linux-дистрибутив, который называется «Ubuntu». При этом вы можете выбрать между 32-битным, 64-битным и ARM-вариантами. Как правило, в планшетах устанавливаются ARM-процессоры.
- Кроме того, необходимо скачать и установить программу Win32 Disk Imager.
- Также для инсталляции вам понадобится USB-флешка емкостью по меньшей мере 4 Гбайт. Для начала отформатируйте эту USB-флешку под систему FAT32 и затем запустите утилиту Win32 Disk Imager. В «Image File» выберите файл Ubuntu, который скачали ранее, а в «Device» выберите букву, соответствующую имени вашей USB-флешки. После всех этих действий нажмите на «Write».
Windows-планшет: загружаемся с USB-флешки
В качестве следующего шага вы должны позволить вашему планшету загрузиться с USB-флешки. Но заметим, что работает это не всегда так просто, как в случае с обычным персональным компьютером.
- Выключите ваш планшетный компьютер и вставьте флешку в USB-порт. Снова включите планшет. Теперь он должен автоматически загрузиться с USB-флешки.
- В том случае, если ваш планшет загрузился «обычным» образом, снова выключите его и нажмите одновременно кнопки питания и увеличения громкости звука, чтобы войти в UEFI (BIOS). Здесь теперь вы можете указать, что планшет должен загружаться с USB-флешки.
Устанавливаем Linux на планшет
Теперь совершенно привычным образом вы можете установить Linux на своем планшете. Тем не менее, если вы позже хотели бы использовать еще и Windows, вы должны обратить внимание на одну мелочь.
- Во время инсталляции выберите пункт «Установить Ubuntu рядом с Windows 8». После этого можно будет распределить флеш-память планшета между операционными системами. Позже вы сможете использовать ваш планшет как с Linux, так и с Windows.