20.11.2017

Mozilla Firefox Quantum

Вау! 64-бит!

AutoCopy не работает более. Теперь это AutoCopy (WebExtension)

Жмякаю на аудеоплеере F12, достаю ссылку на mp3, открываю в новом окне и он проигрывается. А как сохранить то? Как вызвать диалог?
Правый клик, Информация о странице, Мультимедиа, Сохранить как...
Или править, как HTML и сделать сылку вручную, на которую можно правым кликом Сохранить как...

17.11.2017

SDCard

Вылавилась мне из ибея карточка
SanDisk 16GB Ultra A1 Micro SD SDHC Card 98MB/s UHS-I C1


Уж не знаю, при каких условиях она выдаст под 98MB/s, но протестировать необходимо.
Первым делом и с лёгкостью:
hdparm -t /dev/mmcblk0
Далее устанавливаю FIO и делаю benchmark:
fio --name=randread --ioengine=libaio --iodepth=16 --rw=randread --bs=4k --direct=0 --size=512M --numjobs=16 --runtime=240 --group_reporting
// Тотальный размер равен SIZE x JOBS
При таком задании (8Gb) получил результат:
5401KB/s
1350 IOPS

Теперь хочу сравнить NAND с CDCard
fio --name=randread --ioengine=libaio --iodepth=1 --rw=randread --bs=4k --direct=0 --size=512M --numjobs=8 --runtime=240 --group_reporting

FIO может оставлять файлы в домашней директории. Для поиска лишнего хорошо подходит визуальная утилита Baobab


Под Windows 7 x64

Собственно, предъявить как бы и нечего. По скорости Class 10, A1 как бы соответствуют 10 MB/s. Но душа не спокойна.
А что с I/O Perfomance ?
IOPS = (MBps Throughput / KB per IO) * 1024 (convert)
И в случае с CrystalDiskMark 6.0.0 x64 минимальные слегка округлённые в большую сторону значения получаются:
Read (4K) = 950 IOPS
Write (4K) = 460 IOPS

ATTO Disk Benchmark Tool показывает: 

Read (4K) = 990 IOPS
Write (4K) = 685 IOPS

А должно быть 1500 и 500 соответственно. A1 и да и нет...

Далее ищем лого
и узнаём от самого SanDisk, что это некая максимальная призрачная величина для этикетки и рекламы. Отличная техническая спецификация! Так что, вроде как, снова не обманули ))
А если надо быстрее, то вот картинка


SanDisk Extreme соответствует 30MB/s

16.11.2017

В кучку

Любая информация, размещенная в этом блоге, предназначена только для свободного изучения. Содержание блога предназначено только для общих целей. Автор не даёт гарантий и не несет ответственности за точность и полноту сведений, приведенных на данном сайте. Ни при каких обстоятельствах автор не несет ответственности за какой-либо прямой, непрямой, особый или иной косвенный ущерб в результате использования информации в этом блоге или на любом другом сайте, на который имеется гиперссылка с этого блога, возникновение зависимости, снижения продуктивности, увольнения или прерывания трудовой активности, а равно и отчисления из учебных учреждений, за любую упущенную выгоду, приостановку хозяйственной деятельности, потерю программ или данных в Ваших информационных системах или иным образом, возникшие в связи с доступом, использованием или невозможностью использования Сайта, Содержимого или какого-либо связанного интернет-сайта, или неработоспособностью, ошибкой, упущением, перебоем, дефектом, простоем в работе или задержкой в передаче, компьютерным вирусом или системным сбоем, даже если автор будет явно поставлена в известность о возможности такого ущерба. Используя данный блог, Вы выражаете свое согласие с «Отказом от ответственности» и установленными Правилами и принимаете всю ответственность, которая может быть на Вас возложена.
  1. Железо + редизайн
  2. DEBUG
  3. Install Cubieez + другие образы
  4. Подключаю монитор 
  5. Tune Cubiezz
  6. Install Software
  7. Backup++
  8. WAR
  9. ARMBIAN 

Что умеет мой сервер на данный момент?
  1. Подтягивать из дропбокса торрент-файлы и автоматом начинать их закачку трансмиссией в файлопомойку.
  2. Файлопомойка Samba и FTP с хранением на винте SATA
  3. Выдавать видео-поток в сеть, складывать в дропбокс скриншоты движения.
  4. Играть музыку и транслировать её в сеть.
  5. Показывать картинки ))
В планах прикрутить большие красные кнопки для управления музлом и прочим. Благо пинов есть

sudo apt update && sudo apt upgrade


15.11.2017

Armbian

Я тут внезапно решил, что Armbian лучший вариант:
  • обновляется
  • десктоп + сервер
  • прилизан и красив
  • умеет играть мультимедию
  • присутствует в коробке скрипт установки в NAND
Но, поскольку он универсальный, то приходится допиливать. И после горячо мною полюбившегося Cubieez-nand есть не очевидные моменты.

Во-первых, не стоит слепо вестись на подсказку и запускать команду UPGRADE. Может поломаться.

2. NET

Из под пользователя не поменяешь настройки сети, ни в графике, ни через armbian-config, который вроде как и требует привилегий. Лезешь в /etc/network/interfaces и там всё красиво, но не работает ))

3. ROOT-NODM

Видео может не играть из под пользователя. Жмякать в консоли sudo startx для просмотра видосика ломает. И я сломаю идеологию и буду работать из под root-а. Для этого надо подправить autologon. Правлю в файле /etc/default/nodm параметр NODM_USER=root


4. APT

Установка всего и сразу
Тут сразу интересный момент, это apt vs apt-get
Для более удобного разрешения и в след за рекомендациями использовать aptitude vs apt
А теперь всё вместе и подробно Команды aptitude, apt-get и apt




sudo nano /etc/apt/sources.list
>> deb http://download.webmin.com/download/repository sarge contrib
>> Ctrl-O, Ctrl-X
wget http://www.webmin.com/jcameron-key.asc
apt-key add jcameron-key.asc
apt update
apt install gparted cryptkeeper memtester filezilla firefox samba webmin python-pip mpd mpc ario xfce4-mpc-plugin transmission-daemon transmission-remote synaptic -y

5. SOFT

Подправляю статьи для transmission и mpd

6. Bluetooth 

7. RUS

Русификация (ещё не делал)

29.04.2016

Редизайн

И снова редизайн, очередной.

Была барсетка
Фото-рамка в системнике
Была почти универсальная упаковка стяжками - Барсетка v2
И вот теперь сканер разума

