====== Ubuntu для SomIQ-AM37 ====== ===== Подготовка SD карты ===== Для загрузки процессора на модуле SomIQ нужна SD карта, подготовленная специальным образом. Подробные инструкции описаны на этой [[somiq-am35-sd|странице]] ===== Запись загрузчиков на SD карту ===== Процессорные модули SomIQ-AM37 существуют в двух конфигурациях: ОЗУ 256М и ОЗУ 512М. Соответственно, для этих объемов необходимы свои загрузчики MLO и u-boot.img. Скачайте необходимые загрузчики для вашего модуля: ^ ОЗУ ^ файл MLO ^ | 256M | [[http://www.mentorel.ru/downloads/somiq-am37/boot/MLO.256]] | | 512M | [[http://www.mentorel.ru/downloads/somiq-am37/boot/MLO.512]] | ^ ОЗУ ^ файл u-boot.img ^ | 256M | [[http://www.mentorel.ru/downloads/somiq-am37/boot/u-boot.img.256]] | | 512M | [[http://www.mentorel.ru/downloads/somiq-am37/boot/u-boot.img.512]] | //Переименуйте скачанные файлы, чтобы убрать в конце цифры 256 или 512.//\\ Запишите на SD карту, раздел FAT32, сначала файл MLO, а затем u-boot.img. ===== Запись ядра Linux на SD карту ===== Скачайте и запишите файл ядра Linux 3.0.17+ на FAT32 раздел SD карты. обратите внимание, что файл ядра должен называться uImage wget http://www.mentorel.ru/downloads/somiq-am37/boot/uImage-3.0.17+ cp uImage-3.0.17+ /media/boot/uImage ==== Модули ядра ==== wget http://www.mentorel.ru/downloads/somiq-am37/boot/modules-3.0.17+-r115a-beagleboard.tgz cd /media/rootfs sudo tar xf <путь к архиву>/modules-3.0.17+-r115a-beagleboard.tgz ===== Ubuntu 12.10 (Quantal) (armhf based) Загрузка файловой системы ===== Воспользуемся готовой сборкой файловой системы, содержащей минимальное количество пакетов, поэтому доступна только консоль, но графическую оболочку мы установим сами. Скачайте файловую систему: wget -c http://rcn-ee.net/deb/minfs/quantal/ubuntu-12.10-minimal-armhf-2012-10-22.tar.xz Можно убедится, что скачанный файл не поврежден: md5sum ubuntu-12.10-minimal-armhf-2012-10-22.tar.xz 442c3a26af8e80ecf44ea470f5dcacd5 ubuntu-12.10-minimal-armhf-2012-10-22.tar.xz Распакуйте архив: tar xJf ubuntu-12.10-minimal-armhf-2012-10-22.tar.xz Получится директория с двумя файлами: ubuntu:ubuntu-12.10-minimal-armhf-2012-10-22$ ls armel-rootfs-201210221517.tar user_password.list В файле user_password.list содержится только информация об имени пользователя и его пароле для работы в файловой системе:\\ * Имя пользователя: ubuntu * Пароль: temppwd На раздел ext4 мы будем записывать содержимое архива armel-rootfs-201210221517.tar. Для этого подмонтируйте раздел ext4 карты SD и перейдите на него: cd /media/rootfs Теперь обязательно с правами суперпользователя (root) распакуйте содержимое архива с файловой системой: sudo tar xf armel-rootfs-201210221517.tar Скачайте модули для нашего ядра на ПК: wget http://www.mentorel.ru/downloads/somiq-am37/boot/modules-3.0.17+-r115a-beagleboard.tgz Запишите модули ядра в файловую систему на карте: sudo tar xzf <путь к архиву с модулями ядра>/modules-3.0.17+-r115a-beagleboard.tgz После загрузки файловой системе не забудьте выполнить команду "depmod -a" чтобы создать список доступных модулей в системе sudo depmod -a ===== Включение сети при загрузке ===== Откройте файл **/etc/network/interfaces** и уберите знак решетки в начале строки #auto eth0 #iface eth0 inet dhcp Чтобы получилось: auto eth0 iface eth0 inet dhcp Теперь при старте Ubuntu система сама определит IP-адрес для сетевого контроллера на модуле SomIQ ==== Проблема с сетью ==== Обратите внимание, что используя одну SD карту с разными модулями SomIQ, у которых MAC-адрес записан в EEPROM, сеть может не стартовать совсем. Это связано с файлом /etc/udev/rules.d/70-persistent-net.rules, в котором прописывается MAC-адрес интерфейса. Затем, когда вы меняете процессорный модуль MAC адрес будет другим и Ubuntu захочет привязать именно старый MAC к сетевому интерфейсу eth0. Удалите записи в этом файле и всё заработает. ===== Wifi с somiq-wlan ===== Далее описано как поднять wifi на модуле [[Somiqboard]] с модулем SomIQ-AM37 и индустриальным wifi адаптером [[somiq-wlan]] Для работы wi-fi модуля WL1271 требуются бинарные загрузчики. Последнюю версию бинарных загрузчиков для чипа wl1271 скачивают так: git clone git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git Вы получите директорию с большим количеством различных загрузчиков для самых разных беспроводных чипов. Нас интересует только директория **ti-connectivity**, которую необходимо скопировать в директорию на карте SD: /lib/firmware. Для этого выполним команду: sudo cp -a /ti-connectivity /media/rootfs/lib/firmware/ Команды, вводимые в консоли: 1) sudo ip link set wlan0 up [ 39.758850] wl1271: firmware booted (Rev 6.1.5.50.74) [ 39.771240] ADDRCONF(NETDEV_UP): wlan0: link is not ready 2) sudo iwlist wlan0 scan wlan0 Scan completed : Cell 01 - Address: 00:24:8C:95:95:2F Channel:1 Frequency:2.412 GHz (Channel 1) Quality=15/70 Signal level=-95 dBm Encryption key:on ESSID:"qwerty203" Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s 24 Mb/s; 36 Mb/s; 54 Mb/s Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 48 Mb/s Mode:Master Extra:tsf=000000dea50f6bb0 Extra: Last beacon: 1750ms ago IE: Unknown: 0009717765727479323033 IE: Unknown: 010882848B962430486C IE: Unknown: 030101 IE: Unknown: 2A0104 IE: Unknown: 2F0104 IE: IEEE 802.11i/WPA2 Version 1 Group Cipher : CCMP Pairwise Ciphers (1) : CCMP Authentication Suites (1) : PSK IE: Unknown: 32040C121860 IE: Unknown: DD090010180200F0000000 Cell 02 - Address: 00:22:B0:90:73:E3 ******** a lot of APs **** 3) sudo iwconfig wlan0 essid "TP-LINK_D4959E" root@beagleboard:~# [ 85.033386] ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready [ 85.040618] wl1271: Association completed. 4) sudo iwconfig wlan0 wlan0 IEEE 802.11abgn ESSID:"TP-LINK_D4959E" Mode:Managed Frequency:2.452 GHz Access Point: B0:48:7A:D4:95:9E Bit Rate=11 Mb/s Tx-Power=20 dBm Retry long limit:7 RTS thr:off Fragment thr:off Encryption key:off Power Management:on Link Quality=32/70 Signal level=-78 dBm Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:2 Missed beacon:0 5) sudo dhclient wlan0 6) ping google.com root@beagleboard:~# ping google.com PING google.com (173.194.69.101): 56 data bytes 64 bytes from 173.194.69.101: seq=0 ttl=45 time=41.901 ms 64 bytes from 173.194.69.101: seq=1 ttl=46 time=56.547 ms 64 bytes from 173.194.69.101: seq=2 ttl=41 time=80.504 ms ^C --- google.com ping statistics --- 3 packets transmitted, 3 packets received, 0% packet loss round-trip min/avg/max = 41.901/59.650/80.504 ms ===== Разрешение логина через консоль ===== //Примечание: это действие не обязательное// Теперь создайте файл **/etc/init/serial.conf** на SD карте со следующим содержимым: start on stopped rc RUNLEVEL=[2345] stop on runlevel [!2345] respawn exec /sbin/getty 115200 ttyO2 ===== Настройка дистрибутива Ubuntu ===== ==== Установка оконного менеджера ==== sudo apt-get update sudo apt-get install lxde lxde-core lxde-icon-theme ==== Установка офиса ==== Установка приложений для работы с офисными документами (*.doc, *.xls). Легковесными альтернативами OpenOffice и LibreOffice послужал AbiWord (текстовый процессор) и Gnumeric (работа с таблицами). sudo apt-get install abiword gnumeric ==== Компиляция Google Диск ==== Сначала нужно установить требуемые пакеты sudo apt-get install gcc pkg-config git cmake build-essential libgcrypt11-dev libjson0-dev libcurl4-openssl-dev \ libexpat1-dev libboost-filesystem-dev libboost-program-options-dev binutils-dev Скачиваем исходники Grive git clone https://github.com/Grive/grive.git Компиляция. На SomIQ-AM37D с процессором DM3730 1ГГц и ОЗУ 512М компиляция занимает около 5-х минут. cd grive cmake . make Теперь создаем директорию, с которой будет синхронизироваться Google-диск (название может быть любым): mkdir ~/Google-drive Скопируем скомпилированную утилиту в новую директорию: cp ./grive/grive ~/Google-drive Запустим утилиту с целью подключится непосредственно к службе Google-Drive: cd ~/Google-drive ./grive -a Запущенная программа grive выведет ссылку, которую надо открыть, зайти в свою учетную запись на Google-drive и подтвердить запрос Grive на использование Google-Drive. Появится цифро-буквенный код, который необходимо скопировать и вставить в запрос grive. Если всё ОК, то запустится демон, который и будет синхронизироваться с Гугл-диском. Файлы можно открывать из консоли или графического файлового менеджера. ==== Локализация ==== cd /usr/share/locales sudo ./install-language-pack ru_RU sudo vi /etc/default/keyboard Исправить файл /etc/default/keyboard: XKBMODEL="pc105" XKBLAYOUT="us,ru" XKBVARIANT="" XKBOPTIONS="grp:ctrl_shift_toggle" ==== Настройка часового пояса ==== Сначала выберите часовой пояс, соответствующий вашему положению. В терминале появится текстовое меню с понятным интерфейсом: sudo dpkg-reconfigure tzdata Чтобы сразу же синхронизировать локальное время с сервером времени в Интернет выполните команду: sudo ntpdate pool.ntp.org ==== Установка RDP-клиента ==== remmina - популярный GUI для подключения к удалённому рабочему столу, в том числе по RDP sudo apt-get install remmina FreeRDP — клиент (форк rdesktop, активно развивается) sudo apt-get install freerdp