4 روش برای مسدود کردن بسته و بروز رسانی هسته در راکی لینوکس
29 ژانویه 2023
خواندن 2 دقیقه
مهشاد قره پاشا

4 روش برای مسدود کردن بسته و بروز رسانی هسته در راکی لینوکس

5/5 - (2 امتیاز)

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

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

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

آذرسیس عرضه کننده انواع سرور مجازی لینوکس ، سرور مجازی ویندوز و انواع سرور اختصاصی در پلن های مختلف

آموزش 4 روش برای مسدود کردن بسته و بروز رسانی هسته در راکی لینوکس

حال که تا حدودی با مدیر بسته یا همان package manager که یکی از ابزار های مفید برای کاربران لینوکس به شمار می رود، آشنا شدید. در ادامه این آموزش قصد داریم 4 روش برای مسدود کردن نسخه خاصی از بسته و بروز رسانی هسته در سیستم عامل راکی لینوکس را بررسی کنیم.

مسدود کردن بسته و بروز رسانی هسته در راکی لینوکس

پیش نیازهای مورد نیاز

  • سیستم عامل راکی لینوکس
  • کاربر non-root با امتیازات Sudo

روش اول: غیر فعال کردن نصب و بروز رسانی بسته به طور دائمی

شما می توانید برای غیر فعال کردن دائمی فرآیند نصب و بروز رسانی بسته ها، از فایل etc/yum.conf/ یا etc/dnf/dnf.conf/ استفاده کنید:

[Main]
gpgcheck=1
installonly_limit=3
clean_requirements_on_remove=True
best=True
skip_if_unavailable=False

در این مرحله، اگر قصد دارید بسته خاصی مانند Nginx را از غیر فعال کردن دائمی نصب، بروز رسانی یا حذف بسته در امان نگه دارید، دستور زیر را به انتهای فایل مورد نظر اضافه کنید:

exclude=nginx

اگر می خواهید تمام بسته های Nginx را غیر فعال یا متوقف کنید، کاراکتر * را به انتهای دستور بالا اعمال کنید:

exclude=nginx*

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

exclude=nginx php

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

حال، شما با اجرای دستور زیر می توانید بسته مسدود شده Nginx را مجددا نصب کنید:

sudo dnf install nginx
or
sudo yum install nginx

علاوه بر این، شما با اجرای دستور زیر امکان مسدود کردن بسته ها از طریق معماری آنها را خواهید داشت. برای مثال اگر قصد دارید بسته های 32 بیتی را مسدود کنید، می توانید خط زیر را در فایل  etc/yum.conf/ وارد کنید: 

exclude=*.i?86 *i686

نکته دیگری که باید به آن توجه داشته باشید این است، اگر بسته مورد نظر در طول فرآیند ارتقای سیستم یا با اجرای دستور sudo yum upgrade، به طور خودکار ارتقا نمی یابد، شما در این مرحله می توانید بسته را به صورت دستی حذف کنید. اجرای <sudo yum remove <package موجب ارتقای بسته های باقی مانده می شود.

انجام دادن این روش فقط می تواند تغییر خودکار بسته ها را قفل کند. نگه داشتن بسته ها در حالت انتظار، موجب ثابت نگه داشتن آنها در نسخه فعلی می شود.

مسدود کردن بروز رسانی هسته

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

sudo dmf --exclude=kernel* update
or
sudo yum --exclude=kernel* update

شما می توانید از *kernel به عنوان نام بسته در تمام روش های دیگر، برای مسدود کردن بروز رسانی هسته استفاده کنید.

روش دوم: غیر فعال کردن نصب و بروز رسانی بسته به طور موقت

این روش شامل استفاده از دستور yum به همراه یک پارامتر اضافی می شود.

در زمان بروز رسانی هر بسته ای، از سوئیچ -x به همراه دستور خود استفاده کنید. با انجام این کار، نصب بسته های خاصی را که نمی خواهید ارتقا دهید، مسدود می سازد:

sudo dnf -x nginx update
or
sudo yum -x nginx update

با اجرای دستور بالا، تمام بسته ها به جز بسته Nginx روی سیستم شما ارتقا می یابند. توجه کنید برای بروز رسانی چندین بسته با یک دستور، چندین بار از سوئیچ x- استفاده کنید:

 sudo dnf -x nginx -x php update
or
 sudo yum -x nginx -x php update

شما می توانید از سوئیچ exclude– به جای سوئیچ -x در همین روش، استفاده کنید.

sudo dnf --exclude nginx, php
or
sudo yum --exclude nginx, php

روش سوم : استفاده از مخزن ( یا استفاده از فایل های repo )

