چطور برنامهها و پکیجهای نصبشده در لینوکس را حذف کنیم؟
چطور برنامهها و پکیجهای نصبشده در لینوکس را حذف کنیم؟
خط فرمان یا ترمینال، جزئی جدانشدنی از توزیعهای لینوکسی بهشمار میآید، جایی که کوچکترین جزء سیستم لینوکسی را میتوان به وسیلهی آن کنترل کرد. یکی از کاربردهای بیشمار ترمینال در لینوکس، توانایی مدیریت کامل نصب و حذف پکیجها یا نرمافزارها در این سیستمها است.
هرچند رابطهای گرافیکی مانند Software Center در اوبونتو یا GNOME Software در فدورا مدیریت نرمافزارها را آسان میکنند، استفاده از ترمینال معمولاً سریعتر و کارآمدتر است؛ بهویژه زمانی که با چندین پکیج یا اسکریپت سروکار دارید. آگاهی از چگونگی حذف نرمافزار از طریق خط فرمان میتواند به شما در مدیریت منابع سیستم، آزاد کردن فضا یا حذف برنامههای غیرضروری کمک کند.
هر توزیع لینوکسی پکیجمنیجر خاص خود را دارد (ابزاری برای نصب، بهروزرسانی و حذف نرمافزارها) و هر یک نیازمند رویکرد و دستورات متفاوتی برای حذف نرمافزارها است. به عنوان مثال، اوبونتو (مبتنی بر دبیان) از پکیجمنیجر apt، فدورا از dnf و آرچ لینوکس از pacman استفاده میکند. بهدلیل همین تنوع در پکیجمنیجرها، در این آموزش به فرایند حذف نرمافزارها و پاکسازی سیستم در چند توزیع محبوب لینوکس میپردازیم.
قبل از شروع آموزش، به خاطر داشته باشید که اکثر دستورات برای حذف نرمافزار نیاز به دسترسی مدیریتی (root یا sudo) دارند. هنگامی که دستوری را با sudo اجرا میکنید، از شما خواسته میشود رمز عبور خود را وارد کنید (این رمز هنگام تایپ نمایش داده نمیشود). برخی از عملیاتها نیز ممکن است نیاز به تأیید داشته باشند؛ بنابراین همیشه اعلانها را با دقت بخوانید تا از تغییرات ناخواسته جلوگیری کنید.
پیش از توضیح روشهای حذف پکیج، باید بدانید از چه توزیع لینوکسی استفاده میکنید و چه پکیجهایی روی آن نصب هستند. با دانستن توزیع لینوکس، میتوان به پکیجمنیجر مورد استفادهی آن پی برد.
شناسایی توزیع لینوکس
برای اینکه بدانید از چه توزیع لینوکسی استفاده میکنید، از دستور زیر استفاده کنید:
این دستور در بیشتر توزیعها (بهجز موارد خاص از جمله آلپاین لینوکس) کار میکند و توزیع و نسخهی لینوکس شما را نشان میدهد.
فهرست کردن پکیجهای نصبشده
برای حذف نرمافزار، معمولاً مفید است بدانید چه نرمافزارهایی روی سیستم شما نصب شدهاند. هر توزیع لینوکس دستوری دارد که تمامی پکیجهای نصبشده را نشان میدهد:
توزیع | دستور |
---|---|
اوبونتو/دبیان | apt list –installed یا dpkg –list |
فدورا | dnf list installed |
ردهت/سنتاواس (RHEL/CentOS) | yum list installed |
آرچ لینوکس | pacman -Q |
سوزه/اوپنسوزه (SUSE/OpenSUSE) | zypper packages –installed-only |
آلپاین لینوکس | apk list -I |
این دستورات فهرستی از تمامی نرمافزارهای نصبشده روی سیستم شما ارائه میدهند. سپس میتوانید پکیج خاصی که قصد حذف آن را دارید، پیدا کنید.
پیشتر در مقالهای جداگانه به اینکه چطور برنامهها و پکیجهای نصبشده در لینوکس را مدیریت کنیم پرداختهایم.
حذف نرمافزار در لینوکس از طریق ترمینال
در ادامه به دستورات اصلی حذف پکیجها در توزیعهای معروف لینوکس و دستورات کاربردی برای پاکسازی بیشتر سیستم میپردازیم.
اوبونتو/دبیان
برای حذف یک پکیج در اوبونتو یا دبیان باید از پکیجمنیجر apt استفاده کنید. دستورات لازم برای این کار بهشرح زیر است:
- حذف پکیج اما نگهداشتن فایلهای پیکربندی (Configuration):
sudo apt remove
- حذف پکیج به همراه فایلهای پیکربندی:
sudo apt purge
- حذف وابستگیهای (Dependency-ها) بدون استفاده پس از حذف نرمافزار:
نکات اضافی برای اوبونتو/دبیان
۱. بررسی وابستگیها: برای دیدن وابستگیهای یک پکیج قبل از حذف، از دستور زیر استفاده کنید:
apt-cache depends
چنین کاری به شما کمک میکند تا از حذف اشتباهی پکیجهای مورد نیاز جلوگیری کنید.
۲. حذف چندین پکیج: برای حذف چندین پکیج بهطور همزمان از دستور زیر استفاده کنید:
sudo apt remove package_name1 package_name2 package_name3
۳. حذف نرمافزار نصبشده از سورس: اگر نرمافزاری را از سورس با استفاده از make و make install نصب کردهاید، به دایرکتوری سورس بروید و دستور زیر را اجرا کنید:
۴. پاکسازی کش پکیجها: برای پاکسازی کش پکیجها از دستور زیر استفاده کنید:
فدورا از پکیجمنیجر dnf برای مدیریت نرمافزارها استفاده میکند. فرایند حذف پکیجها با استفاده از dnf به شرح زیر است:
- حذف پکیج اما نگهداشتن وابستگیها و فایلهای پیکربندی:
sudo dnf remove
- حذف پکیج به همراه وابستگیها و فایلهای پیکربندی:
sudo dnf erase
- حذف وابستگیهای بدون استفاده پس از حذف نرمافزار:
نکات اضافی برای فدورا
۱. بررسی وابستگیها (Dependency-ها): برای دیدن وابستگیهای یک پکیج قبل از حذف، از دستور زیر استفاده کنید:
repoquery –requires
نکته: پیش از استفاده از این دستور، مطمئن شوید که پکیج yum-utils روی فدورای شما نصب است. پکیج مذکور را میتوانید با دستور sudo dnf install yum-utils نصب کنید.
۲. حذف چندین پکیج: برای حذف چندین پکیج بهطور همزمان از دستور زیر استفاده کنید:
sudo dnf remove package_name1 package_name2 package_name3
۳. حذف نرمافزار نصبشده از سورس: بهروش گفتهشده برای اوبونتو/دبیان رجوع کنید.
۴. پاکسازی کش پکیجها: برای پاکسازی کش پکیجها از دستور زیر استفاده کنید:
ردهت/سنتاواس
در RHEL/CentOS نسخههای ۷ و پایینتر، از yum بهعنوان پکیجمنیجر پیشفرض استفاده میشود. در نسخههای ۸ به بالا، dnf جایگزین yum شده است و بهدلیل مدیریت بهتر وابستگیها و سرعت بیشتر، کارایی بهتری دارد. برای حذف نرمافزار از طریق yum و dnf بهصورت زیر عمل کنید:
- برای حذف یک پکیج (در yum):
sudo yum remove
نکته: برخلاف dnf و apt، در yum دستوری برای حذف یک پکیج بههمراه فایلهای پیکربندی آن وجود ندارد و باید این کار بهصورت دستی انجام شود.
- برای حذف یک پکیج (در dnf): برای نسخههای سنتاواس یا ردهت ۸ به بالا از dnf بهجای yum استفاده کنید:
sudo dnf remove
نکات اضافی برای ردهت/سنتاواس
۱. بررسی وابستگیها: مانند فدورا، میتوانید از دستور زیر برای بررسی وابستگیهای یک پکیج پیش از حذف آن استفاده کنید (از نصب بودن yum-utils اطمینان حاصل کنید):
repoquery –requires
۲. حذف چندین پکیج: برای حذف چندین پکیج بهطور همزمان در yum و dnf بهترتیب از یکی از دستورات زیر استفاده کنید:
sudo yum remove package_name1 package_name2 package_name3
sudo dnf remove package_name1 package_name2 package_name3
۳. حذف نرمافزار نصبشده از سورس: بهروش گفتهشده برای اوبونتو/دبیان رجوع کنید.
۴. پاکسازی کش: برای پاکسازی کش پکیجها در yum و dnf بهترتیب از یکی از دستورات زیر استفاده کنید:
sudo yum clean all #RHEL/CentOS 7 and lower
sudo dnf clean all #RHEL/CentOS 8 and higher
در آرچ لینوکس، برای مدیریت نرمافزارها از پکیجمنیجر pacman استفاده میشود. برای حذف نرمافزار به این صورت عمل کنید:
- برای حذف یک پکیج و نگهداشتن وابستگیها و فایلهای پیکربندی آن:
sudo pacman -R
- برای حذف یک پکیج همراه با وابستگیها و فایلهای پیکربندی آن:
sudo pacman -Rns
نکات اضافی برای آرچ لینوکس
۱. بررسی وابستگیها: برای نمایش درخت وابستگیهای یک پکیج از دستور زیر استفاده کنید:
۲. حذف چندین پکیج: برای حذف چندین پکیج بهطور همزمان از دستور زیر استفاده کنید:
sudo pacman -R package1 package2 package3
۳. حذف نرمافزار نصبشده از سورس: بهروش گفتهشده برای اوبونتو/دبیان رجوع کنید.
۴. پاکسازی کش: برای پاکسازی کش پکیجها از دستور زیر استفاده کنید:
سوزه/اوپنسوزه
در SUSE یا OpenSUSE از پکیجمنیجر zypper برای مدیریت نرمافزارها استفاده میشود. برای حذف نرمافزار بهصورت زیر عمل کنید:
- برای حذف یک پکیج:
sudo zypper remove
- برای حذف وابستگیهای بدون استفاده همراه با پکیج:
sudo zypper remove –clean-deps
نکات اضافی برای سوزه/اوپنسوزه
۱. بررسی وابستگیها: برای دیدن وابستگیهای یک پکیج قبل از حذف، از دستور زیر استفاده کنید:
zypper info –requires
۲. حذف چندین پکیج: برای حذف چندین پکیج بهطور همزمان از دستور زیر استفاده کنید:
sudo zypper remove package1 package2 package3
۳. حذف نرمافزار نصبشده از سورس: بهروش گفتهشده برای اوبونتو/دبیان رجوع کنید.
۴. پاکسازی کش: برای پاکسازی کش پکیجها از دستور زیر استفاده کنید:
آلپاین لینوکس
در آلپاین لینوکس از پکیجمنیجر apk استفاده میشود. حذف نرمافزار بسیار ساده است:
- برای حذف یک پکیج به همراه وابستگیهای بدون استفادهی آن:
sudo apk del
نکات اضافی برای آلپاین لینوکس
۱. بهروزرسانی ایندکس قبل از حذف: پیش از حذف نرمافزار، بهتر است ایندکس پکیجها را بهروزرسانی کنید:
۲. حذف چندین پکیج: برای حذف چندین پکیج بهطور همزمان از دستور زیر استفاده کنید:
sudo apk del package1 package2 package3
اطمینان از حذف نرمافزار
پس از حذف یک پکیج، برای اطمینان از موفقیتآمیز بودن فرایند حذف، میتوانید دوباره آن پکیج را با استفاده از دستور لیست کردن مربوط به توزیع خود و پایپ کردن نتایج از طریق grep جستوجو کنید:
- اوبونتو/دبیان:
dpkg –list | grep
dnf list installed | grep
pacman -Q | grep
- ردهت/سنتاواس:
yum list installed | grep
- سوزه/اوپنسوزه:
zypper se –installed-only
- آلپاین لینوکس:
apk info | grep
اگر نتیجهای برای پکیج مورد نظر پیدا نشود، عملیات حذف موفق بوده است.
با استفاده از دستورات بیانشده میتوانید از طریق ترمینال، کنترل کامل نرمافزارهای لینوکسی را بهدست بگیرید. حین فرایند حذف نصب، همیشه وابستگیها و نام پکیجها را با دقت بررسی کنید تا از ناپایداری احتمالی سیستم جلوگیری شود.
اگر به توزیع مورد نظر شما در این مقاله اشاره نشده است یا روش بهتری برای مدیریت نرمافزارها در لینوکس سراغ دارید، لطفاً نظر خود را با ما به اشتراک بگذارید.