.\" generated with Ronn-NG/v0.10.1 .\" http://github.com/apjanke/ronn-ng/tree/0.10.1 .TH "IPP\-USB" "8" "June 2026" "" "ipp-usb.8" .SH "نام (NAME)" \fBipp\-usb\fR \- دیمن پشتیبانی از چاپگرهای IPP روی USB .SH "توضیحات (DESCRIPTION)" دیمن \fBipp\-usb\fR امکان چاپ و اسکن بدون نیاز به درایور را روی چاپگرها و دستگاه‌های چندمنظوره (MFP) سازگار با AirPrint که فقط درگاه USB دارند، فراهم می‌کند\. .P این برنامه با اتصال به دستگاه از طریق درگاه USB و پروتکل IPP\-over\-USB، و در دسترس قرار دادن دستگاه در شبکه شامل اعلان با DNS\-SD (ZeroConf) کار می‌کند\. .P چاپ IPP، اسکن eSCL و کنسول وب به‌طور کامل پشتیبانی می‌شوند\. .SH "خلاصه دستور (SYNOPSIS)" .SS "روش استفاده (Usage):" \fBipp\-usb mode [options]\fR .SS "حالت‌ها (Modes):" .TP \fBstandalone\fR اجرای دائمی، شناسایی خودکار دستگاه‌های IPP\-over\-USB و سرویس‌دهی به همه آن‌ها .TP \fBudev\fR مشابه حالت مستقل (standalone)، اما پس از قطع اتصال آخرین دستگاه IPP\-over\-USB از برنامه خارج می‌شود .TP \fBdebug\fR لاگ‌ها روی کنسول نیز نمایش داده می‌شوند و گزینه \-bg نادیده گرفته می‌شود .TP \fBcheck\fR بررسی پیکربندی و خروج از برنامه\. همچنین فهرستی از تمام دستگاه‌های متصل را چاپ می‌کند .TP \fBstatus\fR چاپ وضعیت دیمن در حال اجرای \fBipp\-usb\fR، شامل اطلاعات تمام دستگاه‌های متصل .SS "گزینه‌ها (Options):" .IP "\(bu" 4 \fB\-bg\fR .br اجرا در پس‌زمینه (در حالت اشکال‌زدایی debug نادیده گرفته می‌شود) .IP "\(bu" 4 \fB\-path\-conf\-files\-srch dir1[:dir2\|\.\|\.\|\.]\fR .br فهرست دایرکتوری‌هایی که فایل‌های پیکربندی (ipp\-usb\.conf) در آن‌ها جستجو می‌شوند (/etc/ipp\-usb) .IP "\(bu" 4 \fB\-path\-log\-dir dir\fR .br مسیر دایرکتوری محل نوشتن فایل‌های لاگ (main\.log و لاگ مخصوص هر دستگاه \fIDEVICE\fR\.log) (/var/log/ipp\-usb) .IP "\(bu" 4 \fB\-path\-lock\-file file\fR .br مسیر فایل قفل برنامه (/var/ipp\-usb/lock/ipp\-usb\.lock) .IP "\(bu" 4 \fB\-path\-dev\-state\-dir dir\fR .br مسیر دایرکتوری محل نوشتن فایل‌های وضعیت اختصاصی هر دستگاه (/var/ipp\-usb/dev) .IP "\(bu" 4 \fB\-path\-ctrl\-sock file\fR .br مسیر سوکت کنترلی برنامه (/var/ipp\-usb/ctrl) .IP "\(bu" 4 \fB\-path\-quirks\-files\-srch dir1[:dir2\|\.\|\.\|\.]\fR .br فهرست دایرکتوری‌هایی که فایل‌های رفتارهای خاص (*\.conf) در آن‌ها جستجو می‌شوند (/etc/ipp\-usb/quirks:/usr/share/ipp\-usb/quirks) .IP "" 0 .SH "شبکه (NETWORKING)" در اصل، \fBipp\-usb\fR چاپگر یا اسکنر را از طریق شبکه در دسترس قرار می‌دهد و عملیات‌های HTTP سمت شبکه را به عملیات‌های USB تبدیل می‌کند\. .P به‌طور پیش‌فرض، \fBipp\-usb\fR دستگاه را فقط روی رابط لوپ‌بک (loopback) و با نشانی \fBlocalhost\fR (هم \fB127\.0\.0\.1\fR برای IPv4 و هم \fB::1\fR برای IPv6) منتشر می‌کند\. پورت‌های TCP به‌طور خودکار تخصیص داده می‌شوند و این تخصیص در ارتباط با دستگاه خاص ماندگار می‌شود، بنابراین دفعه بعد که دستگاه متصل شود، همان پورت را دریافت خواهد کرد\. محدوده پیش‌فرض برای تخصیص پورت‌های TCP برابر با \fB60000\-65535\fR است\. .P این رفتار پیش‌فرض را می‌توان با استفاده از فایل پیکربندی تغییر داد\. برای جزئیات به بخش \fBپیکربندی (CONFIGURATION)\fR در ادامه مراجعه کنید\. .P اگر تصمیم بگیرید دستگاه خود را در شبکه واقعی منتشر کنید، باید موارد زیر را در نظر بگیرید: .IP "1." 4 دستگاه \fBخصوصی\fR شما به یک دستگاه \fBعمومی\fR تبدیل می‌شود و توسط سایر رایانه‌ها از طریق شبکه قابل دسترسی خواهد بود .IP "2." 4 قوانین فایروال باید به‌طور مناسب به‌روزرسانی شوند\. دیمن \fBipp\-usb\fR این کار را به‌صورت خودکار انجام نخواهد داد .IP "3." 4 مشخصات فنی IPP over USB صریحاً الزام می‌کند که فیلد \fBHost\fR در درخواست HTTP روی \fBlocalhost\fR یا \fBlocalhost:port\fR تنظیم شود\. اگر به دستگاه از شبکه واقعی دسترسی پیدا شود، سرآیند \fBHost\fR نشانی واقعی شبکه را بازتاب می‌دهد\. بیشتر دستگاه‌ها این مورد را مجاز می‌دانند، اما برخی محدودیت‌های بیشتری دارند و در این پیکربندی کار نخواهند کرد\. .IP "" 0 .SH "دی‌ان‌اس\-اس‌دی (یکپارچه‌سازی با آواهی) (DNS\-SD (AVAHI INTEGRATION))" فناوری IPP over USB برای استفاده در کنار شناسایی خودکار دستگاه طراحی شده است، و برای این منظور \fBipp\-usb\fR تمام دستگاه‌هایی را که مدیریت می‌کند با استفاده از پروتکل DNS\-SD اعلان می‌نماید\. در لینوکس، مدیریت DNS\-SD به کمک دیمن Avahi انجام می‌شود\. .P اعلان‌های DNS\-SD را می‌توان از طریق فایل پیکربندی غیرفعال کرد\. همچنین، اگر Avahi نصب نباشد یا در حال اجرا نباشد، \fBipp\-usb\fR همچنان به‌درستی کار خواهد کرد، هرچند اعلان‌های DNS\-SD کار نخواهند کرد\. .P برای هر دستگاه سرویس‌های زیر اعلان خواهند شد: .TS allbox; l l l. Instance Type Subtypes Device name _ipp\._tcp _universal\._sub\._ipp\._tcp Device name _printer\._tcp \~ Device name _uscan\._tcp \~ Device name _http\._tcp \~ BBPP _ipp\-usb\._tcp \~ .TE .P یادداشت‌ها: .IP "\(bu" 4 مقدار \fBDevice name\fR نامی است که دستگاه تحت آن در فهرست دستگاه‌های موجود، برای مثال در کادر گفتگوی چاپ ظاهر می‌شود (به بیان دیگر نام DNS\-SD دستگاه است)، و برای بیشتر دستگاه‌ها با نام مدل دستگاه مطابقت دارد\. این نام با پسوند \fB" (USB)"\fR همراه می‌شود تا اگر دستگاهی هم‌زمان از طریق شبکه و از طریق USB متصل باشد، این دو اتصال به‌سادگی قابل تفکیک باشند\. اگر دو دستگاه با نام یکسان به‌طور هم‌زمان متصل شوند، پسوند برای رفع ابهام به \fB" (USB NNN)"\fR تغییر می‌کند که در آن NNN عددی یکتا برای هر دستگاه است\. به بیان دیگر، یک دستگاه منفرد \fB"Kyocera ECOSYS M2040dn"\fR به‌صورت \fB"Kyocera ECOSYS M2040dn (USB)"\fR فهرست می‌شود، و دو دستگاه از این نوع به‌صورت \fB"Kyocera ECOSYS M2040dn (USB 1)"\fR و \fB"Kyocera ECOSYS M2040dn (USB 2)"\fR نمایش داده خواهند شد .IP "\(bu" 4 سرویس‌های \fB_ipp\._tcp\fR و \fB_printer\._tcp\fR تنها برای دستگاه‌های چاپگر و MFPها اعلان می‌شوند .IP "\(bu" 4 سرویس \fB_uscan\._tcp\fR تنها برای دستگاه‌های اسکنر و MFPها اعلان می‌شود .IP "\(bu" 4 برای سرویس \fB_ipp\._tcp\fR ، زیرنوع \fB_universal\._sub\._ipp\._tcp\fR نیز برای سازگاری با iOS اعلان می‌شود .IP "\(bu" 4 سرویس \fB_printer\._tcp\fR با پورت TCP تنظیم‌شده روی 0 اعلان می‌شود\. سایر سرویس‌ها با شماره پورت واقعی خود اعلان می‌گردند .IP "\(bu" 4 سرویس \fB_http\._tcp\fR همان کنسول تحت وب دستگاه است\. این سرویس همیشه و با این فرض که همیشه وجود دارد اعلان می‌شود .IP "\(bu" 4 مقدار \fBBBPP\fR که برای سرویس \fB_ipp\-usb\._tcp\fR استفاده می‌شود، شماره‌های گذرگاه USB (یعنی BB) و پورت (یعنی PP) در مبنای شانزده (هگز) هستند\. هدف از این اعلان کمک به CUPS و سایر «کلاینت‌های» احتمالی برای حدس زدن دستگاه‌های تحت مدیریت سرویس \fBipp\-usb\fR است تا از تداخل‌های احتمالی با درایورهای قدیمی USB جلوگیری شود\. .IP "" 0 .SH "تطبیق اعلان‌های DNS\-SD با گذرگاه محلی USB (Matching DNS\-SD announcements against local USB bus)" نرم‌افزار کلاینت ممکن است نیاز داشته باشد دستگاه‌های محلی ارائه‌شده توسط \fBipp\-usb\fR را با دستگاه‌های موجود روی گذرگاه محلی USB مطابقت دهد\. این قابلیت می‌تواند برای مثال برای جلوگیری از پیشنهاد دستگاه‌های USB در کادر گفتگوی چاپ یا اسکن که به دلیل استفاده توسط \fBipp\-usb\fR قابل استفاده نیستند، مفید باشد\. .P به‌عنوان یک قاعده کلی، کلاینت‌ها می‌توانند دستگاه‌های USB ارائه‌دهنده رابط‌هایی با Class=7، SubClass=1 و Protocol=4 را متعلق به \fBipp\-usb\fR بدانند\. با این حال، این یک روش دقیق نیست\. برخی دستگاه‌ها ممکن است پروتکل IPP over USB را به‌درستی پیاده‌سازی نکنند و به همین دلیل در پیکربندی \fBipp\-usb\fR در لیست سیاه قرار گرفته باشند\. علاوه بر این، ممکن است برخی دستگاه‌ها به‌طور خودکار توسط \fBipp\-usb\fR به‌عنوان ناسازگار شناسایی شده و نادیده گرفته شوند\. همچنین این احتمال وجود دارد که \fBipp\-usb\fR به‌کلی روی سیستم غیرفعال شده باشد\. .P رویکرد مطمئن‌تر، پرس‌وجوی مستقیم از نمونه در حال اجرای \fBipp\-usb\fR است تا مشخص شود چه دستگاه‌هایی واقعاً توسط آن مدیریت می‌شوند\. .P برای تسهیل تطبیق دستگاه‌هایی که \fBipp\-usb\fR مدیریت کرده و از طریق DNS\-SD اعلان می‌کند با دستگاه‌های محلی موجود روی گذرگاه USB، \fBipp\-usb\fR دو رکورد TXT به هر یک از سرویس‌های \fB_ipp\._tcp\fR ، \fB_printer\._tcp\fR و \fB_uscan\._tcp\fR که اعلان می‌کند می‌افزاید: .IP "\(bu" 4 usb_SER=VCF9192281 \- شماره سریال USB برای دستگاه .IP "\(bu" 4 usb_HWID=0482&069d \- شناسه سازنده و سخت‌افزار USB برای دستگاه در مبنای شانزده (هگز) .IP "" 0 .P لطفاً توجه داشته باشید که هنگام تطبیق دستگاه‌های کشف‌شده از طریق DNS\-SD با دستگاه‌های USB، اهمیت دارد که تنها اعلان‌های DNS\-SD دریافت شده از نشانی‌های IP که یا نشانی‌های لوپ‌بک (127\.0\.0\.1 یا ::1) هستند یا متعلق به یک رابط محلی می‌باشند در نظر گرفته شوند\. .SH "پیکربندی (CONFIGURATION)" دیمن \fBipp\-usb\fR فایل پیکربندی خود را در دو مکان جستجو می‌کند: .IP "1." 4 \fB/etc/ipp\-usb/ipp\-usb\.conf\fR .IP "2." 4 \fBipp\-usb\.conf\fR در دایرکتوری محل قرارگیری فایل اجرایی .IP "" 0 .P نحو فایل پیکربندی بسیار شبیه به نحو فایل‌های \.INI است\. این فایل از بخش‌های نام‌گذاری‌شده تشکیل شده و هر بخش شامل مجموعه‌ای از متغیرهای نام‌گذاری‌شده است\. کامنت‌ها با نویسه‌های # یا ; شروع می‌شوند و تا پایان خط ادامه دارند: .IP "" 4 .nf # This is a comment [section 1] variable 1 = value 1 ; and another comment variable 2 = value 2 .fi .IP "" 0 .SS "پارامترهای شبکه (Network parameters)" پارامترهای شبکه همگی در بخش \fB[network]\fR قرار دارند: .IP "" 4 .nf [network] # TCP ports for HTTP will be automatically allocated in the # following range http\-min\-port = 60000 http\-max\-port = 65535 # Enable or disable DNS\-SD advertisement dns\-sd = enable # enable | disable # Network interface to use\. Set to `all` if you want to expose you # printer to the local network\. This way you can share your printer # with other computers in the network, as well as with iOS and # Android devices\. interface = loopback # all | loopback # Enable or disable IPv6 ipv6 = enable # enable | disable .fi .IP "" 0 .SS "احراز هویت (Authentication)" به‌طور پیش‌فرض، \fBipp\-usb\fR چاپگر USB متصل‌شده به‌صورت محلی را در دسترس تمام کاربران سیستم قرار می‌دهد\. .P اگرچه این رفتار در بیشتر موارد که رایانه و چاپگر هر دو در استفاده شخصی هستند منطقی است، اما برای محیط‌های بزرگ‌تر این رویکرد می‌تواند بیش از حد ساده و ابتدایی باشد\. .P دیمن \fBipp\-usb\fR سازوکاری فراهم می‌کند که اجازه می‌دهد دسترسی کلاینت‌های محلی بر اساس شناسه کاربری (UID) که برنامه کلاینت تحت آن اجرا می‌شود، کنترل گردد\. .P لطفاً توجه داشته باشید، این سازوکار برای اتصال‌های از راه دور کار نخواهد کرد (به‌طور پیش‌فرض غیرفعال است اما پشتیبانی می‌شود)\. احراز هویت کاربران از راه دور نیازمند سازوکار متفاوتی است که در دست بررسی است اما هنوز پیاده‌سازی نشده است\. .P همچنین توجه داشته باشید، این سازوکار ممکن است در نصب‌های کانتینری (مانند snap، flatpak و موارد مشابه) کار کند یا نکند\. فضای نام کانتینر ممکن است از فضاهای نام سیستم و/یا کاربر جدا شده باشد، بنابراین حتی برای کلاینت‌های محلی نیز UID دیده‌شده توسط \fBipp\-usb\fR ممکن است با UID در سطح سیستم متفاوت باشد\. .P پارامترهای احراز هویت همگی در بخش [auth uid] قرار دارند: .IP "" 4 .nf # Local user authentication by UID/GID [auth uid] # Syntax: # operations = users # # Operations are comma\-separated list of following operations: # all \- all operations # config \- configuration web\-console # fax \- faxing # print \- printing # scan \- scanning # # Users have the following suntax: # user \- user name # @group \- all users that belongs to the group # # Users and groups may be specified either by names or by # numbers\. "*" means any # # Note, if user/group is not known in the context of request # (for example, in the case of non\-local network connection), # "*" used for matching, which will only match wildcard # rules\. # # User/group names are resolved at the moment of request # processing (and cached for a couple of seconds), so running # daemon will see changes to the /etc/passwd and /etc/group # # Examples: # fax, print = lp, @lp # Allow CUPS to do its work # scan = * # Allow any user to scan # config = @wheel # Only wheel group members can do that all = * .fi .IP "" 0 .SS "پیکربندی لاگ‌گیری (Logging configuration)" پارامترهای لاگ‌گیری همگی در بخش \fB[logging]\fR قرار دارند: .IP "" 4 .nf [logging] # device\-log \- what logs are generated per device # main\-log \- what common logs are generated # console\-log \- what of generated logs goes to console # # parameter contains a comma\-separated list of # the following keywords: # error \- error messages # info \- informative messages # debug \- debug messages # trace\-ipp, trace\-escl, trace\-http \- very detailed # per\-protocol traces # trace\-usb \- hex dump of all USB traffic # all \- all logs # trace\-all \- alias to all # # Note, trace\-* implies debug, debug implies info, info implies # error device\-log = all main\-log = debug console\-log = debug # Log rotation parameters: # log\-file\-size \- max log file before rotation\. Use suffix # M for megabytes or K for kilobytes # log\-backup\-files \- how many backup files to preserve during # rotation # max\-file\-size = 256K max\-backup\-files = 5 # Enable or disable ANSI colors on console console\-color = enable # enable | disable # ipp\-usb queries IPP printer attributes at the initialization time # for its own purposes and writes received attributes to the log\. # By default, only necessary attributes are requested from device\. # # If this parameter is set to true, all printer attributes will # be requested\. Normally, it only affects the logging\. However, # some enterprise\-level HP printers returns such huge amount of # data and do it so slowly, so it can cause initialization timeout\. # This is why this feature is not enabled by default get\-all\-printer\-attrs = false # false | true .fi .IP "" 0 .SS "قلق‌ها و رفتارهای خاص (Quirks)" برخی دستگاه‌ها به دلیل اشکالات میان‌افزار (فِرم‌ور) خود، نیازمند رفتار ویژه‌ای هستند که به آن \fBقلق‌های (quirks)\fR خاص دستگاه گفته می‌شود\. \fBipp\-usb\fR این قلق‌ها را از فایل‌های \fB/usr/share/ipp\-usb/quirks/*\.conf\fR و فایل‌های \fB/etc/ipp\-usb/quirks/*\.conf\fR بارگذاری می‌کند\. دایرکتوری \fB/etc/ipp\-usb/quirks\fR برای بازنویسی قلق‌های سیستم یا تغییرات اعمال‌شده توسط مدیر سیستم است\. این فایل‌ها ساختار فایل‌های \.INI را دارند و محتوای آن‌ها به این صورت است: .IP "" 4 .nf # Various HP printers \- match by bame [HP LaserJet MFP M28\-M31] http\-connection = keep\-alive [HP OfficeJet Pro 8730] http\-connection = close [HP Inc\. HP Laser MFP 135a] blacklist = true # Xerox B210\. Match by HWID, as model name is not reliable # before reset\. [0924:42ea] mfg = Xerox model = B210 init\-reset = hard # Default configuration [*] http\-connection = "" .fi .IP "" 0 .P نام بخش، دستگاه (یا گروهی از دستگاه‌ها) را که قلق‌ها بر آن اعمال می‌شوند مشخص می‌کند، و بدنه بخش حاوی قلق‌های اعمال‌شده است\. .P برای هر دستگاه کشف‌شده، قلق‌ها بر اساس شناسه سخت‌افزاری USB HWID (به‌صورت Vendor:Product در مبنای شانزده) و بر اساس نام مدل جستجو می‌شوند\. .P نام‌های بخش می‌توانند حاوی نویسه‌های عام (wildcard) باشند: .IP "" 4 .nf `[HP OfficeJet Pro 8730]` \- match the "HP OfficeJet Pro 8730" device `[HP OfficeJet *]` \- match all models with name started with the "HP OfficeJet" prefix\. `[0924:42ea]` \- match the device with the USB HWID 0924:42ea `[0924:*]` \- match all devices with the Vendor ID equal to 0924 (this ID owned by Xerox)\. .fi .IP "" 0 .P نام‌های مدل می‌توانند حاوی نویسه‌های الگوی تطبیق (glob) باشند: \fB*\fR که با هر توالی از نویسه‌ها تطبیق می‌یابد و \fB?\fR که با هر تک‌نویسه مطابقت دارد\. برای تطبیق مستقیم یکی از این نویسه‌ها (\fB*\fR و \fB?\fR) به‌صورت دقیق، از بک‌اسلش برای اسکیپ کردن استفاده کنید\. .P بخش‌های HWID تنها می‌توانند حاوی نویسه عام \fB*\fR به جای شناسه محصول (Product ID) باشند\. .P توجه داشته باشید، ساده‌ترین روش برای حدس زدن نام دقیق مدل یک دستگاه خاص، استفاده از دستور \fBipp\-usb check\fR است که فهرستی از تمام دستگاه‌های متصل را چاپ می‌کند\. برای به‌دست آوردن فهرست HWIDهای USB، از دستور \fBlsusb\fR استفاده کنید\. .P اگر پارامتری در چندین بخش تطبیق‌یافته پیدا شود، \fBipp\-usb\fR از این اصل پیروی می‌کند: دقیق‌ترین تطبیق برنده است\. .P برای دقیق‌تر بودن، از الگوریتم اولویت‌بندی زیر استفاده می‌شود: .IP "\(bu" 4 شناسه دقیق HWID (بدون نویسه عام، مانند \fB[0924:42ea]\fR) دقیق‌ترین حالت در نظر گرفته می‌شود\. .IP "\(bu" 4 نامزدهای بعدی، تطبیق نام مدل با دست‌کم یک نویسه تطبیق‌یافته غیرعام هستند\. در صورت وجود چندین تطبیق برای نام مدل، تعداد نویسه‌های تطبیق‌یافته غیرعام شمرده می‌شود و تطبیق طولانی‌تر برنده است\. .IP "\(bu" 4 نامزد بعدی، تطبیق HWID دارای نویسه عام است (مانند \fB[0924:*]\fR)\. .IP "\(bu" 4 و کمترین اولویت متعلق به تطبیق نام مدل با تمام نویسه عام است (مانند \fB[*]\fR)\. .IP "" 0 .P در صورت تطبیق‌های چندگانه حتی پس از اعمال این الگوریتم، نخستین تعریف برنده خواهد بود\. فایل‌ها به ترتیب الفبایی بارگذاری شده و بخش‌ها به‌صورت متوالی خوانده می‌شوند\. .P به بیان دیگر، تطبیق HWID بدون نویسه عام دقیق‌ترین حالت در نظر گرفته می‌شود، تطبیق‌های نام مدل بر اساس تعداد نویسه‌های تطبیق‌یافته غیرعام رتبه‌بندی می‌شوند، تطبیق HWID با نویسه عام اولویت کمتری نسبت به موارد بالا دارد زیرا تنها می‌تواند برای تمام دستگاه‌های یک سازنده خاص اعمال شود، و کمترین اولویت متعلق به تطبیق نام مدل با تمام نویسه عام است که برای تعیین مقادیر پیش‌فرض به کار می‌رود\. .P لطفاً توجه داشته باشید که قلق‌های تطبیق‌یافته بر اساس HWID زودتر بارگذاری می‌شوند و ممکن است باعث شوند برخی اقدامات پیش از بارگذاری و اعمال قلق‌های منطبق با نام مدل انجام گیرند، و قلق‌های منطبق بر نام مدل نمی‌توانند این اقدامات زودهنگام را لغو کنند\. این موضوع به این دلیل رخ می‌دهد که برخی چاپگرها پیش از اعمال اقدامات مناسب نمی‌توانند نام مدل خود را به‌طور قابل اطمینانی گزارش دهند\. این امر به قلق‌های زیر مربوط می‌شود: .IP "\(bu" 4 \fBblacklist = true\fR\. اگر دستگاه بر اساس HWID در لیست سیاه قرار گیرد، قلق‌های نام مدل بارگذاری نخواهند شد\. .IP "\(bu" 4 \fBinit\-reset = hard\fR\. بازنشانی انجام خواهد شد، حتی اگر قلق منطبق بر نام مدل تنظیم متفاوتی داشته باشد\. .IP "\(bu" 4 \fBmfg = name\fR و \fBmodel = name\fR\. این پارامترها تنها برای قلق‌های HWID در دسترس هستند و اطلاعات هویتی ارائه‌شده توسط دستگاه را هنگام جستجوی قلق‌ها بر اساس نام مدل بازنویسی می‌کنند\. .IP "" 0 .P پارامترهای زیر تعریف شده‌اند: .IP "\(bu" 4 \fBblacklist = true | false\fR .br در صورت تنظیم روی \fBtrue\fR، دستگاه منطبق توسط \fBipp\-usb\fR نادیده گرفته می‌شود .IP "\(bu" 4 \fBbuggy\-ipp\-responses = reject | allow | sanitize\fR .br برخی دستگاه‌ها پاسخ‌های IPP معیوب (ناقص) ارسال می‌کنند که ناقض مشخصات استاندارد IPP است\. برنامه \fBipp\-usb\fR می‌تواند این پاسخ‌ها را رد کند (\fBreject\fR که باعث ناموفق شدن راه‌اندازی \fBipp\-usb\fR می‌شود)، آن‌ها را بپذیرد (\fBallow\fR که راه‌اندازی \fBipp\-usb\fR موفق خواهد بود، اما CUPS نیز باید آن‌ها را بپذیرد) یا آن‌ها را پالایش کند (\fBsanitize\fR که نقض‌های مشخصات IPP را برطرف می‌سازد)\. .IP "\(bu" 4 \fBdisable\-fax = true | false\fR .br در صورت تنظیم روی \fBtrue\fR، قابلیت فکس دستگاه منطبق نادیده گرفته می‌شود\. .IP "\(bu" 4 \fBdisable\-scan = true | false\fR .br در صورت تنظیم روی \fBtrue\fR، قابلیت اسکن دستگاه منطبق نادیده گرفته می‌شود\. .IP "\(bu" 4 \fBhttp\-XXX = YYY\fR .br سرآیند XXX از درخواست‌های HTTP هدایت‌شده به دستگاه را روی مقدار YYY تنظیم می‌کند\. اگر YYY رشته‌ای خالی باشد، سرآیند XXX حذف می‌شود\. .IP "\(bu" 4 \fBignore\-ipp\-status = true | false\fR .br در صورت تنظیم روی \fBtrue\fR، وضعیت IPP درخواست‌های ارسالی توسط خود \fBipp\-usb\fR نادیده گرفته می‌شود\. این رفتار خاص زمانی مفید است که دستگاه درخواست IPP را به‌درستی مدیریت می‌کند اما وضعیت بازگردانده‌شده قابل اطمینان نیست\. این گزینه تنها بر مرحله راه‌اندازی \fBipp\-usb\fR تأثیر می‌گذارد\. .IP "\(bu" 4 \fBinit\-delay = DELAY\fR .br تأخیر میان باز شدن دستگاه (و در صورت تمایل، بازنشانی آن) و ارسال اولین درخواست به دستگاه\. .IP "\(bu" 4 \fBinit\-retry\-partial = true | false\fR .br در صورتی که تنها بخشی از عملکردهای دستگاه راه‌اندازی شده باشند، تلاش مجدد برای راه‌اندازی انجام می‌شود؛ به‌جای آنکه برنامه با عملکردهای ناقص به کار خود ادامه دهد\. .IP این گزینه زمانی می‌تواند مفید باشد که راه‌اندازی کامل دستگاه زمان زیادی ببرد\. در طول این مدت، ممکن است برخی بخش‌ها به‌طور عادی پاسخ دهند در حالی که بخش‌های دیگر هنوز در حال راه‌اندازی هستند\. برای نمونه، دستگاه ممکن است بلافاصله پس از روشن شدن قابلیت‌های اسکن خود را گزارش کند، در حالی که عملکرد چاپ آن چند دقیقه طول بکشد تا آماده به کار شود\. .IP مشخص شده است که برخی از چاپگرهای سازمانی HP این مشکل را دارند\. .IP "\(bu" 4 \fBinit\-reset = none | soft | hard\fR .br نحوه بازنشانی دستگاه در زمان راه‌اندازی اولیه\. مقدار پیش‌فرض \fBnone\fR است .IP "\(bu" 4 \fBinit\-timeout = DELAY\fR .br مهلت زمانی (تایم‌اوت) برای درخواست‌های HTTP ارسالی توسط \fBipp\-usb\fR در طول راه‌اندازی اولیه\. .IP "\(bu" 4 \fBmfg = name\fR .br نام سازنده (تولیدکننده) USB را بازنویسی می‌کند\. این رفتار خاص تنها می‌تواند در بخش HWID استفاده شود و بر جستجوی رفتارهای خاص بر اساس نام مدل تأثیر می‌گذارد\. .IP "\(bu" 4 \fBmodel = name\fR .br نام مدل (محصول) USB را بازنویسی می‌کند\. این رفتار خاص تنها می‌تواند در بخش HWID استفاده شود و بر جستجوی رفتارهای خاص بر اساس نام مدل تأثیر می‌گذارد\. .IP "\(bu" 4 \fBrequest\-delay = DELAY\fR .br تأخیر بین درخواست‌های متوالی HTTP ارسالی به دستگاه (این با \fBusb\-send\-delay\fR یکسان نیست، چرا که گزینه دوم بین هر یک از درخواست‌های متوالی ارسال به دستگاه از طریق USB تأخیر ایجاد می‌کند)\. .IP "\(bu" 4 \fBusb\-max\-interfaces = N\fR .br حتی اگر رابط‌های بیشتری در دسترس باشد، بیشتر از N رابط USB استفاده نشود\. .IP "\(bu" 4 \fBusb\-send\-delay = DELAY\fR .br تأخیر میان درخواست‌های سطح پایین ارسال به دستگاه از طریق USB (این با \fBrequest\-delay\fR که بین کل درخواست‌های سطح HTTP تأخیر می‌اندازد یکسان نیست)\. .IP "\(bu" 4 \fBusb\-send\-delay\-threshold = N\fR .br گزینه \fBusb\-send\-delay\fR تنها در صورتی اعمال می‌شود که اندازه درخواست ارسال به دستگاه از طریق USB از این آستانه فراتر رود\. .IP "\(bu" 4 \fBzlp\-recv\-hack = true | false\fR .br برخی دستگاه‌های سازمانی HP در مرحله راه‌اندازی اولیه (که می‌تواند چندین دقیقه طول بکشد) ممکن است با وضعیت HTTP 503 یا مشابه آن پاسخ دهند، که این مورد قابل انتظار است\. با این حال، بدنه پاسخ ممکن است ناقص (بریده‌شده) باشد (به‌طور معمول، نویسه پایان‌دهنده '\en' گم می‌شود)\. در چنین مواردی، \fBipp\-usb\fR برای حفظ همگام‌سازی با دستگاه به‌طور نامحدود منتظر دریافت پاسخ می‌ماند\. .IP در همین حال، این دستگاه‌ها در پایان خروجی ناقص یک بسته UDP با طول صفر ارسال می‌کنند\. اگر گزینه \fBzlp\-recv\-hack\fR فعال باشد، هنگامی که ipp\-usb بسته‌ای با طول صفر از طریق USB دریافت می‌کند و به دنبال آن مهلت زمانی دریافت فرا می‌رسد، این ترکیب از رویدادها را به‌عنوان پایان معتبر بدنه پاسخ تفسیر می‌کند\. این مورد تنها در زمان راه‌اندازی اولیه عمل می‌کند و بر عملیات‌های بعدی تأثیری ندارد\. .IP "\(bu" 4 \fBzlp\-send = true | false\fR .br انتقال‌های خروجی را که مضربی از اندازه بسته نقطه پایانی (endpoint) هستند با یک بسته اضافی با طول صفر خاتمه می‌دهد\. .IP "" 0 .P پارامتر DELAY می‌تواند یا به‌صورت یک عدد صحیح بدون علامت (به میلی‌ثانیه) یا به‌صورت دنباله‌ای از اعداد اعشاری با بخش کسری اختیاری و پسوند واحد مشخص شود، مانند "300ms"، "0\.5s" یا "2m30s"\. واحدهای زمانی معتبر عبارتند از "ns"، "us" (یا "µs")، "ms"، "s"، "m" و "h"\. .P اگر درباره دستگاه خود متوجه شدید که برای کارکرد درست نیازمند یک رفتار خاص است یا اصلاً با \fBipp\-usb\fR کار نمی‌کند اگرچه رابط IPP\-over\-USB را ارائه می‌دهد، لطفاً این مشکل را در گزارش دهید\. این کار به ما امکان می‌دهد مجموعه رفتارهای خاص خود را به‌روزرسانی کنیم و به سایر دارندگان چنین دستگاهی کمک نماییم\. .SH "فایل‌ها (FILES)" .IP "\(bu" 4 \fB/etc/ipp\-usb/ipp\-usb\.conf\fR: فایل پیکربندی دیمن .IP "\(bu" 4 \fB/var/log/ipp\-usb/main\.log\fR: فایل لاگ اصلی .IP "\(bu" 4 \fB/var/log/ipp\-usb/\.log\fR: فایل‌های لاگ اختصاصی هر دستگاه .IP "\(bu" 4 \fB/var/ipp\-usb/dev/\.state\fR: وضعیت دستگاه (تخصیص پورت HTTP، نام DNS\-SD) .IP "\(bu" 4 \fB/var/ipp\-usb/lock/ipp\-usb\.lock\fR: فایل قفل، که به جلوگیری از اجرای هم‌زمان چندین نسخه از دیمن کمک می‌کند .IP "\(bu" 4 \fB/var/ipp\-usb/ctrl\fR: سوکت کنترلی \fBipp\-usb\fR\. در حال حاضر تنها برای دریافت وضعیت اختصاصی هر دستگاه (چاپ‌شده توسط \fBipp\-usb status\fR) استفاده می‌شود، اما عملکرد آن ممکن است در آینده گسترش یابد .IP "\(bu" 4 \fB/usr/share/ipp\-usb/quirks/*\.conf\fR: قلق‌ها و رفتارهای خاص ویژه دستگاه (به توضیحات بالا مراجعه کنید) .IP "\(bu" 4 \fB/etc/ipp\-usb/quirks/*\.conf\fR: قلق‌ها و رفتارهای خاص ویژه دستگاه تعریف‌شده توسط مدیر سیستم (به توضیحات بالا مراجعه کنید) .IP "" 0 .SH "حق نشر (COPYRIGHT)" کپی‌رایت (c) توسط Alexander Pevzner (pzz@apevzner\.com, pzz@pzz\.msk\.ru) .br تمام حقوق محفوظ است\. .P این برنامه تحت مجوز 2\-Clause BSD منتشر شده است\. برای جزئیات به فایل LICENSE مراجعه کنید\. .SH "همچنین ببینید (SEE ALSO)" \fBcups\fR(1)