گاهی اوقات در مورد یک برنامه، نسخه خاصی از آن برنامه بسیار عالی عمل می‌کند، درحالیکه ممکن است بسته‌های به‌روز شده آن دارای مشکلاتی باشند؛ بنابراین شما نمی‌خواهید بسته را به آخرین نسخه به‌روز نمایید. در این آموزش مختصر، خواهید دید که چگونه می‌توان از نصب، ارتقا یا حذف خودکار بسته جلوگیری کرد.

 

اگرچه توسعه دهندگان، بسته‌ها را قبل از وارد کردن به مخزن ها، به طور كامل آزمایش می‌كنند؛ ولیکن گاهی اوقات بسته‌های ناپایدار و مشكل‌داری را ناآگاهانه منتشر می‌نمایند که در نهایت منجر به آسیب رسانی به سیستم‌ها می‌شود.

گاهی اوقات نیز تنها به دلیل صرفه جویی در پهنای باند خود ممکن است، نخواهید بسته‌ها را به‌روز کنید. به عنوان مثال، شما نمی‌خواهید بسته‌ای را که بیش از 500 مگابایت مصرف می‌نماید، به‌روز کنید.

 

این مطلب نیز ممکن است برای شما مفید باشد: تغییر نسخه بسته به نسخه پایین تر در اوبونتو

 

در هر حال، به هر دلیلی ممکن است نخواهید بسته‌ای در سیستم شما به‌روز شود. این آموزش، به شما در راه رسیدن به این هدف کمک می‌کند.

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

در ادامه، دو روش به منظور جلوگیری از نصب، به‌روز رسانی و یا حذف بسته‌ها در اوبونتو بیان شده است. بدین صورت که شما می‌توانید بسته را از طریق خط فرمان (با استفاده از apt-get) یا به روش گرافیکی (با استفاده از مدیر بسته Synaptic) قفل کنید که هر دو روش آسان است.

 

روش خط فرمان (استفاده از apt-get)

برای قفل کردن برنامه از نصب، به روزرسانی یا حذف خودکار می‌توان از دستور "apt-mark" استفاده کرد. این دستور گزینه‌های زیادی دارد. برای جزئیات بیشتر در مورد هر گزینه می‌توانید، صفحات man مربوطه را مطالعه نمایید.

$ man apt-mark

در ادامه، تنها در مورد دو گزینه hold (جلوگیری کردن) و unhold (اجازه دادن) بحث خواهیم کرد.

Hold: مسدود کردن نصب، به‌روز رسانی، یا حذف هر بسته

Unhold: اجازه دادن برای نصب، به‌روز رسانی یا حذف بسته

 

با استفاده از دستور زیر، از به‌روز رسانی، نصب یا حذف htop می‌توان جلوگیری کرد.

$ sudo apt-mark hold htop

خروجی اجرای دستور به صورت زیر خواهد بود:

htop set on hold.

با اجرای این دستور، بسته قفل شده حتی بعد از ارتقای سیستم شما، همان نسخه قبل باقی خواهد ماند. این ترفند می‌تواند، در نگه داشتن نسخه درایورهای گرافیک بسیار مفید باشد.

 

به منظور اجازه ارتقای بسته کافیست دستور زیر را اجرا نمایید:

$ sudo apt-mark unhold htop

در این صورت، خروجی دستور مشابه زیر خواهد بود:

Canceled hold on htop.

 

مهم: توجه داشته باشید که این روش، از حذف دستی بسته جلوگیری نمی‌کند. بنابراین، شما همچنان می‌توانید با استفاده از دستور زیر، بسته‌های قفل شده را حذف کنید.

apt-get remove <packagename>

این روش، تنها از نصب، به‌روز رسانی یا حذف برنامه در هنگام به‌روز کردن سیستم جلوگیری می‌نماید. نگه داشتن بسته در واقع به این معنی است که شما به مدیریت بسته می‌گویید، نسخه فعلی را در هر شرایطی حفظ کند؛ حتی اگر نسخه جدیدی نیز در دسترس باشد. این کار برای مواردی بسیار کاربردی است که بعد از یک به‌روز رسانی، نسخه جدیدتر برنامه‌ی در حال اجرا خراب می‌شود.

بنابراین، هر زمان که بخواهید سیستم را با استفاده از دستورات "sudo apt-get update" یا "sudo apt-get upgrade" به‌روز کنید، بسته‌های قفل شده همچنان همان نسخه باقی خواهند ماند.

 

روش گرافیکی (با استفاده از مدیریت بسته Synaptic)

اگر مدیریت بسته Synaptic بر روی سیستم شما نصب شده باشد، می‌توانید به صورت زیر، از نصب، به‌روز رسانی، یا حذف بسته جلوگیری کنید.

بدین منظور، در ابتدا مدیریت بسته Synaptic را از Unity dash یا Menu باز کرده و بسته مورد نظر خود را جستجو نمایید. سپس از نوار منو به Package رفته و hold را کلیک کنید.

 

اکنون، تا زمانی که بسته را در حالت hold نگه داشته‌اید، هنگام به‌روز رسانی سیستم، بسته به همان نسخه باقی خواهد ماند.

اگر مدیریت بسته Synaptic در سیستم شما نصب نشده است، می‌توانید آن را با استفاده از دستور زیر نصب نمایید:

$ sudo apt-get install synaptic

 

 

 

منبع:

ostechnix