Предоставление 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 и был смонтирован только для чтения, когда я его монтировал.

Другие вопросы по тегам