4 ວິທີທີ່ຈະປິດ/ລັອກການປັບປຸງບາງຊຸດໂດຍໃຊ້ ຄຳ ສັ່ງ Yum
ຜູ້ຈັດການແພັກເກັດແມ່ນຊອບແວທີ່ຊ່ວຍໃຫ້ຜູ້ໃຊ້ໃນກໍລະນີຕິດຕັ້ງໂປແກຼມໂປຼແກຼມ ໃໝ່, ການຂຶ້ນລະບົບ, ຫລືການປັບປຸງຊອບແວສະເພາະແລະສິ່ງຂອງຕ່າງໆ. ໃນກໍລະນີຂອງລະບົບທີ່ອີງໃສ່ Linux ເຊິ່ງຊອບແວ ໜຶ່ງ ມີຄວາມເພິ່ງພາອາໄສທີ່ ຈຳ ເປັນຕ້ອງມີຢູ່ໃນລະບົບ ສຳ ລັບການຕິດຕັ້ງໂປແກຼມນັ້ນໃຫ້ສົມບູນ, ໂປແກຼມຈັດການຄ້າຍຄືຊອບແວດັ່ງກ່າວກາຍເປັນເຄື່ອງມືທີ່ ຈຳ ເປັນຫຼາຍໃນທຸກໆລະບົບ
ເຮືອແຕ່ລະລຸ້ນແຈກຈ່າຍ Linux ທີ່ມີຜູ້ຈັດການຊຸດ ທຳ ມະດາ ສຳ ລັບ ໜ້າ ທີ່ທີ່ໄດ້ກ່າວມາຂ້າງເທິງ, ແຕ່ວ່າທຸກສິ່ງທີ່ພົບເຫັນຫຼາຍທີ່ສຸດແມ່ນ: yum ໃນລະບົບ RHEL ແລະ Fedora (ບ່ອນທີ່ມັນ ກຳ ລັງຖືກທົດແທນໂດຍ DNF ຈາກ Fedora 22+ ເປັນຕົ້ນໄປ) ແລະ apt ຈາກ Debian.
ຖ້າທ່ານ ກຳ ລັງຊອກຫາເຄື່ອງມື APT ເພື່ອສະກັດກັ້ນຫຼືປິດການອັບເດດແພັກເກັດທີ່ແນ່ນອນ, ທ່ານຄວນອ່ານບົດຄວາມນີ້.
Dnf ຫຼື Danified yum ກຳ ລັງປ່ຽນແທນ yum ໃນລະບົບ Fedora ເຊິ່ງເປັນອີກ ໜຶ່ງ ລາຍການໃນລາຍການຂອງພວກເຮົາ. ຖ້າຄົ້ນຫາຢ່າງຖືກຕ້ອງ, ຜູ້ຈັດການແພັກເກັດເຫຼົ່ານີ້ສາມາດຖືກ ນຳ ໃຊ້ເພື່ອເຮັດວຽກຕໍ່ໄປນີ້:
<
ພວກເຮົາໄດ້ຂຽນບົດຄວາມລາຍລະອຽດທີ່ແຍກຕ່າງຫາກແລ້ວໃນແຕ່ລະຕົວຈັດການຊຸດທີ່ມີຕົວຢ່າງທີ່ເປັນປະໂຫຍດ, ທ່ານຄວນຈະອ່ານພວກມັນເພື່ອຄວບຄຸມແລະຈັດການການຄຸ້ມຄອງແພັກເກັດໃນການແຈກແຈງ Linux ຂອງທ່ານ.
ອ່ານອີກ:
<
ໃນບົດຂຽນ, ພວກເຮົາຈະເຫັນວິທີການລັອກ/ປິດການອັບເດດບາງຊຸດໂດຍໃຊ້ຜູ້ຈັດການຊຸດ Yum ໃນລະບົບ RHEL/CentOS ແລະ Fedora (ໃຊ້ໄດ້ຈົນເຖິງ Fedora 21, ຕໍ່ມາລຸ້ນ ໃໝ່ Fedora ລຸ້ນ ໃໝ່ ມີ dnf ເປັນຜູ້ຈັດການຊຸດປົກກະຕິ).
ປິດ/ລັອກການປັບປຸງຊຸດໂດຍໃຊ້ Yum
ຜູ້ປັບປຸງ ໝາ ເຫລືອງ, Modified (yum) ແມ່ນເຄື່ອງມືຄຸ້ມຄອງແພັກເກັດໃນການແຈກຢາຍທີ່ອີງໃສ່ RedHat ເຊັ່ນ CentOS ແລະ Fedora. ກົນລະຍຸດຕ່າງໆທີ່ໃຊ້ໃນການລັອກ/ປິດການ ນຳ ໃຊ້ຂໍ້ມູນການອັບເດດໂດຍໃຊ້ Yum ແມ່ນໄດ້ຖືກປຶກສາຫາລືຂ້າງລຸ່ມນີ້:
1. ເປີດແລະແກ້ໄຂເອກະສານ yum.conf
, ເຊິ່ງຕັ້ງຢູ່ໃນ /etc/yum.conf ຫຼືໃນ /etc/yum/yum.conf.
ເບິ່ງຄືວ່າຢູ່ລຸ່ມນີ້:
[main] cachedir=/var/cache/yum/$basearch/$releasever keepcache=0 debuglevel=2 logfile=/var/log/yum.log exactarch=1 obsoletes=1 gpgcheck=1 plugins=1 installonly_limit=5 bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum distroverpkg=centos-release ...
ໃນທີ່ນີ້, ເພື່ອຍົກເວັ້ນຊຸດທີ່ແນ່ນອນຈາກການຕິດຕັ້ງຫຼືການຂຶ້ນຊັ້ນຮຽນ, ທ່ານພຽງແຕ່ຕ້ອງການເພີ່ມຕົວແປທີ່ຍົກເວັ້ນພ້ອມກັບຊື່ຂອງຊຸດທີ່ທ່ານຕ້ອງການຍົກເວັ້ນ. ຍົກຕົວຢ່າງ, ຖ້າຂ້ອຍຕ້ອງການຍົກເວັ້ນທຸກໆຊຸດ python-3
ຈາກການປັບປຸງ, ຫຼັງຈາກນັ້ນຂ້ອຍພຽງແຕ່ຈະເພີ່ມໃສ່ເສັ້ນຕໍ່ໄປນີ້ yum.conf
:
exclude=python-3*
ສຳ ລັບຫລາຍກວ່າ ໜຶ່ງ ຊຸດທີ່ຈະຍົກເວັ້ນພຽງແຕ່ແຍກຊື່ຂອງພວກມັນອອກໄປຕາມຊ່ອງ.
exclude=httpd php
[main] cachedir=/var/cache/yum/$basearch/$releasever keepcache=0 debuglevel=2 logfile=/var/log/yum.log exactarch=1 obsoletes=1 gpgcheck=1 plugins=1 installonly_limit=5 bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum distroverpkg=centos-release exclude=python-3* [Exclude Single Package] exclude=httpd php [Exclude Multiple Packages] ...
ໝາຍ ເຫດ: ປະກອບມີຊຸດເຫຼົ່ານີ້, ບໍ່ສົນໃຈລາຍການທີ່ຢູ່ໃນ yum.conf
, ໃຊ້“ -disableexcludes” ແລະຕັ້ງຄ່າມັນໃສ່ທັງ ໝົດ | ຕົ້ນຕໍ, ບ່ອນທີ່ 'ຫລັກ' ແມ່ນຖືກໃສ່ໃນ yum.conf ແລະ 'repoid 'ແມ່ນຜູ້ທີ່ມີການຍົກເວັ້ນໄດ້ຖືກລະບຸໄວ້ໃນໄດເລກະທໍລີ repos.d, ດັ່ງທີ່ໄດ້ອະທິບາຍໃນພາຍຫລັງ.
ດຽວນີ້ລອງມາຕິດຕັ້ງຫລືປັບປຸງຊຸດທີ່ ກຳ ນົດໄວ້ແລະເບິ່ງວ່າ ຄຳ ສັ່ງ yum ຈະເຮັດໃຫ້ພວກເຂົາຕິດຕັ້ງຫລືປັບປຸງ ໃໝ່.
# yum install httpd php Loaded plugins: fastestmirror, langpacks, versionlock Loading mirror speeds from cached hostfile * base: mirror.nbrc.ac.in * epel: mirror.wanxp.id * extras: mirror.nbrc.ac.in * updates: mirror.nbrc.ac.in Nothing to do
# yum update httpd php Loaded plugins: fastestmirror, langpacks, versionlock Loading mirror speeds from cached hostfile * base: mirror.nbrc.ac.in * epel: mirror.wanxp.id * extras: mirror.nbrc.ac.in * updates: mirror.nbrc.ac.in No packages marked for update
2. ຂ້າງເທິງນີ້ແມ່ນການແກ້ໄຂແບບຖາວອນເພື່ອຍົກເວັ້ນການຈັດຕັ້ງຊຸດເວັ້ນເສຍແຕ່ວ່າຈະມີການດັດແກ້ເອກະສານ, ຊຸດນັ້ນຈະບໍ່ຖືກປັບປຸງ. ນີ້ແມ່ນທາງອອກຊົ່ວຄາວ ສຳ ລັບສິ່ງນີ້. ພຽງແຕ່ໃນເວລາທີ່ທ່ານໄປອັບເດດ, ໃຫ້ໃຊ້ -x
ຫຼັບໃນ ຄຳ ສັ່ງ yum ເພື່ອຍົກເວັ້ນຊຸດທີ່ທ່ານບໍ່ຕ້ອງການປັບປຸງ, ເຊັ່ນ:
# yum -x python-3 update
ຄຳ ສັ່ງຂ້າງເທິງນີ້ຈະປັບປຸງທຸກໆຊຸດທີ່ມີການອັບເດດໃຫ້ຢູ່, ຍົກເວັ້ນ python-3
ໃນລະບົບຂອງທ່ານ.
ໃນນີ້, ສຳ ລັບການຍົກເວັ້ນຫລາຍໆແພັກເກັດ, ໃຫ້ໃຊ້ -x
ຫຼາຍຄັ້ງ, ຫຼືແຍກຊື່ຊື່ແພັກເກດດ້ວຍ ,
ໃນປຸ່ມດຽວ.
# yum -x httpd -x php update OR # yum -x httpd,php update
3. ການໃຊ້ລະຫັດສະຫຼັບ <ລະຫັດ - ລວມເອົາລະຫັດ ເຮັດວຽກຄືກັນກັບ -x, ພຽງແຕ່ຕ້ອງການປ່ຽນແທນ -x ດ້ວຍ –exclude ແລະຜ່ານ ,
ແຍກລາຍຊື່ຊື່ແພັກເກດໃສ່ມັນ.
# yum --exclude httpd,php
4. ສຳ ລັບແພັກເກດໃດໆທີ່ຕິດຕັ້ງມາຈາກແຫຼ່ງພາຍນອກໂດຍຜ່ານການເພີ່ມບ່ອນເກັບມ້ຽນ, ມັນຍັງມີອີກວິທີ ໜຶ່ງ ທີ່ຈະຢຸດການຂື້ນຫ້ອງໃນອະນາຄົດ. ສິ່ງນີ້ສາມາດເຮັດໄດ້ໂດຍການແກ້ໄຂເອກະສານ .repo
ທີ່ຖືກສ້າງຂື້ນໃນ /etc/yum/repos.d/ ຫຼື /etc/yum.repos.d.
ຕື່ມຕົວເລືອກທີ່ຍົກເວັ້ນດ້ວຍຊື່ແພັກເກດໃນ repo. ເຊັ່ນ: ການຍົກເວັ້ນຊຸດໃດໆທີ່ເວົ້າວ່າເຫຼົ້າແວງຈາກ epo repo, ຕື່ມສາຍຕໍ່ໄປນີ້ໃນ epel.repo
ແຟ້ມ:
[epel] name=Extra Packages for Enterprise Linux 7 - $basearch #baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch failovermethod=priority enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 exclude=wine
ດຽວນີ້ລອງປັບປຸງຊຸດເຫຼົ້າແວງ, ທ່ານຈະໄດ້ຮັບຂໍ້ຜິດພາດດັ່ງຮູບຂ້າງລຸ່ມນີ້:
# yum update wine Loaded plugins: fastestmirror, langpacks, versionlock epel/x86_64/metalink | 5.6 kB 00:00 Loading mirror speeds from cached hostfile * base: mirror.nbrc.ac.in * epel: mirror.wanxp.id * extras: mirror.nbrc.ac.in * updates: mirror.nbrc.ac.in No Match for argument: wine No package wine available. No packages marked for update
5. ອີກວິທີ ໜຶ່ງ ໃນ yum ເພື່ອປົກປິດສະບັບຂອງແພັກເກັດໃດໆດັ່ງນັ້ນເຮັດໃຫ້ມັນບໍ່ສາມາດໃຊ້ໄດ້ ສຳ ລັບການເລື່ອນຊັ້ນ, ແມ່ນການໃຊ້ versionlock
ທາງເລືອກຂອງ yum, ແຕ່ເພື່ອເຮັດສິ່ງນີ້, ທ່ານຕ້ອງມີຊຸດ yum-plugin-versionlock. ຕິດຕັ້ງໃນລະບົບ.
# yum -y install yum-versionlock
ຍົກຕົວຢ່າງ, ເພື່ອລັອກລຸ້ນຂອງແພັກເກດກ່າວວ່າ httpd ຫາ 2.4.6 ເທົ່ານັ້ນ, ພຽງແຕ່ຂຽນ ຄຳ ສັ່ງຕໍ່ໄປນີ້ເປັນຮາກ.
# yum versionlock add httpd
Loaded plugins: fastestmirror, langpacks, versionlock Adding versionlock on: 0:httpd-2.4.6-40.el7.centos versionlock added: 1
ເພື່ອເບິ່ງການຫຸ້ມຫໍ່ທີ່ຖືກລັອກ, ໃຫ້ໃຊ້ ຄຳ ສັ່ງຕໍ່ໄປນີ້ຈະບອກລາຍຊື່ແພັກເກດທີ່ຖືກລັອກໄວ້ແລ້ວ.
# yum versionlock list httpd
Loaded plugins: fastestmirror, langpacks, versionlock 0:httpd-2.4.6-40.el7.centos.* versionlock list done
ສະຫຼຸບ
ນີ້ແມ່ນ ຄຳ ແນະ ນຳ ບາງຢ່າງທີ່ຈະຊ່ວຍທ່ານປິດການໃຊ້ງານ/ລັອກການປັບປຸງແພັກເກັດໂດຍໃຊ້ yum package manager. ຖ້າທ່ານມີເຄັດລັບອື່ນໆທີ່ຈະເຮັດສິ່ງດຽວກັນ, ທ່ານສາມາດໃຫ້ ຄຳ ເຫັນກັບພວກເຮົາໄດ້.