пятница, 22 апреля 2016 г.

Raspbian Jessie march 2016 - iscsi iscsitarget export error

Использую raspberry pi 2 b, raspbian:
Raspbian Jessie Lite
Minimal image based on Debian Jessie
Version: March 2016
Release date: 2016-03-18

Залил образ на sd-карту и использую, никакой самодеятельности.

Встала задача экспортировать usb-винчестер через iscsi на windows хост. И тут начались интересности:

ставим iscsitarget (`aptitude install iscsitarget`) - он тянет за собой iscsitarget-dkms (модуль ядра). При установке iscsitarget-dkms выясняется, что он собраться не может, т.к. нет нужных исходников ядра. Действительно, смотрю (`uname -r`) - используется ядро 4.1.19-v7+, а linux headers установлены от версии 3.6.9-1 (пакеты linux-headers-3.6-trunk-common и -rpi, версии 3.6.9-1~experimrntal.1+rpi7). И в дистрибутиве нет пакета заголовками используемого ядра!!!

Гуглю. Нахожу, что я не один такой, сделан скрипт, выкачивающий нужные заголовки. Ставим, используем (от root), заранее установив ncurses (`apt-get install libncurses5-dev`)

wget https://raw.githubusercontent.com/notro/rpi-source/master/rpi-source -O /usr/bin/rpi-source
chmod +x /usr/bin/rpi-source
/usr/bin/rpi-source -q --tag-update
/usr/bin/rpi-source<

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

Думаю, что всё нормально, переинсталлирую iscsitarget-dkms... Ан нет, исходники модуля кривоватые, выдаёт следующую ошибку при компиляции:

error: ‘SERVICE_ACTION_IN’ undeclared (first use in this function)

Гуглю. Нахожу, что я не один такой, эта же проблема в убунте.  По ссылке можно скачать iscsitarget-dkms_1.4.20.3+svn499-0ubuntu2.1_all.deb. После установки этого пакета модуль уже собирается нормально.

Настраиваем девайс, который надо экспортнуть в /etc/ietf/ и прописываем в /etc/default/iscsitarget true, чтобы таргет запускался.

И в конце несколько раз перезагружаем iscsitarget (`/etc/init.d/iscsitarget restart`) и смотрим на статусы - всё должно работать нормально.

Вот такие сырые вещи..

Ярлыки