TARGETS.CONF(5) [FIXME: manual] TARGETS.CONF(5)
نام (NAME)
targets.conf - فایل پیکربندی SCSI Target در لینوکس
توضیحات (DESCRIPTION)
ابزار tgt-admin بهطور پیشفرض از /etc/tgt/targets.conf برای مقداردهی
اولیه پیکربندی tgtd استفاده میکند. ساختار چیدمان آن از قالبی شبیه به
HTML با سلسلهمراتبی از برچسبهای تودرتو برای تعریف تارگتها و LUNها بهره
میبرد.
نحو فایل پیکربندی (CONFIGURATION FILE SYNTAX)
دستورالعملهای سراسری، گزینههایی را پیکربندی میکنند که در سطح کل
پیکربندی tgtd اعمال میشوند، و همچنین تارگتهای ارائهشده را از طریق
بخشهای target تعریف مینمایند.
بخشهای تارگت شامل دستورالعملهای مخصوص یک دستگاه تارگت هستند. آنها
LUNهای ارائهشده هر تارگت را از طریق دستورالعملهای "backing-store" و
"direct-store"، و همچنین سایر گزینههای سراسر تارگت تعریف میکنند.
دستورالعملهای LUN (شامل "backing-store" و "direct-store") میتوانند شامل
گزینههای مخصوص یک واحد منطقی (LUN) ارائهشده منفرد باشند.
دستورالعملهای سراسری (GLOBAL DIRECTIVES)
بهاستثنای دستورالعملهای تارگت، هر یک از موارد زیر باید حداکثر یک بار
تکرار شوند.
>
شروع تعریف یک تارگت را مشخص میکند. شناسه IQN یک ISCSI Qualified
Name مانند "iqn.2001-04.com.example:storage1" است.
درون این بلوک باید دستورالعملهای سطح تارگت، طبق آنچه در زیر مستند
شده است، قرار گیرند.
تعریف تارگت با "" به پایان میرسد.
default-driver
به جای تعیین نوع درایور برای هر تارگت، default-driver یک درایور سطح
پایین (low-level driver) پیشفرض را برای تمام تارگتهای ارائهشده
تعریف میکند. این مقدار میتواند برای هر تارگت بهصورت جداگانه
بازنویسی شود. مقادیر معتبر lld عبارتند از "iscsi" یا "iser". از
آنجا که در صورت عدم وجود این دستورالعمل، مقدار iscsi در نظر گرفته
میشود، استفاده از آن عموماً تنها زمانی لازم است که iser به عنوان
پیشفرض مورد نظر باشد.
include
شامل کردن پیکربندی از یک فایل پیکربندی دیگر. استفاده از نویسههای
عمومی (wildcards) مجاز است، بنابراین مثالی مانند "include
/etc/tgt/xen/*.conf" مجاز میباشد.
ignore-errors yes
خطاهای حاصل از tgtadm نادیده گرفته خواهند شد. مقدار پیشفرض no است.
control-port
تعیین یک کلید سوکت محلی متفاوت برای برقراری ارتباط با tgtd. مقدار
پیشفرض 0 است. این گزینه عموماً تنها زمانی مفید است که چندین نمونه از
tgtd در حال استفاده باشند.
iSNSServerIP
تعیین آدرس سرور iSNS در قالب آدرس چهاربخشی IPv4 (dotted-quad).
هنگام استفاده از iSNS الزامی است، در غیر این صورت نادیده گرفته
میشود.
iSNSAccessControl
تنظیم کنترل دسترسی iSNS. مقادیر معتبر "On" یا "Off" هستند. هنگام
استفاده از iSNS الزامی است، در غیر این صورت نادیده گرفته میشود.
iSNSServerPort
تنظیم یک پورت متفاوت برای سرور iSNS. مقدار پیشفرض 3205 است. هنگام
استفاده از iSNS اختیاری است، در غیر این صورت نادیده گرفته میشود.
iSNS On
فعالسازی iSNS. تنها مقدار معتبر "On" است. مقدار پیشفرض off میباشد.
incomingdiscoveryuser
تعیین تنظیمات احراز هویت کشف ورودی (incoming discovery) در iscsi.
اگر مقداری مشخص نشود، هیچ احراز هویتی انجام نمیگیرد.
outgoingdiscoveryuser
تعیین تنظیمات احراز هویت کشف خروجی (outgoing discovery) در iscsi.
اگر مقداری مشخص نشود، هیچ احراز هویتی انجام نمیگیرد.
دستورالعملهای سطح تارگت (TARGET-LEVEL DIRECTIVES)
هر تارگت میتواند چندین دستگاه بلوکی یا واحد منطقی (LUN) را ارائه دهد.
به منظور شمارهگذاری LUN، دستورالعملهای backing-store پیش از
دستورالعملهای direct-store پردازش میشوند.
backing-store
یک واحد منطقی (LUN) ارائهشده توسط تارگت را تعریف میکند. این گزینه
میتواند یک فایل معمولی یا یک دستگاه بلوکی را مشخص کند.
direct-store
یک واحد منطقی (LUN) نگاشت مستقیم را با همان ویژگیهای دستگاه فیزیکی
(مانند VENDOR_ID، SERIAL_NUM و غیره) تعریف میکند.
driver
درایور سطح پایین مورد استفاده برای این تارگت را مشخص میکند؛ مقادیر
"iscsi" یا "iser" (بدون نقلقول). این دستورالعمل بر دستورالعمل
سراسری "default-driver" اولویت دارد و آن را بازنویسی میکند.
initiator-address
تنها به اتصالات از آدرس IP مشخصشده اجازه میدهد. در صورتی که هیچ
دستورالعمل initiator-address مشخص نشود، مقدار پیشفرض ALL است.
initiator-name
تنها به اتصالات از نام آغازگر (initiator name) مشخصشده اجازه میدهد.
incominguser
تنظیمات احراز هویت ورودی iscsi را مشخص میکند. در صورتی که
"incominguser" تعیین نشود، استفاده نخواهد شد. این دستورالعمل
میتواند چندین بار برای هر تارگت استفاده شود.
outgoinguser
تنظیمات احراز هویت خروجی iscsi را مشخص میکند. در صورتی که
"outgoinguser" تعیین نشود، استفاده نخواهد شد. این دستورالعمل
میتواند چندین بار برای هر تارگت استفاده شود.
controller_tid
شناسه tid کنترلکننده را تعیین میکند. مقدار پیشفرض عدد صحیح در دسترس
بعدی است.
دستورالعملهای سطح LUN (LUN-LEVEL DIRECTIVES)
تمام این موارد را میتوان در سطح تارگت فهرست کرد (و بر تمام LUNها اعمال
میشوند) یا در صورتی که LUN به جای قالب تعریف تکخطی با استفاده از تعریف
چندخطی سبک کانتینری تعریف شده باشد، درون تعریف یک LUN منفرد درج نمود:
# دستورالعملهای LUN در اینجا قرار میگیرند
# دستورالعملهای LUN در اینجا قرار میگیرند
توصیه میشود در یک تارگت فقط از یکی از روشهای تعریف تکخطی یا کانتینری
LUN استفاده شود. ترکیب این سبکها میتواند باعث بروز خطای تجزیهکننده
(parser errors) شود.
write-cache
مقدار "on" یا "off"، پیشفرض on است.
scsi_id
scsi_sn
vendor_id
product_id
product_rev
sense_format
removable
path
mode_page
readonly
device-type
bs-type
allow-in-use
block-size
اندازه بلوک را برای این LUN مشخص میکند.
lbppbe
توان بلوکهای منطقی در هر بلوک فیزیکی (Logical blocks per physical
block exponent) را مشخص میکند. بهطور پیشفرض TGTD مقدار lbppbe را
طوری تنظیم میکند که بهطور خودکار با سیستمفایل زیربنایی مطابقت داشته
باشد. از این پارامتر برای بازنویسی آن تنظیم استفاده کنید.
این یک گزینه داخلی است و نباید مستقیماً مقداردهی شود.
la_lba
پایینترین آدرس بلوک منطقی تراز شده (lowest aligned logical block
address) را مشخص میکند. این یک گزینه داخلی است و نباید مستقیماً
مقداردهی شود.
optimal_xfer_gran
دانهبندی بهینه انتقال (optimal transfer granularity) را مشخص میکند
تا در Block Limits VPD منعکس شود. این یک گزینه داخلی است و نباید
مستقیماً مقداردهی شود.
optimal_xfer_len
طول بهینه انتقال (optimal transfer length) را مشخص میکند تا در
Block Limits VPD منعکس شود. این یک گزینه داخلی است و نباید مستقیماً
مقداردهی شود.
params
پارامترهای اضافی را به tgtadm ارسال میکند.
توجه داشته باشید که '${tid}' و '${lun}' میتوانند دقیقاً به همین شکل
برای ارجاع به tid و lun در حال پیکربندی به کار روند. برای مثال به
targets.conf.vtl.L700 مراجعه کنید.
نمونه فایل پیکربندی (CONFIGURATION FILE EXAMPLE)
نمونه فایل پیکربندی:
backing-store /dev/san/monitoring
# اگر "incominguser" مشخص نشود، استفاده نخواهد شد
incominguser backup secretpass12
# در صورتی که "initiator-address" مشخص نشود، پیشفرض ALL است
initiator-address 192.168.1.2
backing-store /dev/san/xen1-disk1 # LUN1
direct-store /dev/san/xen1-disk2 # LUN2
initiator-address 192.168.1.2 # IP مجاز
initiator-address 192.168.5.6 # IP مجاز
incominguser user1 secretpass12
incominguser user2 secretpass23
outgoinguser userA secretpassA
backing-store /dev/san/xen2
backing-store /dev/san/vmware1
فایلها (FILES)
/etc/tgt/targets.conf
فایل پیکربندی برای tgt-admin.
/usr/share/doc/tgt/targets.conf.example
نمونه فایل پیکربندی برای tgt-admin.
همچنین ببینید (SEE ALSO)
tgtd(8)، tgtadm(8)، tgtimg(8)، tgt-setup-lun(8).
https://github.com/fujita/tgt
گزارش باگها (REPORTING BUGS)
گزارش باگها به
[FIXME: source] 07/09/2026 TARGETS.CONF(5)