Блок питания от ноутбука даёт 19В при 3,42А. Далее два DC-DC на 5В и на 12В. Радиаторы в этих режимах не очень то и нужны, но были прилеплены на КПТ-8 эпоксидкой. Термоклей так и не купил, но нашлась 10-ти минутная эпоксидка, да.

На 5В повесил две банки по 4700 мкФ. А на 12В - шесть банок по 4700 мкФ и даже этого мало.
Винт заводится со второй-третьей попытки при напряжении в 13В. На старте блинов просаживает питание до 10В. Или питатель LM2596 совсем говно, или винт сумасшедший.
Температурный режим с этим безумным винтом тоже впечатляет


Ещё в "сканере разума" встроен свитч на три живых порта и вафелька китайская. Так уж удачно случилось, что вафелька, приехав из Китая, честно отработала пол часа и откинулась по питанию. Я на неё повесил ещё 2200 мкФ и радиатор. И теперь мой кубик в сеть может выходить, как по кабелю, так и по эфиру. Причём, эфир вокруг ещё и репитится. А в USB можно всадить не открывая корпус сканера, через прорезь. Для сурового USB-гэнгбэнга приобретён 3.0 хабик на 4 порта, но в корпус сканера он пока не встал, м.б. со временем. Со временем и куллер появится, к лету.



27.03.2016

Барсетка v2

Барсетка сшита стяжками.
Имеет блок питания,
USB 3.0
и SATA 2.5




Остановка демона


















Что может быть проще?
/etc/init.d/transmission-daemon stop
В Ubunte (Armbian Legacy Ubuntu Trusty) так остановить не получится. Даже не поможет
killall transmission-daemon
start-stop-daemon -Kvx /usr/bin/transmission-daemon
Бесполезно так же закрывать через PID:
ps axu | grep transmission-daemon
pidof transmission-daemon
kill 12012 
В таком случае используем команду:
service transmission-daemon stop
Можно почитать аск How to enable or disable services?

А вот с тем же дистрибутивом Armbian Ubuntu и пакетом unbound ситуация иная - юзай killall в придачу.

Power supply

Вопрос питания затрагивался в посте Падает
Статистика собрана здесь Cubieboard power usage with SATA из которой следует, что общее потребление Кубика с SATA во время копирования большого файла 1,1А. Закладываю 1,5А

 

 

16.03.2016

DNSLeak - DNSCrypt-proxy

Установить его можно, конечно, очень легко:
add-apt-repository ppa:anton+/dnscrypt
apt-get update
apt-get install dnscrypt-proxy
и он сразу заработает на адресе 127.0.0.2
Причесать можно в файле конфигурации
/etc/default/dnscrypt-proxy
Но я для надёжности хочу две копии процесса на разные DNSCrypt-сервера.
Поэтому пойдём более сложным путём.


Установка

Для работы dnscrypt-proxy нужна библиотека Sodium crypto, установим её предварительно: 
Установка LIBSODIUM

Установка расписана в документации

В таких делах, разумеется, лучше перебздеть и установить крайнюю версию.
git clone https://github.com/jedisct1/dnscrypt-proxy.git 
cd dnscrypt-proxy 
./autogen.sh
./configure && make -j2
make install

Но у меня не получилось с GitHub-а, тогда можно, как вариант, зная желаемую версию, установить вот так:

wget http://download.dnscrypt.org/dnscrypt-proxy/dnscrypt-proxy-1.6.1.tar.gz -O - | tar -xz

cd dnscrypt-proxy-1.6.1/
./configure && make -j2
make install
>>>???>>> cp dnscrypt.conf /etc/init/
cd ..
rm -rf dnscrypt-proxy*

В попытках запустить две копии с разными конфигами всякое непотребное творил. Приходилось полностью удалять установленные пакеты:
dpkg --purge --force-depends dnscrypt-proxy


Запуск

Пробуем запустить:
/usr/local/sbin/dnscrypt-proxy -R 4armed --local-address=127.0.0.1:40 --daemonize --pidfile=/run/dnscrypt-proxy40.pid 

Задать можно и другие опции.
При этом, dnscrypt-proxy подсматривает в файл:
 /usr/local/share/dnscrypt-proxy/dnscrypt-resolvers.csv
 /usr/share/dnscrypt-proxy/dnscrypt-resolvers.csv
где сопоставлены имена серверов с их адресами и портами, ключами и всё такое - БД. Это сделано для нашего удобства! В качестве аргумента даём просто имя. Но и не забываем оберегать этот файл от изменений злыдней.

Запускается, сообщает радостные вести, но не демонизируется.
[INFO] + DNS Security Extensions are supported
[INFO] + Provider supposedly doesn't keep logs


DNSCrypt-Loader


Тыркался и нашёл DNSCrypt-Loader
Установка и запуск расписаны там.
Но при попытке запуска с заданным резолвером ошибка: Loading failed.
Конфиги в директории /etc/dnscrypt-loader/ пустые.
Из исходников стало ясно, что конфиги сохраняются, если процесс запущен и работает. А из текстово-графического интерфейса стало понятно, что dnscrypt-loader не может грамотно распарсить файл /usr/local/share/dnscrypt-proxy/dnscrypt-resolvers.csv
Пришлось открыть вопрос #5

Наткнулся ещё на предупреждение, что
Please note that on Linux systems (kernel >= 3.9), multiples instances of dnscrypt-wrapper can run at the same time. Therefore, in order to switch to a new configuration, one can start a new daemon without killing the previous instance, and only kill the previous instance after the new one started.
И понял, что устал от Ubuntu и решил, что пора перебираться на ванильный Дебиан, пожертвовав графикой.

Установил Ванильный и всё заработало.

Всяческие проверки

Список открытых портов:
netstat -lntu
netstat -anp | grep dnscrypt-proxy

Посмотрим на зашифрованный запрос
tcpdump -i eth0 port 443


Косяки


1. При запуске dnscrypt-proxy получаем ошибку:
loading shared libraries: libsodium.so.4: cannot open shared object file: No such file or directory

Решение (via):
Если libsodium был установлен без ошибок, но проблема возникает, то выполняем:
# ./configure --libdir=/usr/local/lib
Если проблема остается то выполняем:
# ln -s /usr/local/lib/libsodium.so.4 /usr/lib/libsodium.so.4

2. При выполнении service dnscrypt start получаем:
# service dnscrypt start
dnscrypt stop/waiting
Скрипт dnscrypt-proxy находится в /usr/local/sbin/dnscrypt-proxy, а скрипт его ищет в /usr/sbin/dnscrypt-proxy.

