ترفند لینوکسی

استادی با دستورات ترمینال

«در لینوکس، همه می‌دانند که می‌شود فلان کار را با یک دستور ترمینالی انجام داد.» این جمله درست است، اما این که آن دستور را بشود پیدا کرد اصلا آسان نیست؛ بخصوص در مورد مدیریت بسته‌ها در سیستم‌های دبیانی.
کد خبر: ۴۱۲۳۲۸

ابزارهای بسته‌های دبیان(dpkg، مجموعه نرم‌افزاری ATP و ابزارهایی چونaptitude) امور پایه‌ای نصب و مدیریت بسته‌ها را بسادگی انجام می‌دهد. حتی اگر بخواهیم کارهای پیچیده‌تر را هم انجام دهیم، ‌به کمک این ابزارها می‌توان آنها را ساده‌تر کرد، اما آپشن‌ها و ابزارهایی که برای این کار لازم است، خیلی مشهور نیستند.

یکی از کارهای مفیدی که می‌توان انجام داد فهمیدن این موضوع است که چرا فلان بسته نصب شده است؟ برای پاسخ به این سوال، می‌خواهیم از ابزار Aptitude استفاده کنیم که این کار را بسادگی و سرعت انجام می‌دهد. کافی است از دستور زیر استفاده کنیم تا متوجه شویم این بسته مورد استفاده چه برنامه‌ای است:

Aptitude why packagename

اگر برای مدت طولانی ابزارهای سیستم خود را به‌روز نکرده‌اید، احتمالا از اطرافیان خود شنیده‌اید که می‌گویند، بهتر است توزیع خود را ارتقا بدهید و به‌جای دستور upgrade ازdist-upgrade استفاده کنید. هر چند که راه بهتری است و بعد از انجام این دستور، دیگر با تعداد زیادی از بسته‌های ارتقا یافته بی‌مصرف روبه‌رو نخواهید شد، اما تنها کافی است به‌جای استفاده از ابزار apt، از aptitude استفاده کنید.

گاهی اوقات پیش می‌آید که بخواهید بدانید فایل‌های موجود در یک بسته چه هستند یا این که آیا فلان فایل به بسته خاص وابسته هست یا خیر. برای این منظور، از دستور dpkg –S filename استفاده می‌کنیم. مثلا اگر بسته Sendmail در سیستم شما نصب نشده باشد و بخواهید بدانید که چه بسته‌ای است که دارد لینک ‌/‌usr‌/‌lib‌/‌sendmail را کنترل می‌کند، می‌توانید دستور زیر را اجرا کنید:‌

Dpkg –S ‌/‌usr‌/‌lib‌/‌sendmail

که برای مثال، جوابی معادل زیر می‌دهد:

postfix: ‌/‌usr‌/‌lib‌/‌sendmail

حالا اگر بخواهیم بدانیم که کدام بسته چه فایلی را نصب می‌کند، باید چه کنیم؟ این کاری است که دستور apt-file انجام می‌دهد. توجه داشته باشید این دستور ممکن است به‌صورت پیش‌فرض نصب نشده باشد و باید آن را نصب کنیم. بعد از نصب باید حافظه کش آن را به‌روز کنیم (با تایپ دستور apt-file update). حالا اگر دستور apt-file filename را تایپ کنیم، اطلاعات آن فایل را دریافت می‌کنیم.

بهتر است اطلاعاتی که می‌دهیم بسیار جزئی باشد، چرا که ممکن است پاسخ برگشتی شامل چند جواب شود اما وقتی آدرس دقیق می‌دهیم، مثلا نشانی ‌/‌usr‌/‌lib‌/‌xml2Conf.sh را به‌عنوان filename به آن دستور بدهیم، تنها یک پاسخ بیرون می‌دهد. در نتیجه اگر فایل /etc/apache2/apache2.conf را با این دستور جستجو کنیم، حتی اگر آپاچی روی سیستم نصب نشده باشد هم، پاسخ apache2.2-common را بر می‌گرداند. آخرین ترفند ترمینالی هم برمی‌گردد به یک موضوع جالب و آن هم گزارش‌گیری از تمام نرم‌افزارهایی است که تاکنون نصب شده است. به فرض بخواهیم یک نصب تمیز از سیستم عامل داشته باشیم، اما نه حوصله و نه وقت این کار را داریم که یکی یکی یادمان بیاید چه نرم‌افزارهایی را قبلا نصب کرده‌ بودیم. برای این منظور ‌می‌توان با اجرای دستور dpkg –get-selections فهرست بسته‌هایی را که نصب ‌شده‌اند، بیابیم. نتیجه را در یک فایل متنی ذخیره کنیم و بعد از این که سیستم عامل نصب شد، دستور زیر را اجرا کنیم:

dpkg --set-selections » installed-packages.txt

newsQrCode
ارسال نظرات در انتظار بررسی: ۰ انتشار یافته: ۰

نیازمندی ها