Предоставление ISO-файла в качестве цели iSCSI в Linux
Как я могу выставить ISO-файл в качестве цели iSCSI в Linux. Я попробовал следующее,
mknod / dev / fake-dev1 b 7 201
losttup /dev/fake-dev1 1.iso
А затем я изменил ietd.conf, чтобы он указывал на блочное устройство,
Lun 0 Path = / dev / fake-dev1, Type = blockio, ScsiId = lun0, ScsiSN = lun0 IOMode = ro
А затем перезапустил iscsitarget. Из окна, если я подключаюсь, я вижу только нераспределенный диск, а не файлы. Когда я вставляю USB-накопитель и указываю "Path=/dev/sdb", этот диск отображается на компьютере с Windows. Но я не могу заставить его работать с файлом ISO. Пожалуйста, дайте мне знать, что мне здесь не хватает.
1 ответ
Я не уверен, почему вы используете mknod и losttup. Они не должны быть необходимы.
Просто установите цель fileio, и файл, на который вы указываете, является самим файлом ISO.
Для меня это выглядит так:
o- backstores .............................................................................................................. [...]
| o- block .................................................................................................. [Storage Objects: 0]
| o- fileio ................................................................................................. [Storage Objects: 2]
| | o- iso1 .......................... [/alt/ISO_Images/SLE-12-SP3-Server-DVD-x86_64-Beta2-DVD1.iso (3.2GiB) write-back activated]
| o- pscsi .................................................................................................. [Storage Objects: 0]
| o- ramdisk ................................................................................................ [Storage Objects: 0]
Для "внутренней" части хранилища, а затем просто установите его, как любой другой файл, то есть выделите цель iSCSI, установите LUN, чтобы он указывал на объект fileio, созданный выше, а затем настройте ACL и портал для него. Опять моя выглядит так:
o- iscsi ............................................................................................................ [Targets: 2]
| o- iqn.2003-01.org.linux-iscsi.worklaptop.x8664:sn.c551a059614d ...................................................... [TPGs: 1]
| o- tpg1 ............................................................................................... [no-gen-acls, no-auth]
| o- acls .......................................................................................................... [ACLs: 1]
| | o- iqn.1996-04.de.suse:01:919acd32c5a2 .................................................................. [Mapped LUNs: 1]
| | o- mapped_lun0 ................................................................................. [lun0 fileio/iso1 (rw)]
| o- luns .......................................................................................................... [LUNs: 1]
| | o- lun0 ...................................... [fileio/iso1 (/alt/ISO_Images/SLE-12-SP3-Server-DVD-x86_64-Beta2-DVD1.iso)]
| o- portals .................................................................................................... [Portals: 1]
| o- 192.168.20.2:3260 ................................................................................................ [OK]
Как только это настроено, вы обнаруживаете его как любую другую цель iSCSI. В моем случае я получил "/dev/sdb", "/dev/sdb1" и "/dev/sdb2". Первое, очевидно, это целое устройство, включая таблицу разделов. Второе устройство - это первый раздел, и в моем случае это загрузочный раздел UEFI. И второй раздел, "/dev/sdb2", является ISO и был смонтирован только для чтения, когда я его монтировал.