Решение (via):
# ln -s /usr/local/sbin/dnscrypt-proxy /usr/sbin/dnscrypt-proxy

The Sodium crypto library








В таких делах, разумеется, лучше перебздеть и установить крайнюю версию.
git clone https://github.com/jedisct1/libsodium.git 
cd libsodium 
./configure && make && make check
make install
ldconfig


Или, как вариант, зная желаемую версию, можно установить вот так:
apt-get update
apt-get install build-essential

wget http://download.libsodium.org/libsodium/releases/libsodium-1.0.8.tar.gz -O - | tar -xz

cd libsodium-1.0.8/
./configure && make && make check
make install
ldconfig
cd ..
rm -rf libsodium*

Установка в документации Sodium

DNSLeak - Unbound

Установка


apt-get install unbound
cd /etc/unbound
wget ftp://ftp.internic.net/domain/named.cache # Это список корневых DNS-серверов
unbound-control-setup # генерируем ключи
chown unbound:root unbound_* # хозяин
chmod 440 unbound_*
cp /usr/share/doc/unbound/examples/unbound.conf /etc/unbound/unbound.conf.default
nano /etc/unbound/unbound.conf

 

 

 

Конфигурация

/etc/unbound/unbound.conf
include: "/etc/unbound/unbound.conf.d/*.conf"
module-config: "validator iterator"

server:
  identity: "DNS" 
 version: "1.0" 
 hide-identity: yes 
 hide-version: yes 
 harden-glue: yes

 num-threads: 1 # Количество потоков
 msg-cache-size: 32m # размер кеша полученных DNS ответов
 rrset-cache-size: 64m #        кеша DNS записей
 key-cache-size: 20m # размер памяти для хранения DNSSEC ключей
 cache-max-ttl: 2678400 # максимальный срок жизни записей в кеше (24ч.*31)
 # сколько одновременных клиентских запросов сможет обработать один поток
 num-queries-per-thread: 1024
 # срок жизни записей из внутреннего кеша "неработающих" и "неправильных" DNS серверов
 infra-host-ttl: 60 
 infra-lame-ttl: 120
 # сколько различных случайных портов может использовать при проведении запросов
 outgoing-range: 512 

 verbosity: 1 # Степень вывода логов 1-4
 logfile: "/var/log/unbound.log"
 use-syslog: no

#Кому разрешено посылать рекурсивные запросы (пользоваться кешем)
access-control: 0.0.0.0/0 allow
private-address: 10.0.0.0/24 
port: 53
interface: 127.0.0.1                 # Интерфейс на котором будем слушать 53-й порт
interface: 10.10.10.10               #
interface-automatic: no              # Определять интерфейсы автоматически
outgoing-interface: 10.10.10.10      # ip адрес интерфейса, который подключен к интернет
do-not-query-localhost: no 
do-ip4: yes
do-ip6: no
do-udp: yes
do-tcp: yes

forward-zone: 
    name: "." 
#    forward-addr: 127.0.0.1@40 # dnscrypt-proxy
#    forward-addr: 127.0.0.1@41 # dnscrypt-proxy
    forward-addr: 8.8.8.8@53    # google
    forward-addr: 77.88.8.8@53  # yandex

remote-control: 
    control-enable: yes 
    control-interface: 127.0.0.1 
#    control-interface: 10.10.10.10 
    control-port: 953

server-key-file: "/etc/unbound/unbound_server.key"
server-cert-file: "/etc/unbound/unbound_server.pem"
control-key-file: "/etc/unbound/unbound_control.key"
control-cert-file: "/etc/unbound/unbound_control.pem"



Запуск и всяческие проверки

unbound-checkconf /etc/unbound/unbound.conf
service unbound restart
ps auxw | grep unbound      # процесс
netstat -anp | grep unbound # порты
nslookup mail.ru 10.10.10.10
drill -D mail.ru @127.0.0.1
drill india.com @10.10.10.10 ### 1-ое обращение
# Обращаем внимание на "Query time" при первом и последующем запуске
drill india.com @10.10.10.10 ### 2-ое обращение
elinks ya.ru    # браузер
dig ya.ru       # и как там чё?
unbound-control status
unbound-control lookup mail.ru
unbound-control stats
unbound-control dump_cache /tmp/DNS_cache.txt
unbound-control list_forwards
unbound-control forward


DNSSEC

Unbound, умеет DNSSEC, а 8.8.8.8, как и очень многие другие, в свою очередь, умеют и DNSSEC и верифицировать записи, что означает, что в случае невалидной подписи они не резолвят адреса. И тут есть подвох. Включая эту опцию (а зачем от неё отказываться?), мы должны проследить за тем. что бы наш резолвер умел работать с DNSSEC. 
dig -t any +dnssec 8.8.8.8
Отключить DNSSEC в Unbound можно следующим образом:
  1. server:        val-permissive-mode: yes 
  2. Убрать запись auto-trust-anchor-file: "/var/lib/unbound/root.key", которая находится в файле /etc/unbound/unbound.conf.d.root-auto-trust-anchor-file.conf
  3. server:        module-config: "iterator"
Плагин для Firefox: DNSSEC/TLSA Validator

 

 Косяки

И тут нас ждал косяк. Список форвардов (две крайние команды) - пуст.
А вернее, получаем вот такой ответ:
# unbound-control forward
off (using root hints)

Оказалось, что необходимо проделать следующее:
chmod -x /etc/resolvconf/update.d/unbound
Или установить RESOLVCONF_FORWARDERS=false в /etc/default/unbound

Ага, список в самом верху - это надежда выудить где и как прячется тот самый false или true, отвечающий за включение форварда. Можно сделать кастыль, отредактировав  
/etc/init.d/unbound и добавив в секцию start строку
unbound-control forward 8.8.8.8 8.8.4.4
Но окончательно психанув, я решил напрячь других, как "настоящий взрослый мужчина".
Там то мне и подсказали.

Ну и ещё при запуске демона можем получить предупреждение:
Warning: /etc/resolv.conf is not a symbolic link to /run/resolvconf/resolv.conf
Избавимся от него:
rm /etc/resolv.conf
ln -s /run/resolvconf/resolv.conf /etc/resolv.conf

10.02.2016

DNS Leak

Кто твой первый советник, тёмный лорд?    >>>    DNS Leak Test

Злоумышленник может не просто вычислить тебя по айпишнику и набить морду, но и подменить IP-адрес сайта при твоём запросе к DNS серверу. Поэтому лучше, на всякий случай, спрячем наши запросы.

