مشکلات چه هستند؟ «کار خاصی را میخواهید انجام دهید اما نمیدانید از کجا شروع کنید.» یا «از ابزار خاصی استفاده میکنید اما برخلاف انتظار شما کار میکند یا اصلاً کار نمیکند.» هر یک از اینها یک مشکل (problem) هستند و یک یا چند راه حل (solution) نیز دارند. در اینجا میخواهم روشهای یافتن راه حلها را با هم مرور کنیم، زمانیکه با یک مشکل خاص روبرو میشوید؛ ابزارهای خوبی برای یافتن راه حلها موجود است. معمولاً مشکلات ما بخاطر نداشتن آگاهی کافی است و نمیتوانیم به درستی از یک برنامه، دستور یا کتابخانه استفاده کنیم؛ پس برای یافتن راه حل در ابتدا باید بیشتر بیاموزیم.
میتوانید در لیست راهنماها جستجو کنید. توسط دستور apropos میتوانید برای نیاز خود جستجو کنید، بطور مثال میخواهید یک فایل ناقص را کپی کنید اما نمیدانید با چه ابزاری این کار امکانپذیر است، پس دستور زیر را وارد کنید:
$ apropos -a copy file
سوئیچ a مشخص میکند که در خلاصهٔ توضیح مستندات ابزارهای نصبشده بر روی سیستم، هر دو کلمهٔ copy و file را با هم جستجو کند. خروجی این دستور، لیستی از دستورات قابل اعمال است که میتوانید از آنها استفاده کنید. اما این روش، همواره جوابگو نیست، زیرا «خلاصه توضیح مستندات» اطلاعات زیادی را در بر نمیگیرد و تنها در یک خط خلاصه شده است.
برای خواندن مستنداتی که همراه با هر برنامه یا ابزار توزیع شده است، از دستور man و info میتوان استفاده کرد. قالب مستندات ارائه شده برای دستور man و info متفاوت است، بعضی از ابزارها و برنامهها، مستندات خود را برای دستور man و بعضی دیگر برای دستور info آن را مهیا دیدهاند، در بعضی موارد نیز هر دو حالت مهیا شده است، همچنین از قالب HTML نیز برای ارائه مستندات استفاده میشود. مستندات ابزارهایی که برای دستور man مهیا شده را میتوانید با دستور زیر مرور کنید:
$ man PROGRAM
که PROGRAM نام برنامه یا دستور یا کتابخانهای است که میخواهید مستندات آن را بخوانید. همچنین مستندات ابزارهایی که برای دستور info مهیا شده را میتوانید با دستور زیر مرور کنید:
$ info PROGRAM
در اینحالت نیز PROGRAM نام برنامه یا دستور یا کتابخانهای است که میخواهید مستندات آن را بخوانید. مستنداتی که بدین روش ارائه میشوند، بصورت یک کتابچهٔ کوچک قابل استفاده هستند، مکاننمای صفحهکلید را بر روی گزینهها (که با علامت * مشخص شدهاند) ببرید و کلید Enter را فشار دهید تا به مطالب زیرشاخه دسترسی داشته باشید. برای رفتن به شاخهٔ بالاتر، کلید U را فشار دهید. مستنداتی که در قالب HTML ارائه میشوند را میتوانید در دایرکتوریهای مشابه زیر، بیابید:
/usr/share/doc/PACKAGE/html
به جای PACKAGE نام بستهای که مستندات آن را میخواهید، بنویسید، معمولاً مستنداتی که در قالب HTML ارائه میشوند در چنین دایرکتوریای وجود دارد. توسط مرورگر وب فایرفاکس (یا Iceweasel) میتوانید آنها را مشاهده کنید. خواندن فایلهای HTML را برای مستندات طولانی و تودرتو پیشنهاد میکنم.
بستهٔ راهنما یا مستندات را نصب کنید. اگر در حالات قبل، نتوانستید مستندات مورد نیاز را بیابید، پس احتمالاً مستندات مورد نظر هنوز نصب نشده اند. هر بستهٔ نرمافزاری را که بر روی سیستم نصب میکنید، معمولاً بستهٔ دیگری شامل مستندات آن است. بطور مثال، بستهٔ libstdc++6-4.3-doc که مرجع مستندات کتابخانهٔ استاندارد زبان C++ است. همهٔ چنین بستههایی که حاوی راهنما و مستندات هستند، در بخش doc قرار میگیرند، بنابراین برای جستجو در میان آنها دستور زیر را وارد کنید:
$ aptitude search '?section(doc)PACKAGE'
به جای PACKAGE قسمتی از نام بستهای را بنویسید که میخواهید بستهٔ مستندات آن را بیابید. سپس لیست بستههای مستندات مرتبط نمایش داده میشود، آنهایی که در ابتدای خط حرف i نوشته شده است، یعنی در حال حاضر بر روی سیستم نصب هستند و آنهایی که در ابتدای خط حرف p نوشته شده، یعنی بر روی سیستم نصب نیستند و به مستندات آن، دسترسی ندارید، پس قبل از استفاده از آنها، باید آنها را با دستور apt-get نصب کنید.
ابزاری که نیاز شما را رفع میکند را بیابید. اگر موارد قبل، نیاز شما را رفع نمیکند و شما هنوز نمیدانید که چه ابزاری را باید نصب کنید تا از آن استفاده کنید، در این حالت در بین بستهها و مخازن نرمافزاری جستجو کنید:
$ aptitude search '?description(SEARCH)'
در اینجا SEARCH کلمهای است که در رابطه با نیاز شما است، بطور مثال اگر در جستجوی یافتن یک برنامهٔ نظارتکننده (monitor) هستید، به جای آن کلمهٔ monitor را بنویسید، یا اگر در جستجوی یک برنامهٔ نظارتکننده شبکه (network monitor) هستید، دستور زیر را وارد کنید:
$ aptitude search '?description(network)?description(monitor)'
قبلاً در رابطه با نحوهٔ جستجو توسط aptitude خلاصه نوشته بودم، میتوانید آن را نیز بخوانید. به جای aptitude میتوانید برای جستجو از synaptic نیز استفاده کنید که یک ابزار گرافیکی برای نصب، حذف، جستجو و مدیریت بستهها است.
هیچ سرنخی ندارید، در اینحالت بهترین کار همان جستجو توسط گوگل است. تأثیر گوگل را نمیتوان نادیده گرفت، این موتور جستجوگر اینترنتی، بهترین روش برای یافتن راه حل مشکلاتی است که قبلاً توسط سایر افراد حل و مستندسازی شده است. گوگل دوست شماست، از این هدیهٔ بزرگ استفاده کنید، اگر راه حل شما در سایتهای «فارسی» نبود، ناامید نشوید، احتمال اینکه راه حل خود را در سایتهای «انگلیسیزبان» بیابید، چندین برابر بیشتر است. برای یافتن صفحههای مرتبط توصیه میکنم که «کلمات کلیدی» بسیار مرتبط را مورد جستجو قرار دهید.
در انجمنهای گفتگو سوال کنید. همیشه این مرحله را به عنوان آخرین اقدام انجام دهید، در غیر اینصورت به احتمال زیاد، کسی جوابی به شما نمیدهد یا شما را به صفحهٔ جستجوی گوگل هدایت میکند یا جوابی به شما داده خواهد شد که میتوانستید چیزی بیش از آن را از طریق مراحل قبل یاد بگیرید.
ویرایش: یک دوست گرامی (Saman) در بخش دیدگاهها برای راحتتر خواندن این مستندات به روشهای خوبی اشاره کردهاند.