Статья по установке iscsi initiator на FreeBSD
Q. Как я могу установить и настроить службу iSCSI на сервере FreeBSD?
A. FreeBSD 7.x полностью поддерживает iSCSI. Старые версии, такие как FreeBSD 6.3 требуют обратного портирования для поддержки iSCSI. Следущие инструкции приведены для настройки iSCSI только под FreeBSD 7.0.
FreeBSD iscsi_initiator driver
iscsi_initiator в ядре FreeBSD реализует страндарт сетевого протокола Internet SCSI (iSCSI), взаимодействует с пользовательским окружением iscontrol и обеспечивает доступ к удаленным виртуальным SCSI устройствам.
Компилирование драйвера
Обратите внимание на то, что FreeBSD 7.x поставляется с уже скомпилированным драйвером. Вы можете пропустить этот шаг, если драйвер /boot/kernel/iscsi_initiator.ko уже присутствует в вашей системе.
Для компиляции ядра с драйвером, выполните следующее:
# cd /usr/src/sys/i386/conf
# cp GENERIC ISCSIKERNEL
# vi ISCSIKERNELВставьте строку:
device iscsi_initiatorСохраните и закройте файл конфигурации. Соберите ядро:
# cd /usr/src
# make buildkernel KERNCONF=ISCSIKERNELУстановите ядро:
 # make installkernel KERNCONF=ISCSIKERNELПерезагрузите систему:
 # rebootУстановка драйвера iSCSI в FreeBSD
Нам необходим драйвер ядра FreeBSD для протокола iSCSI, который называется /boot/kernel/iscsi_initiator.ko. Загрузите его можно с правами пользователя root следующей командой:
 # kldload -v iscsi_initiator.koВывод:
 Loaded iscsi_initiator.ko, id=6Для загрузки драйвера во время начальной загрузки, поместите следующую строку в /boot/loader.conf:
  # vi /boot/loader.conf# Beginning of the iSCSI block added by Vivek
 iscsi_initiator_load="YES"# End of the block added by Vivek
Сохраните и закройте файл.
Команда iscontrol для подключения, предоставления и контроля сессии iSCSI initiator.
Теперь нам необходимо использовать команду iscontrol. Сперва просмотрим сессии:
# iscontrol -d targetaddress=iSCSI-SERVER-IP-ADDRESS initiatorname=nxl
# iscontrol -v -d targetaddress=192.168.1.100 initiatorname=nxlПожалуйста, запишите список доступных targetnames/targetadresses. Как только будет известно targetname, отредактируйте файл /etc/iscsi.conf:
# vi /etc/iscsi.confУкажите директивы подобным образом:
  officeiscsi {
 authmethod = CHAP
 chapIName = YOUR-ISCSI-USERNAME
 chapSecret = YOUR-ISCSI-PASSWORD
 initiatorname = nxl
 TargetName = iqn.XYZZZZZZZZZZZZZ # whatever "iscontrol -v -d " gives you
 TargetAddress = 192.168.1.100:3260,1 # your iscsi server IP
 }Сохраните и закройте файл.
Где:
 officeiscsi { : Начало конфигурации iSCSI.
 authmethod : Установить в качестве метода аутентификации chap
 chapIName : Имя 
 chapSecret : Пароль 
 initiatorname : Если не указано другое, то iqn.2005-01.il.ac.huji.cs:<hostname>
 TargetName : Имя, под которым будет изветен target. Не путайте его с target address, который назначается администратором или через поиск устройств. 
 TargetAddress : Имеет вид domainname[:port][,portal-group-tag] согласно RFC: domainname может быть определен как имя DNS, адрес IPv4 в десятичном представлении или IPv6 адрес, как указано в [RFC2732].
} : Конец конфигурации
Старт сессии iSCSI
Следящие команды читают опции из /etc/iscsi.conf, используя targetaddress в блоке, называемом officeiscsi, и запускают сессию iscsi.
 # iscontrol -c /etc/iscsi.conf -n officeiscsiКак только вы выполните команду iscontrol, должно создаться новое устройство в каталоге /dev. Для проверки выполним команду dmesg:
 # dmesgФорматируем диск iSCSI
Запустим sysinstall для форматирования обнаруженного устройства iSCSI:
 # sysinstall Выбираем Custom > 3 Partition > Выбираем устройство iSCSI по имени da1. После форматирования вводим:
# mkdir /iscsi
# mount /dev/da1s1 /iscsiВозможно вам понадобится обновить файл /etc/fstab:
 /dev/ad1s1 /iscsi ufs rw 3 3 
                                
Только полноправные пользователи могут оставлять комментарии. Аутентифицируйтесь пожалуйста, используя сервисы.