.\" @(#)scgskeleton.1 1.4 16/01/26 Copyright 1986-2016 J. Schilling .\" Manual page for scgskeleton .\" .if t .ds a \v'-0.55m'\h'0.00n'\z.\h'0.40n'\z.\v'0.55m'\h'-0.40n'a .if t .ds o \v'-0.55m'\h'0.00n'\z.\h'0.45n'\z.\v'0.55m'\h'-0.45n'o .if t .ds u \v'-0.55m'\h'0.00n'\z.\h'0.40n'\z.\v'0.55m'\h'-0.40n'u .if t .ds A \v'-0.77m'\h'0.25n'\z.\h'0.45n'\z.\v'0.77m'\h'-0.70n'A .if t .ds O \v'-0.77m'\h'0.25n'\z.\h'0.45n'\z.\v'0.77m'\h'-0.70n'O .if t .ds U \v'-0.77m'\h'0.30n'\z.\h'0.45n'\z.\v'0.77m'\h'-0.75n'U .if t .ds s \\(*b .if t .ds S SS .if n .ds a ae .if n .ds o oe .if n .ds u ue .if n .ds s sz .TH SCGSKELETON 1L "2016/01/26" "J\*org Schilling" "Schily\'s USER COMMANDS" .SH "نام (NAME)" scgskeleton \- برنامه‌ی اسکلت برای انتقال داده‌های SCSI با استفاده از libscg .SH "خلاصه دستور (SYNOPSIS)" .B scgskeleton .BI dev= device [ .I options ] .SH "توضیحات (DESCRIPTION)" برنامه .B Scgskeleton یک برنامه نمونه و اسکلت (skeleton) برای نمایش رابط‌ها و قابلیت‌های کتابخانه انتقال SCSI با نام .BR libscg است. .PP .SS "نام‌گذاری دستگاه‌ها (Device naming)" برای مشاهده فهرستی از پارامترهای ممکن برای نام دستگاه، دستور .B "scgskeleton \-scanbus" یا .B "scgskeleton dev=help" را اجرا کنید و سپس بر اساس فهرست دستگاه‌های نمایش‌داده‌شده، پارامتر مناسب .B dev= را به کار ببرید. .SH "گزینه‌ها (OPTIONS)" .TP .B \-help خلاصه‌ای کوتاه از گزینه‌ها را چاپ کرده و خارج می‌شود. .TP .B \-version اطلاعات نسخه برنامه را نمایش داده و خارج می‌شود. .TP .BI dev= target تنظیم هدف (target) SCSI برای ضبط‌کننده CD/DVD/BluRay؛ یادداشت‌های بالا را ببینید. یک مشخصه متداول برای دستگاه هدف به این صورت است: .BI dev= 1,6,0 \&. اگر همراه با مشخصه عددی هدف، نیاز به ارائه نام فایل باشد، نام فایل به پیاده‌سازی سیستم وابسته است. نام فایل صحیح در این حالت را می‌توان در کتابچه‌های راهنمای اختصاصی سیستم‌عامل هدف پیدا کرد. در سیستم‌عامل .I FreeBSD بدون پشتیبانی از .IR CAM ، باید از دستگاه کنترلی استفاده کنید (مانند .IR /dev/rcd0.ctl ). یک مشخصه صحیح دستگاه در این حالت می‌تواند به این شکل باشد: .BI dev= /dev/rcd0.ctl:@ \&. .sp .B \h'-2m'آدرس‌دهی عمومی SCSI .br دستگاه هدف در گزینه .B dev= به .IR scsibus / target / lun در ضبط‌کننده CD/DVD/BluRay اشاره دارد. ارتباط در .I SunOS با راه‌انداز عمومی SCSI با نام .B scg انجام می‌پذیرد. سایر سیستم‌عامل‌ها از یک شبیه‌سازی کتابخانه‌ای برای این درایور استفاده می‌کنند. ساختار نحوی ممکن عبارت است از: .B dev= .IR scsibus , target , lun یا .B dev= .IR target , lun . در حالت دوم، ضبط‌کننده CD/DVD/BluRay باید به گذرگاه (bus) پیش‌فرض SCSI دستگاه متصل باشد. پارامترهای .IR Scsibus ، .I target و .I lun اعداد صحیح هستند. برخی سیستم‌عامل‌ها یا پیاده‌سازی‌های لایه انتقال SCSI ممکن است نیازمند تعیین نام فایل نیز باشند. در این حالت ساختار صحیح برای دستگاه به صورت زیر است: .B dev= .IR devicename : scsibus , target , lun یا .B dev= .IR devicename : target , lun . اگر نام گره دستگاه مشخص‌شده در چنین سیستمی دقیقاً به یک دستگاه SCSI اشاره داشته باشد، می‌توان از فرم کوتاه .B dev= .IR devicename : @ یا .B dev= .IR devicename : @ , lun به جای .B dev= .IR devicename : scsibus , target , lun استفاده کرد. .sp .B \h'-2m'آدرس‌دهی راه دور SCSI .br برای دسترسی به دستگاه‌های راه دور SCSI، باید نام دستگاه SCSI را با یک نشان‌گر دستگاه راه دور پیشوند کنید. نشان‌گر دستگاه راه دور به یکی از دو شکل زیر است: .BI REMOTE: user@host: یا .BI REMOTE: host: یک نام معتبر دستگاه راه دور SCSI می‌تواند به این صورت باشد: .BI REMOTE: user@host: جهت اجازه پویش گذرگاه راه دور SCSI، یا .BI REMOTE: user@host:1,0,0 برای دسترسی به دستگاه SCSI در .I host متصل به گذرگاه SCSI شماره ۱، هدف ۰ و lun شماره ۰. به منظور امکان‌پذیر ساختن دسترسی راه دور به یک .IR host خاص، برنامه .BR rscsi (1) باید در آن .I host حضور داشته و پیکربندی شده باشد. .sp .B \h'-2m'لایه‌های انتقال جایگزین SCSI .br درایوهای .B ATAPI در واقع همان درایوهای .B SCSI هستند که ذاتاً از .I "رابط بسته‌ای ATA" به عنوان لایه انتقال دستورات .B SCSI درون انتقال IDE (ATA) استفاده می‌کنند. اگر سیستم‌عامل شما یک زیرسیستم کامل درایور هسته را پیاده‌سازی نکرده باشد که اجازه دسترسی به هر درایوی را با دستورات .B SCSI از طریق یک رابط کاربری یکتا فراهم کند، ممکن است نیاز به تعیین لایه انتقال جایگزین در خط فرمان داشته باشید. .sp برای دسترسی به دستگاه‌های SCSI از طریق لایه‌های انتقال جایگزین، باید نام دستگاه SCSI را با یک شناسه لایه انتقال پیشوند کنید. شناسه لایه انتقال می‌تواند مقادیری مانند .B USCSI: یا .BR ATAPI: داشته باشد. برای دریافت فهرستی از لایه‌های انتقال پشتیبانی‌شده در پلتفرم خود، از .B dev= .IR HELP : استفاده کنید. .sp .B \h'-2m'پیش‌زمینه قابلیت حمل (Portability) .br برای اینکه برنامه .B scgskeleton روی تمام پلتفرم‌های یونیکس قابل حمل باشد، ساختار نحوی .B dev= .IR devicename : scsibus , target , lun ترجیح داده می‌شود زیرا دانش اختصاصی سیستم‌عامل درباره نام دستگاه‌ها را از دید کاربر پنهان می‌سازد. ممکن است یک سیستم‌عامل خاص الزاماً روشی برای تعیین نام فایل دستگاه واقعی یا روشی برای تعیین .IR scsibus , target , lun ارائه نکند. .sp گذرگاه .I Scsibus شماره ۰ گذرگاه پیش‌فرض SCSI در دستگاه است. برای اطلاعات بیشتر پیام‌های بوت را بررسی کرده یا به فایل .B /var/adm/messages برای جزئیات پیکربندی SCSI دستگاه خود مراجعه کنید. اگر در یافتن مقادیر صحیح برای .IR scsibus , target , lun مشکل دارید، گزینه .B \-scanbus برنامه .B scgskeleton را که در ادامه توضیح داده شده امتحان کنید. .sp .B \h'-2m'استفاده از نام‌های منطقی برای دستگاه‌ها .br اگر گزینه .I dev مشخص نشده باشد، .B scgskeleton تلاش می‌کند دستگاه را از متغیر محیطی .B CDR_DEVICE دریافت کند. .sp اگر فایل /etc/default/cdrecord وجود داشته باشد و آرگومان گزینه .B dev= یا متغیر محیطی .B CDR_DEVICE حاوی نویسه‌های ','، '/'، '@' یا ':' نباشد، به عنوان برچسب نام دستگاه که در فایل /etc/default/cdrecord تعریف شده تفسیر می‌شود (بخش FILES را ببینید). .sp .B \h'-2m'حالت شناسایی خودکار هدف (Autotarget Mode) .br اگر گزینه .B dev= و متغیر محیطی .B CDR_DEVICE تعیین نشده باشند، یا فقط حاوی مشخص‌کننده لایه انتقال بدون قالب آدرس‌دهی باشند، .B scgskeleton تلاش می‌کند فضای آدرس SCSI را برای درایوهای CD-ROM پویش کند. اگر دقیقاً یک درایو یافت شود، به طور پیش‌فرض همان مورد استفاده قرار می‌گیرد. .TP .BI timeout= # تنظیم مقدار زمان انتظار (timeout) پیش‌فرض دستور SCSI به .IR # " ثانیه. زمان انتظار پیش‌فرض، حداقل زمان در نظر گرفته‌شده برای ارسال دستورات SCSI است. اگر یک دستور SCSI به دلیل اتمام زمان شکست بخورد، می‌توانید زمان انتظار پیش‌فرض را به بیش از مقدار دستور شکست‌خورده افزایش دهید. اگر دستور با افزایش زمان انتظار به درستی اجرا شد، لطفاً مقدار بهتر و دستور مربوطه را به نویسنده برنامه گزارش دهید. اگر گزینه .I timeout مشخص نشود، زمان پیش‌فرض ۴۰ ثانیه استفاده می‌شود. .TP .BI debug= "#, " -d تنظیم مقدار اشکال‌زدایی متفرقه به # (با debug=#) یا افزایش سطح اشکال‌زدایی به اندازه یک واحد (با -d). اگر .I -dd را تعیین کنید، برابر با .BI debug= 2 خواهد بود. این گزینه می‌تواند به یافتن مشکلات هنگام باز کردن درایور برای libscg و همچنین اشکالات اندازه و نوع سکتورها کمک کند. استفاده از .B \-debug سرعت فرآیند را کاهش می‌دهد و ممکن است دلیل کمبود بافر (buffer underrun) باشد. .TP .BR kdebug= "#, " kd= # به درایور .B scg دستور می‌دهد تا مقدار اشکال‌زدایی هسته را در زمان اجرای دستورات SCSI تغییر دهد. .TP .BR \-silent ", " \-s از چاپ گزارش وضعیت برای دستورات ناموفق SCSI خودداری می‌کند. .TP .B \-v سطح پرگویی (verbosity) عمومی را یک واحد افزایش می‌دهد. این گزینه برای مثال جهت نمایش پیشرفت عملیات به کار می‌رود. .TP .B \-V سطح پرگویی را در رابطه با لایه انتقال دستورات SCSI یک واحد افزایش می‌دهد. این به اشکال‌زدایی مشکلاتی که در طول فرآیند در ضبط‌کننده CD رخ می‌دهند کمک می‌کند. اگر پیام‌های خطای غیرقابل درکی دریافت می‌کنید، باید از این فلگ برای دریافت خروجی دقیق‌تر استفاده کنید. گزینه .B \-VV علاوه بر این، محتوای بافر داده را نیز نمایش می‌دهد. استفاده از .B \-V یا .B \-VV سرعت فرآیند را کاهش می‌دهد. .TP .B \-scanbus تمام دستگاه‌های SCSI را روی همه گذرگاه‌های SCSI پویش کرده و رشته‌های استعلام (inquiry) را چاپ می‌کند. این گزینه می‌تواند برای یافتن آدرس SCSI دستگاه‌ها در یک سیستم استفاده شود. اعداد چاپ‌شده به عنوان برچسب از رابطه زیر محاسبه می‌شوند: .B "bus * 100 + target" .TP .BI scgopts= list فهرستی از گزینه‌های SCSI جداشده با کاما که توسط libscg مدیریت می‌شوند. گزینه‌های پیاده‌سازی‌شده می‌توانند مستقل از برنامه‌ها به‌روزرسانی شوند. در حال حاضر گزینه .B ignore\-resid برای دور زدن یک باگ در هسته لینوکس پشتیبانی می‌شود. .TP .BR ts= # تنظیم حداکثر اندازه انتقال برای یک تک‌دستور SCSI به مقدار #. ساختار نحوی گزینه .B ts= مشابه گزینه fs=# در cdrecord یا bs=# در sdd است. .sp اگر گزینه .B ts= مشخص نشده باشد، .B scgskeleton به طور پیش‌فرض اندازه انتقال را ۲۵۶ کیلوبایت در نظر می‌گیرد. اگر libscg مقادیر کمتری از سیستم‌عامل دریافت کند، این مقدار به حداکثر مقدار ممکن در سیستم‌عامل جاری کاهش می‌یابد. گاهی ممکن است کاهش بیشتر اندازه انتقال یا افزایش آن مفید باشد، اما در نظر داشته باشید که یافتن مقدار مناسب‌تر با آزمایش گزینه .B ts= ممکن است زمان زیادی ببرد. .SH "مثال‌ها (EXAMPLES)" .SH "محیط (ENVIRONMENT)" .TP .B RSH اگر متغیر محیطی .B RSH تنظیم شده باشد، اتصال راه دور از طریق .BR rcmd (3) برقرار نمی‌شود، بلکه با فراخوانی برنامه‌ای که توسط .B RSH مشخص شده ایجاد خواهد شد. برای مثال از .BR RSH= /usr/bin/ssh برای ایجاد یک اتصال امن پوسته استفاده کنید. .sp توجه داشته باشید که این کار .B cdrecord را وادار می‌کند یک لوله (pipe) به برنامه .BR rsh (1) بسازد و اجازه دسترسی مستقیم .B cdrecord به سوکت شبکه سرور راه دور را سلب می‌کند. این امر پیکربندی پارامترهای کارایی را غیرممکن ساخته و سرعت ارتباط را در مقایسه با اتصال .BR rcmd (3) آغازشده توسط .B root کاهش می‌دهد. .TP .B RSCSI اگر متغیر محیطی .B RSCSI تنظیم شده باشد، سرور راه دور SCSI برنامه .B /opt/schily/sbin/rscsi نخواهد بود، بلکه برنامه‌ای است که توسط .B RSCSI مشخص شده است. توجه داشته باشید که اگر با حسابی وارد شوید که پوسته ورود آن برنامه سرور راه دور SCSI تعریف شده است، نام برنامه سرور راه دور SCSI نادیده گرفته خواهد شد. .SH "همچنین ببینید (SEE ALSO)" .BR cdrecord (1), .BR scg (7), .BR rcmd (3), .BR ssh (1). .SH "نکات (NOTES)" .SH "عیب‌یابی (DIAGNOSTICS)" .PP یک پیام خطای معمول برای دستور SCSI شبیه به متن زیر است: .sp .RS .nf scgskeleton: I/O error. test unit ready: scsi sendcmd: no error CDB: 00 20 00 00 00 00 status: 0x2 (CHECK CONDITION) Sense Bytes: 70 00 05 00 00 00 00 0A 00 00 00 00 25 00 00 00 00 00 Sense Key: 0x5 Illegal Request, Segment 0 Sense Code: 0x25 Qual 0x00 (logical unit not supported) Fru 0x0 Sense flags: Blk 0 (not valid) cmd finished after 0.002s timeout 40s .fi .sp .RE خط اول اطلاعاتی درباره انتقال دستور ارائه می‌دهد. متن بعد از اولین دونقطه، متن خطای فراخوانی سیستم را از دیدگاه هسته نشان می‌دهد که معمولاً عبارت است از: .B "I/O error" مگر آنکه مشکلات دیگری رخ داده باشد. کلمات بعدی شامل توضیحی کوتاه برای دستور SCSI ناموفق است. بقیه خط به شما می‌گوید که آیا مشکلی در انتقال دستور روی گذرگاه SCSI وجود داشته است یا خیر. عبارت .B "fatal error" به این معنی است که انتقال دستور امکان‌پذیر نبوده است (یعنی هیچ دستگاهی در آدرس SCSI درخواستی حضور ندارد). .PP خط دوم بلوک توصیف‌کننده دستور SCSI را برای دستور ناموفق چاپ می‌کند. .PP خط سوم اطلاعات مربوط به کد وضعیت SCSI بازگردانده‌شده توسط دستور را در صورتی که انتقال دستور با موفقیت انجام شده باشد ارائه می‌دهد. این اطلاعات خطا از طرف دستگاه SCSI است. .PP خط چهارم تخلیه هگزادسیمال (hex dump) اطلاعات حس خودکار درخواستی (auto request sense) برای دستور است. .PP خط پنجم متن خطای مربوط به کلید حس (sense key) را در صورت وجود، به همراه شماره بخشی که تنها در صورت دستور .I copy معتبر است چاپ می‌کند. اگر پیام خطا مستقیماً به دستور فعلی مربوط نباشد، متن .I deferred error اضافه می‌شود. .PP خط ششم متن خطای مربوط به کد حس و توصیف‌کننده حس را در صورت وجود نمایش می‌دهد. اگر نوع دستگاه مشخص باشد، داده‌های حس از جداول موجود در .IR scsierrs.c رمزگشایی می‌شوند. پس از متن، مقدار خطا برای یک واحد قابل تعویض در محل (FRU) آورده می‌شود. .PP خط هفتم شماره بلوک مربوط به دستور ناموفق و متن مربوط به پرچم‌های مختلف خطا را چاپ می‌کند. شماره بلوک ممکن است معتبر نباشد. .PP خط هشتم زمان انتظار تنظیم‌شده برای این دستور و زمانی را که دستور واقعاً برای تکمیل نیاز داشته است گزارش می‌دهد. .SH "اشکالات (BUGS)" .SH "نویسنده (AUTHOR)" .nf J\*org Schilling Seestr. 110 D-13353 Berlin Germany .fi .PP اطلاعات تکمیلی را می‌توان در نشانی زیر یافت: .br http://cdrecord.org/private/cdrecord.html .PP در صورت داشتن پرسش‌های پشتیبانی، آن‌ها را به نشانی زیر ارسال کنید: .PP .B cdrtools-support@lists.sourceforge.net .PP اگر باگی پیدا کرده‌اید، ایمیلی به نشانی‌های زیر بفرستید: .PP .B cdrtools-developers@lists.sourceforge.net .br یا .B joerg.schilling@fokus.fraunhofer.de .PP برای عضویت در لیست‌های پستی از نشانی‌های زیر استفاده کنید: .PP .B https://lists.sourceforge.net/lists/listinfo/cdrtools-developers .br یا .B https://lists.sourceforge.net/lists/listinfo/cdrtools-support