اگر بسته ای را از طریق مخزن آن در سیستم خود نصب کرده اید، روشی برای جلوگیری از ارتقا و بروز شدن آن وجود دارد. این روش از طریق ویرایش فایل repo انجام می شود که شما می توانید این فایل را در دایرکتوری etc/yum.repos.d/ پیدا کنید.

استفاده از فایل های repo

حال فرض کنید مخزن Epel به سیستم شما اضافه شده است اما نمی خواهید بسته golang از مخزن Epel در سیستم نصب شود. پس می توانید با افزودن خط exclude=certbot در فایل etc/yum.repos.d/epel.repo/ این بسته را مسدود کنید.

[epel]
name=Extra Packages for Enterprise Linux 8 - $basearch
 It is much more secure to use the metalink, but if you wish to use a local mirror
 place its address here.
baseurl=https://download.example/pub/epel/8/Everything/$basearch
metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-8&arch=$basearch&infra=$infra&content=$contentdir
enabled=1
gpgcheck=1
countme=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-8
exclude=certbot
...

در این قسمت، بسته certbot را که از طریق مخزن Epel در دسترس است، با اجرای دستور زیر نصب کنید:

sudo dnf install certbot
or
sudo yum install certbot

روش چهارم:مسدود کردن بروز رسانی کل مخزن

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

ابتدا، تمام مخازن سیستم خود را با اجرای دستور زیر بررسی کنید:

dnf repolist
or
yum repolist

برای مسدود کردن بروزرسانی مخزن Epel، از دستور زیر استفاده کنید:

sudo dnf update --disablerepo=epel
or
sudo yum update --disablerepo=epel

اکنون، می توانید چندین مخزن را با جدا کردن شناسه آنها به وسیله ویرگول غیرفعال کنید. شما می توانید این کار را با استفاده از دستور زیر انجام دهید:

sudo dnf update --disablerepo=epel, extras
or
sudo yum update --disablerepo=epel, extras

مسدود کردن مخازن با استفاده از فایل Repo

یک روش دیگر برای مسدود کردن یک مخزن، ویرایش فایل Repo است. حال، فایل epel.repo را با استفاده از دستور زیر برای ویرایش باز کنید:

 sudo nano /etc/yum.repos.d/epel.repo

با اجرای دستور زیر، مقدار متغیر فعال شده را از 1 به 0 تغییر دهید.

[epel]
name=Extra Packages for Enterprise Linux 8 - $basearch
 It is much more secure to use the metalink, but if you wish to use a local mirror
 place its address here.
baseurl=https://download.example/pub/epel/8/Everything/$basearch
metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-8&arch=$basearch&infra=$infra&content=$contentdir
enabled=0
gpgcheck=1
countme=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-8
...

حال، فایل را با زدن کلیدهای Ctrl + X و سپس با وارد کردن Y، ذخیره کنید.

شما می توانید با استفاده از دستور زیر، بسته certbot را که در مخزن epel قابل دسترس است، نصب کنید:

sudo dnf install certbot
or
sudo yum install certbot

نتیجه گیری

اگر این سوال برای شما ایجاد شده که چه روش هایی برای مسدود کردن بسته و بروز رسانی هسته در سیستم عامل راکی لینوکس وجود دارد؟ پس این آموزش می تواند برای شما مفید باشد. همان طور که در ابتدا نیز اشاره شد، مدیر بسته یکی از ابزار های مفید برای کاربران لینوکس به شمار می رود.

اگر شما نیز به هنگام بروز رسانی بسته، متوجه وجود باگ در نسخه نصبی شده اید، می توانید برای رفع این باگ از 4 روش توضیح داده شده در این آموزش کمک بگیرید. در صورت داشتن سوال، از بخش نظرات با ما در ارتباط باشید. ممنون که تا آخر این آموزش همراه ما بودید.

سوالات متداول

آیا بروزرسانی راکی لینوکس حیاتی است؟

بروزرسانی راکی لینوکس باعث امنیت بیشتر سرو مجازی شما می شود.آپدیت های راکی لینوکس به صورت دوره ای عرضه میگردد .در آپدیت های راکی لینوکس شما تمامی پچ های امنیتی ، بروزرسانی های جدید و امکانات جدیدی را دریافت می کنید.

روش های مسدودکردن بسته و بروزرسانی کالی لینوکس

روش اول: غیر فعال کردن نصب و بروز رسانی بسته به طور دائمی
روش دوم: غیر فعال کردن نصب و بروز رسانی بسته به طور موقت
روش سوم: استفاده از مخزن ( یا استفاده از فایل های repo )
روش چهارم:مسدود کردن بروز رسانی کل مخزن

لینک کوتاه مقاله
https://azarsys.com/?p=13202


نویسنده مقاله
مقالات مرتبط
دیدگاه بگذارید