Для шифрования DNS-трафика будем использовать dnscrypt-proxy. Когда я обращаюсь к более далёким товарищам с вопросом, да ещё и шифрую этот диалог, то чётко понимаю, что скорость снижается. Поэтому очень хочется кэшировать. А dnscrypt-proxy этого, естественно, не делает. Для кэширования DNS-запросов есть выбор: Dnsmasq и Unbound (и ещё плюс всякого, конечно). Первый - комбайн. Берём второй. Unbound ещё и быстр! А кэш у него хранится целиком в памяти. Вот и получается прослойка:

WAR

Готовимся к войне с хакерами
  1. Смена пароля на роутере
  2. Смена адресации локальной сети (настройка DHCP) и статического локального адреса самого роутера
  3. Маскировка DNS
  4. Transmission Blocklist
  5. VPN или SSH

02.02.2016

Обновление дистрибутива



Обновление дистрибутива Cubian до последней версии Debian на Allwinner A10/A20

sudo su
cat /etc/*release*
ntpdate-debian 
apt-get -y install debian-keyring 
apt-get update 
apt-get -y install debian-archive-keyring 
apt-get update 
apt-get install -y git
git clone https://opensourceclient@bitbucket.org/opensourceclient/prepare-cubian.git
./prepare-cubian/cubian_update-1.sh
./prepare-cubian/cubian_update-2.sh
./prepare-cubian/cubian_update-3.sh
cat /etc/*release*









Upgrade Ubuntu 12.10 (Linaro 13.04) to Ubuntu 13.10 (Linaro 14.01) and later to Ubuntu 14.04 LTS

13.04.2015

Трансляция звука из Windows 7 на Cubieboard в USB-SND PCM2704

1. PCM2704

dmesg
mpd.config

2. PulseAudio


3. Windows 7

  1. WinESD
  2. VLC-player
  3. LineInCode



Ещё
Микширование звука в Cubian
Streaming Audio from Windows to PulseAudio Server
Liveincode + SSH + PulseAudio Server DONE!
Stream sound from Windows to Linux with LiveInCode and PulseAudio 
Centralized PulseAudio setup

simplified version with plink from PuTTY in place of Cygwin:
linco -B 16 -C 2 -R 44100 | plink user@mediaserver "pacat --playback"

Фоторамка

Рамка деревянная. Выступает на 15 мм - этого достаточно спрятать толстый экранированный кабель витой пары. Для производства была задействована ленточная пила, шлифовальная машинка, фреза, а углы делались на торцовочной. Яхтный лак, клей. Фоторамка прижилась до ремонта. Отодрать не повредив не возможно ))




11.02.2015

Backup and other service

Поскольку, кубик мой периодически падает, то APT отвалится, то ещё чего. Как на NAND, так и на SD... То озаботился я бэкапом. При грамотном бэкапе восстановление системы сводится к заливке образа на карточку и запуску скрипта. По идее )))

Значит пошёл я на https://github.com/mycubieserv/Service-Scripte

Упор сделан на сохранении Трансмиссии, mpd, cron, системных и сетевых настройках. APT будет выведен в отдельный пункт. В планах управление выводом на тот или иной дисплей.

Всё ещё в весьма жидком состоянии. Очень жидком! Так что не откажусь от советов и рекомендаций. 

25.11.2014

Обновлённый дизайн

Было не сильно минимальнинько, но эротично. А сейчас запихнул я всё в стандартный системник, взятый с помойки. Все кто видит дико ржёт: такая плата в таком системнике!
Да, отменное рукожопство получилось ))


Изменения:
  1. Выход VGA напаял прямо на видокарточку. Шлейф получился даже цветной и с чётким соответствием. На видеокарточке уже распаяны резисторы. Помех особо не наблюдается, картинка чёткая. Разъём всёж при включении стоит придерживать, плата болтается без матери.
  2. LVDS распаял на LPT-планку. Саму матрицу хочу прикрутить к системнику - получится лапать-топ ))
  3. Системник закрывать не планирую пока, да и нечем. Системник был без крышки. В Кубик воткнут 2,4G ресивер на беспроводные клавиатуру и мышку.
  4. Большинство кабелей уже присутствуют и прикручены к корпусу стяжками: Ethernet, USB, HDMI, HDMI-DVI.


Дальше ещё фотки

05.11.2014

Играюсь с образами

Что у нас стоит, можно посмотреть здесь: Версии

Оконные образы

  1. Cubieez 1.1 (A20) - Debian 7.5 Wheezy with kernel 3.4.79 - LXDE - 192.168.1.124 - password: cubieboard - 4GB SD card
  2. Cubieez Reloaded  - Debian 7.5 Wheezy with kernel 3.4.43, DHCP - password: cubieez. На первый взгляд показался топорным. Ядро отстаёт.
  3. Cubian X1 Desktop - MATE, kernel 3.4.79. Всё аккуратненько, но притормаживает интерфейс. Однако, это единственный образ мною опробованный, который взял и просто показал картинку ещё и правильного разрешения на переходнике HDMI-DVI.
  4. aRUNTU 1.001 Desktop  Kernel 3.4.101
  5. CUBIUNTUX MEGA TRIPLE O.S. CT/CB2 SIMON TRIBUTE  Kernel 3.4.79 Скрипты настройки видеовыхода и запуска конкретно одной из трёх сборок: CUBIUNTU + 2x Qbee-X. Три в одном - очень и очень интересный вариант, оперативный в плане переключения между образами.
  6. Сubiuntu A20 1.001 CT SD

 

Отдельно остановлюсь на Armbian (Igor Pečovnik)

Начать знакомство можно с Micro home server, который становится на Debian Wheezy. Где же взять этот Debian Wheezy? Игорь представляет 6 вариантом образов для Cubieboard2. Во-первых, все образы делятся на два типа ядра:
  • Legacy  - лучше для мультимедии, акселерация видео и всё такое. И оно 3.4.110
  • Vanilla - стандартное официальное "ванильное" ядро лучше для сервака или лёгких десктопов. Это будет 4.4.3

Для каждого типа ядра есть три дистрибутива:
  1. Wheezy - Уизи - Debian 7
  2. Jessie - Джесси - Debian 8, т.е. текущая версия
  3. Trusty - Ubuntu 14.04 LTS
    Из всего этого многообразия есть только один графический образ: Legacy Ubuntu Trusty и он обозначен соответствующим значком. И ещё есть всякие полезности в виде FAQ


    Обновления


    Обновление дистрибутива

     



    Рейтинг образов





    P.S.
    Мне так же пригодилось: Реставрация фейковых Micro SD
    Как переформатировать китайскую флешку
    // на 1Гб приходится 2101670 секторов



    18.08.2014

    Photo Frame

    При благополучном подключении матрицы нужно её занять. Есть желание Photo Frame с текущим временем и забортовой температурой или даже прогнозом.
    В Cubieez уже есть xscreensaver. Его настроить можно, глядя сюда: How Do I Use a Photos Directory as my Screensaver?

    Я опробовал Ripples. Удивился надписям Loading...
    И задумался, почему в 21 веке я её наблюдаю? Предзагрузка? Не, не слышали )))

    Да и подтягивать иХсы я вроде пока не собирался. Поэтому своё внимание сюда: Digital Picture Frame (feh)


    apt-get install feh unclutter
    

    #!/bin/bash
    # This file is located at /usr/local/bin/slideshow.sh
    #
    # Copyright 2004 Adam Franco
    # Licensed under the GNU GPL v1.2+ (http://www.gnu.org/licenses/gpl.html)
    
    killall feh unclutter
    
    unclutter &
    
    feh -zZFr -D 300 /home/afranco/Photos/
    

    Running slideshow.sh from the command-line without an X-session

    #!/bin/bash
    # I put this file at /usr/local/bin/reloadslideshow.sh
    #
    # Copyright 2004 Adam Franco
    # Licensed under the GNU GPL v1.2+ (http://www.gnu.org/licenses/gpl.html)
    
    # make sure none of our parts are running and are in the way.
    killall feh unclutter X kdm;
    
    #run the slideshow
    /usr/bin/X11/xinit /usr/local/bin/slideshow.sh & 

    И так далее.....


    19.05.2014

    Кубик рубика

    День Кубика Рубика


    Это не нормальный блог. Не подписывайтесь на него. 
    Здесь старые посты редактируются, а новые появляются задней датой.

    13.05.2014

    Webmin


    http://help.ubuntu.ru/wiki/webmin
    sudo gedit /etc/apt/sources.list
    Добавить:
    deb http://download.webmin.com/download/repository sarge contrib
    wget http://www.webmin.com/jcameron-key.asc
    apt-key add jcameron-key.asc
    apt-get update
    apt-get install webmin
    https://localhost:10000

    03.05.2014

    ZTE MF70 unlock


    Оператор Life:) окончил акцию и стал мне не нужным. Учитывая, что он опустил меня два раза на 75 тыщ. я с удовольствием делюсь с тобой, мой друг, методом разблокировки модема ZTE MF70. Именно этот модем даёт инет моему девайсу.

    1. Вынимаю симку. Надо снести драйвера. Для этого отлично подходит платная утилита DC-unlocker. Но мы только определяем модем - это бесплатно. После лупы (Detect) смотрим в диспетчере задач. Должно быть три ровненьких устройства ZTE WCDM Technologies MSM
    2. Устанавливаем драйвера. Везде дают линк на эти драйвера. Но у меня с ними не взлетело. А взлетело вот с этими / зеркало. Наблюдаем красивые устройства в диспетчере задач.
    3. Теперь можно ломануть в два шага: detect, unlock.
    4. После лома нужно вернуть автозагрузку. Это делается через терминал PuTTy.
    AT 
    OK
    AT+ZCDRUN=F (восстанавливает NODOWNLOAD.FLG)
    AT+ZCDRUN=9 (восстанавливает autorun.flg)

    Передёргиваем модем, вставляем симку и всё должно быть красиво.
    В взломе очень помогла тема

    23.04.2014

    Падает

    Уж больно часто падает APT. Лечению не всегда поддаётся. Часто переустанавливаю систему с ноля.
    Решил таки проверить память:
    apt-get install memtester
    top (смотрю FREE)
    memtester 620 1
    Но проверяется только свободная память. А меня подозрения перерастают в паранойю.

    Обновился сильно.

    Добавил фильтрацию по питанию (электролиты+ферриты). Монтаж на USB-маме, выдранной со старой системной платы.


    Пока полёт нормальный. На недельном аптайме выключился на профилактику кулера блока питания. Перепаял вентилятор на питание 5В. Шума меньше, пыли меньше. Думаю, что БП с 10-ти кратным запасом мощности не нуждается в конкретном потоке воздуха.

    Добавил радиаторы на камень и память.



    Можно ещё подкрутить частоту памяти Fex_Guide#SDRAM
    Но может оказаться не всё так просто (Стабильность работы CB2)
    Посмотреть на какой частоте работает память CB2. Вот тут утилита a10-meminfo
    Нужно сделать файл исполняемым и запустить в терминале.

    И перенос Cubian из NAND на HDD

    Железо



    Для питания Кубика был выбран завалявшийся компьютерный БП Codegen 300W. Так решился вопрос с питанием SATA HDD. Не покупать же ноутбучный винт! По питанию был сделан дополнительный фильтр и на Кубик наклеил радиаторы. Так получилась не слабо брутальная барсетка.




    Картинка из коммента:

    15.04.2014

    Логин-история SSH

    Чёт я сикнул на сильно простых паролях, поменял и посмотрел историю:
    last | grep root
    last | head 

    HDD spin down

    apt-get install hdparm
    hdparm -I /dev/sda
    hdparm -S 10 /dev/sda = spindown after 10*5 seconds.
    hdparm -S 245 /dev/sda = spindown after (245-240)*30 minutes.
    hdparm -S 245 /dev/disk/by-uuid/f6c52265-d89f-43a4-b03b-302c3dadb215  

    Debian Hard Disk Spindown
    Контролируем SMART HDD, с отчетом на e-mail. На примере FreeBSD и Debian/Ubuntu.

    11.04.2014

    Install Cubieez


    Заливаю Cubieez в NAND по этой инструкции при помощи PhoenixSuit

    Другие образы / дистрибутивы



    DEBUG

    1. Установка драйвера PL2303 Prolific
    2. Подключение кабеля без питалова (картинка)
    3. В диспетчере задач узнать номер порта
    4. Подключиться PuTTy

    Ещё Почитать
    Установка Cubian на Cubieboard

    Expansion ports

    Cubieboard Expansion ports

    10.04.2014

    Dropbox


    Тут raspberrypi.org пишут про Drop2PI

    Install
    apt-get install python-pip
    pip install --upgrade setuptools
    pip install d2pi
    pip install --upgrade d2pi (на будущее)
    

    Ищу куда мы поставились:
    find / -name "d2pi" -print
    cd /usr/local/lib/python2.7/dist-packages/d2pi
    Запускаю несколько раз
    python demo.py
    Вводим ключи и код, полученный с сайта дропбокса
    Конфиг тут: "~/.d2pi/config.yml"
    Были изначально косяки. Написал товарищу: soundbbg at gmail
    Автор ответил, что подправил коды. Обновился. Всё работает!
    crontab -e
    @reboot /usr/local/lib/python2.7/dist-packages/d2pi/mw.sh &
    По старту системы запускается mw.sh
    #!/bin/sh
    sleep 300
    cd /usr/local/lib/python2.7/dist-packages/d2pi
    python mw.py
    Суть Питоновского скрипта mw.py:
            from d2pi.watch import watcher
            watcher.auto_download = True
            watcher.can_delete = True
            watcher.can_download = True
            watcher.can_upload = True
            watcher.run()
    


    Но постепенно переползаю на BitTorrent Sync

    BitTorrent Sync



    Установка и настройка BtSync

    Install BitTorrent Sync on Debian (Raspbian)

    При попытке запуска в ответ сообщается, что файл не найден:
    # ./btsync
    bash: ./btsync: No such file or directory
    

    Тогда делаем вот так:
    sudo ln -sf /lib/ld-linux-armhf.so.3 /lib/ld-linux.so.3
    И вот на этой штуке я пожалуй отойду от дропбокса :)

    09.04.2014

    Transmission blocklist

    Маленький квест :)
    1. Сначала читаем Создаем blocklist и создаём блоклист в ручную и вручную его загружаем.
    2. Патом думаем как автоматизировать: Transmission: Blocklists
    3. Находим сайт iblocklist.com и даже скачиваем списки посмотреть на них. И быть может регистрируемся заплатить деньги.
    4. Which is the best blocklist for Transmission?
    5. И тогда уже попадаем на агрегатор getBlockLists

    По итогу используем список:
    http://john.bitsurge.net/public/biglist.p2p.gz
    овер 390 тыщ

    Transmission


    apt-get install transmission-daemon
    /etc/init.d/transmission-daemon stop
    Тут можно попасть на тот вариант, когда демон устойчив. Тогда читаем это: Остановка демона

    /etc/transmission-daemon/settings.json
    "download-dir": "/home/user/sata/_download_"
          # Удаляем все, что в кавычках, пишем вместо этого желаемый пароль. Пароль потом при запуске демона зашифруется
    "rpc-password": "xxx"
          # Оставляем, если хотим, чтобы к веб интерфейсу был доступ только с локальной машины, иначе меняем
    "rpc-whitelist-enabled": true
    
    /etc/init.d/transmission-daemon start
    Имя пользователя можно поменять, тогда файлы будут создаваться от него.
    Transmission не захотел забирать торрент-файлы из watchdir (ну не имеет он функциональности WATCHDIR) в дропбоксе.
    Пришлось вписать ему скрипт
    /etc/transmission-daemon/watchdog.sh
    #!/bin/bash 
    
    # Watch dir, may contain spaces:
    watchdir="/home/user/sata/_dropbox_/_torrent_/_new_/"
    
    # move file to a subdirectory? if Commented out, it'll removed remove
    # the torrent file.
    # Note: Don't put a '/' before the path!
    movesubdir="added/"
    
    
    # Authentication "username:password":
    tr_auth="transmission:pass"
    
    # Transmission host "ip:port":
    tr_host="127.0.0.1:9091"
    
    # Verbose?
    verbose=1
    
    #############################################
    time=$(date "+%Y-%m-%d (%H:%M:%S)")
    if [ -n "$tr_auth" ]; then 
        tr_auth="--auth=$tr_auth"
    fi
    
    for file in "$watchdir"*.torrent
    do
        if [ -f "$file" ]; then
            if [ -n "$verbose" ]; then echo "$time: $file added to queue."; fi
    
            /usr/bin/transmission-remote "$tr_host" "$tr_auth" -a "$file" > /dev/null
            # give the remote some time to process
            sleep 5
            
            if [ $movesubdir ]; then
                if [ -d "$watchdir$movesubdir" ]; then
                    mv "$file" "$watchdir$movesubdir"
                else
                    mkdir "$watchdir$movesubdir"
                    mv "$file" "$watchdir$movesubdir"
                fi
            else
                rm "$file"
            fi
        else
            if [ -n "$verbose" ]; then echo "$time: No torrent in $watchdir."; fi
        fi
    done
    
    exit 0
    
    И занести в крон каждые 5 минут:
    0,5,10,15,20,25,30,35,40,45,50,55 * * * * /etc/transmission-daemon/watchdog.sh > /etc/transmission-daemon/watch.log

    Transmission blocklist

    Забэкапиться можно по этому пути:  /var/lib/transmission-daemon/info 

    Ещё почитать: CubieBoard Forum


    И для Ubuntu: Transmission-daemon

    21.03.2014

    3G модем

    Временным явлением кубик смотрит в Интернет через ломанный модем: ZTE MF70 unlock

    Пакеты для работы с модемом уже есть в Cubieez:
    apt-get install usb-modeswitch usb-modeswitch-data
    Вставляю модем в USB, убеждаюсь в eth1
    dmesg
    [   13.13] cdc_ether 1-1.1.1:1.0: eth1: register..........

    Правлю IP-адрес
    Поднимаю интерфейс:
    ifup eth1
    И задаю роут:
    route delete default
    route add default gw 192.168.0.1

    По маршрутам почитать: Маршрут по умолчанию

    20.03.2014

    DynDNS - DuckDNS


    duckdns.org

    Подготовка/проверка
    Стоит ли крон?
    ps -ef | grep cr[o]n
    Есть ли качалка?
    curl

    Добавляю пользователя и настраиваю:
    adduser douglas
    cd /home/douglas
    mkdir duckdns
    cd duckdns
    nano duck.sh
    
    echo url="https://www.duckdns.org/update?domains=exampledomain&token=a7c4d0ad-114e-40ef-ba1d-d217904a50f2&ip=" | curl -k -o /home/douglas/duckdns/duck.log -K -
    

    Добавляю в КРОН:
    chmod 700 duck.sh
    crontab -e
    */5 * * * * /home/douglas/duckdns/duck.sh

    Проверка:
    ./duck.sh
    cat duck.log
    Ответ: OK или KO
    Если "КО", то проверяем домен и тоукен.
    sudo service cron start

    https://duckdns.org/domains

    Это всё ради проброса портов

    18.03.2014

    Проброс портов

    ZXV10 H201L на my.toilet.server
    Хитрость в том, что настроив порт-форвардинг в веб-морде модема, проверять не надо со своего компа.

    Наружу пробрасываю SSH, Webmin, видео и аудио потоки, управление MPD.

    Если наш Кубик включить в DMZ, то в незащищённую samba шару обязательно полезут трояны.

    DynDNS

    13.03.2014

    Webcam

    0. Video
    На вебках всё реже пишут про совместимость с Linux. Но обязательно указывают все версии Windows. Даже драйверов на диске нет! Какже быть?
    Подключаем не_совместимую с Linux USB-вебку и набираем команду убедиться, что она у нас уже есть в системе:

    ls /dev/video*




    1. mjpg_streamer - ретранслятор


    Качай с источника mjpg-streamer-cubie или с моего MyDrive
    Может пригодится оригинал mjpg-streamer-r63

    Компиляция и запуск:
    cd mjpg-streamer
    sudo apt-get install libv4l-dev libv4l-0 libjpeg8-dev imagemagick
    make USE_LIBV4L2=true clean all
    export LD_LIBRARY_PATH=.
    ./mjpg_streamer -i "./input_uvc.so -f 30 -r 1280x720" -o "./output_http.so  -p 8080 -w ./www"
    
    Ошибка...
    ERROR:
    Adding control for Pan (relative)
    UVCIOC_CTRL_ADD - Error: Inappropriate ioctl for device
    
    Но работает!!!
    http://10.10.10.10:8080
    top: CPU 3-5%

    А если не работает, то, возможно, камера не поддерживает режим. Тогда в командную строку сходу добавляем "-y". Если не получилось, то смотрим режимы внимательней:
    sudo apt-get install uvcdynctrl
    uvcdynctrl -f

    Автозапуск
    Создаём файл /etc/init.d/mjpg_streamkick
    #!/bin/sh
    
    ### BEGIN INIT INFO
    # /etc/init.d/mjpg_streamkick
    # Provides:          mjpg_streamer.sh
    # Required-Start:    $network
    # Required-Stop:     $network
    # Default-Start:     2 3 4 5
    # Default-Stop:      0 1 6
    # Short-Description: mjpg_streamer for webcam
    # Description:       Streams /dev/video0 to http://IP/?action=stream
    ### END INIT INFO
    
    ld_library_path=/home/user/mjpg-streamer
    export LD_LIBRARY_PATH ld_library_path
    export LD_LIBRARY_PATH=/home/user/mjpg-streamer
    
    NAME=mjpg_streamer
    DESC="M-JPEG Streamer"
    DAEMON=/home/user/mjpg-streamer/mjpg_streamer
    MJPG_QUALITY=85
    MJPG_RESOLUTION=800x600
    MJPG_FREQ=10
    MJPG_VIDEO_DEVICE="/dev/video0 -y"
    MJPG_OUTPUT=/home/user/mjpg-streamer/www
    MJPG_OUTPUT_PORT=8080
    USER_PASS=rv:rv
    
    f_message(){
            echo "[+] $1"
            echo "      "
    }
    
    
    # Carry out specific functions when asked to by the system
    case "$1" in
            start)
                    f_message "Starting $DESC..."
                    $DAEMON -b -i "input_uvc.so -d $MJPG_VIDEO_DEVICE -f $MJPG_FREQ -r $MJPG_RESOLUTION -q $MJPG_QUALITY " -o "output_http.so -p $MJPG_OUTPUT_PORT -w $MJPG_OUTPUT -c $USER_PASS -n "
                    sleep 1
      echo ".."
                    sleep 1
                    f_message "$NAME Started!"
      /etc/init.d/mjpg_streamkick status
                    ;;
            stop)
                    f_message "Stopping $DESC..."
                    killall mjpg_streamer
                    f_message "$NAME Stopped!"
                    ;;
            restart)
                    f_message "Restarting $DESC..."
                    killall $NAME
                    f_message "$NAME Killing!"
                    $DAEMON -b -i "input_uvc.so -d $MJPG_VIDEO_DEVICE -f $MJPG_FREQ -r $MJPG_RESOLUTION -q $MJPG_QUALITY " -o "output_http.so -p $MJPG_OUTPUT_PORT -w $MJPG_OUTPUT -c $USER_PASS -n "
                    sleep 1
      echo ".."
                    sleep 1
                    f_message "$NAME Restarted!"
      /etc/init.d/mjpg_streamkick status
                    ;;
            status)
                    pid=`ps -A | grep $NAME | grep -v "grep" | grep -v $NAME. | awk '{print $1}' | head -n 1`
                    if [ -n "$pid" ];
                    then
                            f_message "$DESC Status:"
                            f_message "$DESC is running with pid ${pid}"
                            f_message "$NAME was started with the following command line"
                            cat /proc/${pid}/cmdline ; echo ""
                    else
                            f_message "$DESC Status:"
                            f_message "Could not find $NAME running!"
                    fi
                    ;;
            *)
                    f_message "Usage: $0 {start|stop|status|restart}"
                    exit 1
                    ;;
    esac
    exit 0
    

    И... Внедряем
    sudo chmod 755 /etc/init.d/mjpg_streamkick
    sudo update-rc.d mjpg_streamkick defaults 







    2. Motion - детектор движения, юзает на входе поток из ретранслятора.
    sudo apt-get install motion

    Конфигурация:
    /etc/motion/motion.conf
    netcam_url http://10.10.10.10:8080/?action=stream
    width 1280
    height 720
    framerate 10
    webcam_port 8880
    webcam_localhost off
    control_port 8881
    control_localhost off
    locate on                  # рисует рамку по движению
    target_dir /tmp/motion     # директория для сохранения снапшотов
    

    sudo motion
    top: CPU 101-103%

    Ещё почитать:

    Несколько камер: http://ubuntuforums.org/showthread.php?t=1897786
    Motion, использует дополнительные, спицифичные для каждой камеры, конфиги, подключаемые в основном файле конфигурации:
    thread /etc/motion/thread0.conf
    thread /etc/motion/thread1.conf
    thread /etc/motion/thread2.conf
    

    thread1.conf
    videodevice /dev/video1
    text_left USBWebcam-1
    target_dir /home/motion/images/webcam1
    webcam_port 8881
    




    Выход в люди:
    Port Forwarding
    DynDNS

    Скорость сети

    Intel® NAS Performance Toolkit

    Замеряю самбу в рабочем режиме, т.е. не отключая задания в кроне и не делая твиков.

    Cubieboard2 / 2012-09-09 / AllWinner A20 ARM Cortex-A7 Dual-Core (habrahabr.ru)
    Cubieez 1.1 (A20) - Debian 7.5 Wheezy with kernel 3.4.79
    Barracuda 7200.7 120Gb

    samba

    /etc/samba/smb.conf

    [global]
     workgroup = 7EVEN.NET
     netbios name = cubie
     server string = %h server
    
    ;    interfaces = lo, 10.10.10.0/24 eth0
     interfaces = lo, eth0
     bind interfaces only = true
    
     dos charset = cp688
     unix charset = UTF8
    
     syslog = 0
     log file = /var/log/samba/log.%m
     max log size = 1000
    
     dns proxy = No
     panic action = /usr/share/samba/panic-action %d
    
     security = share
    # отключаем принтеры 
     load printers = no 
     show add printer wizard = no 
     printcap name = /dev/null 
     disable spoolss = yes 
    
    # по умолчанию все файлы, начинающиеся с точки будут иметь атрибут "скрытый" 
     hide dot files = yes
    
    
    [share]
     path = /home/user/sata
     comment = Share
     create mode = 0777
     directory mask = 0777
     available = yes
     browsable = yes
     public = yes
     writable = yes
     printable = no
    
    adduser user
    sudo smbpasswd -a user
    mkdir -p /home/user/sata
    chown -R root:users /home/user/sata
    chmod -R 0777 /home/user/sata
    /etc/init.d/samba restart
    

    Директива security = share устарела, то конфиг для версии старше 4 меняется следующим образом:
    [global]
      workgroup = DEAD.NET
      netbios name = cubieboard2
      server string = Samba Server %v
    
      dns proxy = no
      log file = /var/log/samba/log.%m
      max log size = 1000
      syslog = 0
      panic action = /usr/share/samba/panic-action %d
    
      server role = standalone server
      security = user
     # Если пользователь Samba существует в системе и введен неверный пароль, 
     # то вход этого пользователя отклоняется, 
     # если пользователя не существует, 
     # тогда ему присваивается статус гость
      map to guest = Bad Password
      passdb backend = tdbsam
      obey pam restrictions = yes
      unix password sync = yes
      passwd program = /usr/bin/passwd %u
      passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
      pam password change = yes
      usershare allow guests = yes
     # по умолчанию все файлы, начинающиеся с точки будут иметь атрибут "скрытый" 
      hide dot files = yes
    
     # отключаем принтеры 
      #load printers = no 
      #show add printer wizard = no 
      #printcap name = /dev/null 
      #disable spoolss = yes 
    
      #  SHARE
        [share]
         comment = Share
         path = /mnt/sata
         public = yes
         writable = yes
         available = yes
         browsable = yes
         guest ok = yes
         create mask = 0777
         directory mask = 0777
    

    12.03.2014

    Всё о мониторах сюда

    1. VGA
    2. HDMI
    3. LVDS
    4. DUAL
    5. SSH-X11
    6. VNC
    disp_init Configuration from Fex Guide

    Подключаю матрицу от ноутбука - LVDS

    КДПВ

    Попал в руки ноутбук китайский не живой.
    Разобрал и достал матрицу LP141X7 B1IB (Drive.Google)

    Начитался про LVDS.
    По идее дифф-сигналы весьма устойчивы к помехам.
    В планах пустить кабель на несколько метров из экранированной витухи.
    И далее иду за помощью в сообщество Cubieboard+LVDS [cubieforums.com]





     









    Адаптирую под себя

    Питание матрицы - 3,3 V
    EEPROM - нет

    Дифф-сигналы:
    Матрица LVDS == Cubieboard  -- Цветовая маркировка пар витухи
    5 == 4
    6 == 1 Коричневый
    8 == 6
    9 == 3 Оранжевый
    11 == 8
    12 == 5 Синий
    14 == 10
    15 == 7 Зелёный

    Данные из даташита для правки script.bin

    Horizontal Period = 1344
    Horizontal Blanking = 136
    Vertical Period = 806
    Vertical Blanking = 1...24
    Clock freq = 65

    Как править script.bin можно почитать здесь: VGA
    Сама конфигурация начитывается:

    [disp_init]
    disp_init_enable = 1 
    disp_mode = 0
    screen0_output_type = 1
    screen0_output_mode = 4
    

    [lcd0_para]
    lcd_hbp = 136 # Horizontal Blanking
    lcd_ht = 1344 # Horizontal Period
    lcd_vbp = 24  # 2*Vertical Blanking
    lcd_vt = 1612 # 2*Vertical Period
    lcd_dclk_freq = 65 # Clock freq
    lcd_x = 1024
    lcd_y = 768
    lcd_if = 3    # its LVDS
    lcd_io_cfg0 = 268435456
    lcd_hw_if = 0         # parallel
    lcd_lvds_bitwidth = 1 # 18 bit 

    Инвертор болтается на отдельной плате со светодиодами индикации.
    Распиновку разгребал мультиметром. ШИМ по идее у меня не задействован и в конфиге включать его не обязательно.
    1 -- +5V
    2 -- +5V
    3 -- ШИМ (PWM) ???
    4 -- +5V (ENABLE)
    5 -- D5
    6 -- D4
    7 -- D3
    8 -- D1
    9 -- D2
    10 -- GRND

    И адаптирую к Кубику:
    INV == Cubieboard
      3 == 31
      4 == 37

    Получается следующий жгут, длиной метра 3-4:
    К блоку питания: 3 провода
    К Кубику: 3 провода
    К Кубику витухой: 4 пары
    Итого две витухи? Одна экранированная...
    Можно браться за паяльник :)


    Витуха медная:
    Коричневая пара - 3,3V
    Оранжевая пара - 5V
    Зелёная пара - GND
    Синяя пара - ENABLE 2 Cubieboard + NC



    Экранированная витуха:
    Цвет - LVDS - Cubieboard
    Коричневый - А0 - 4M1P
    Оранжевый - А1 - 6M3P
    Синий - А2 - 8M5P
    Зелёный - CLK - 10M7P
    Белые провода - минус (M) дифференциала


    Загружаюсь и возвращаю графику в конфиге, если надо.
    Наслаждаюсь )))
    ENABLE и PWM не подключал, занимательные артефакты при перезагрузке только радуют!





    Далее ещё фотки и редизайн коннектора..............