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)