ວິທີການປິດການລັອກ/ລັອກຫລືການປັບປຸງຊຸດບັນຊີ ດຳ ໂດຍໃຊ້ເຄື່ອງມື Apt


APT ຫມາຍຄວາມວ່າເຄື່ອງມືການຫຸ້ມຫໍ່ແບບພິເສດແມ່ນຜູ້ຈັດການຊຸດອື່ນທີ່ພົບໃນລະບົບທີ່ໃຊ້ Linux. ໃນເບື້ອງຕົ້ນໄດ້ຖືກອອກແບບເປັນທາງ ໜ້າ ສຳ ລັບ dpkg ເພື່ອເຮັດວຽກກັບແພັກເກດ .deb, apt ໄດ້ປະສົບຜົນ ສຳ ເລັດໃນການສະແດງການເບິ່ງເຫັນຂອງລາວໃນ Mac OS, Open Solaris etc.

ຕ້ອງການຮຽນຮູ້ແລະຮຽນຮູ້ກ່ຽວກັບ ຄຳ ສັ່ງ APT ແລະ DPKG ໃນການຈັດການການຈັດການຊຸດ Debian, ຫຼັງຈາກນັ້ນໃຫ້ ນຳ ໃຊ້ບົດຂຽນທີ່ມີຄວາມເລິກເຊິ່ງຂອງພວກເຮົາເຊິ່ງຈະກວມເອົາຫລາຍກວ່າ 30+ ຕົວຢ່າງໃນທັງສອງເຄື່ອງມື.

ໃນບົດຂຽນນີ້ພວກເຮົາຈະເຫັນເຕັກນິກຕ່າງໆທີ່ຈະປິດ/ລັອກລັອກຈາກການຕິດຕັ້ງ, ຍົກລະດັບແລະເອົາອອກໃນ Debian Linux ແລະອະນຸພັນຂອງມັນເຊັ່ນ Ubuntu ແລະ Linux Mint.

1. ປິດ/ລັອກການຫຸ້ມຫໍ່ການນໍາໃຊ້ 'ເຄື່ອງຫມາຍ apt' ກັບທາງເລືອກຖື/ບໍ່ຮັກສາ

ເຄື່ອງ ໝາຍ apt-mark ຈະ ໝາຍ ຫຼືຍົກເລີກຊຸດຊອບແວທີ່ ກຳ ລັງຖືກຕິດຕັ້ງໂດຍອັດຕະໂນມັດແລະມັນຖືກ ນຳ ໃຊ້ກັບຕົວເລືອກຖືຫລືບໍ່ຢູ່.

<

  • ຖື - ຕົວເລືອກນີ້ໃຊ້ເພື່ອ ໝາຍ ແພັກເກດທີ່ຖືຢູ່ກັບມາເຊິ່ງຈະເປັນການປິດຊຸດຈາກການຕິດຕັ້ງ, ຍົກລະດັບຫຼືຍ້າຍອອກ.
  • ບໍ່ມີຕົວເລືອກ - ຕົວເລືອກນີ້ຖືກ ນຳ ໃຊ້ເພື່ອ ກຳ ຈັດຊຸດທີ່ຖືກ ກຳ ນົດໄວ້ກ່ອນ ໜ້າ ນີ້ແລະອະນຸຍາດໃຫ້ຕິດຕັ້ງ, ຍົກລະດັບແລະເອົາຊຸດອອກ.
  • ຍົກຕົວຢ່າງ, ສຳ ລັບການເຮັດແພັກເກັດກ່າວວ່າ apache2 ບໍ່ມີ ສຳ ລັບການຕິດຕັ້ງ, ຍົກລະດັບຫຼືຍົກເລີກການຕິດຕັ້ງ, ທ່ານສາມາດໃຊ້ ຄຳ ສັ່ງຕໍ່ໄປນີ້ຢູ່ປາຍທາງໂດຍມີສິດທິພິເສດຮາກ:

    # apt-mark hold apache2
    

    ເພື່ອເຮັດໃຫ້ແພັກເກດນີ້ມີໃຫ້ ສຳ ລັບການປັບປຸງ, ພຽງແຕ່ທົດແທນ 'ຖື' ດ້ວຍ 'ບໍ່ຍອມ'.

    # apt-mark unhold apache2
    

    ຂັດຂວາງການປັບປຸງຂໍ້ມູນການ ນຳ ໃຊ້ເອກະສານຕາມທີ່ໃຈມັກ APT

    ອີກວິທີ ໜຶ່ງ ທີ່ຈະສະກັດການປັບປຸງຂອງແພັກເກັດສະເພາະແມ່ນການເພີ່ມເຂົ້າຂອງມັນໃນ /etc/apt/ចំណង់ចំណូលចិត្ត ຫຼື /etc/apt/preferences.d/official-package-repositories.pref ແຟ້ມ. ເອກະສານນີ້ມີ ໜ້າ ທີ່ຮັບຜິດຊອບໃນການປັບປຸງຫຼືສະກັດກັ້ນການປັບປຸງບາງຊຸດຕາມບູລິມະສິດທີ່ລະບຸໄວ້ໂດຍຜູ້ໃຊ້.

    ເພື່ອສະກັດຊຸດດັ່ງກ່າວ, ທ່ານພຽງແຕ່ຕ້ອງການໃສ່ຊື່, ຄຸນສົມບັດເພີ່ມເຕີມ, ແລະສິ່ງທີ່ທ່ານຕ້ອງການທີ່ຈະເອົາໃຈໃສ່. ທີ່ນີ້, ບູລິມະສິດ <1 ຈະກີດຂວາງການຫຸ້ມຫໍ່.

    ສຳ ລັບການສະກັດຊຸດໃດ ໜຶ່ງ, ທ່ານພຽງແຕ່ໃສ່ລາຍລະອຽດຂອງມັນຢູ່ໃນແຟ້ມ /etc/apt/ចំណង់ចំណូលចិត្ត ເຊັ່ນນີ້:

    Package: <package-name> (Here, '*' means all packages)
    Pin: release *
    Pin-Priority: <less than 0>
    

    ຍົກຕົວຢ່າງເພື່ອສະກັດການປັບປຸງ ສຳ ລັບ apache2 package ເພີ່ມເຂົ້າດັ່ງທີ່ສະແດງ:

    Package: apache2
    Pin: release o=Ubuntu
    Pin-Priority: 1
    

    ພວກເຮົາສາມາດ ນຳ ໃຊ້ຕົວເລືອກອື່ນໆທີ່ມີການປ່ອຍ ຄຳ ສຳ ລັບການລະບຸຊຸດທີ່ພວກເຮົາ ກຳ ລັງສະ ໝັກ Pin Priority. ຄຳ ຫລັກເຫລົ່ານັ້ນແມ່ນ:

    <

  • a -> ຮວບຮວມ
  • c -> ສ່ວນປະກອບ
  • o -> ຕົ້ນ ກຳ ເນີດ
  • l -> ປ້າຍ
  • n -> ສະຖາປັດຕະຍະ ກຳ
  • ຄື:

    Pin: release o=Debian,a=Experimental
    

    ໝາຍ ຄວາມວ່າຈະດຶງຊຸດທີ່ລະບຸໄວ້ຈາກຮວບຮວມທົດລອງຂອງຊຸດ Debian.

    ບັນຊີ ດຳ ໃຫ້ມີການປັບປຸງຊຸດໂດຍໃຊ້ເອກະສານ APT Autoremove

    ອີກວິທີ ໜຶ່ງ ທີ່ຈະລົງບັນຊີຊຸດຈາກການຕິດຕັ້ງແມ່ນເພື່ອປັບປຸງການປ້ອນຂໍ້ມູນເຂົ້າໃນແຟ້ມເອກະສານ ໜຶ່ງ ທີ່ມີຢູ່ໃນລະບົບ /etc/apt/apt.conf.d/ ເຊິ່ງເປັນ 01autoremove.

    ແຟ້ມຕົວຢ່າງແມ່ນສະແດງຢູ່ດ້ານລຸ່ມ:

    APT
    {
      NeverAutoRemove
      {
            "^firmware-linux.*";
            "^linux-firmware$";
      };
    
      VersionedKernelPackages
      {
            # linux kernels
            "linux-image";
            "linux-headers";
            "linux-image-extra";
            "linux-signed-image";
            # kfreebsd kernels
            "kfreebsd-image";
            "kfreebsd-headers";
            # hurd kernels
            "gnumach-image";
            # (out-of-tree) modules
            ".*-modules";
            ".*-kernel";
            "linux-backports-modules-.*";
            # tools
            "linux-tools";
      };
    
      Never-MarkAuto-Sections
      {
            "metapackages";
            "restricted/metapackages";
            "universe/metapackages";
            "multiverse/metapackages";
            "oldlibs";
            "restricted/oldlibs";
            "universe/oldlibs";
            "multiverse/oldlibs";
      };
    };
    

    ດຽວນີ້, ເພື່ອລົງທະບຽນຊຸດໃດກໍ່ໄດ້, ພຽງແຕ່ຕ້ອງການໃສ່ຊື່ຂອງມັນຢູ່ໃນ Never-MarkAuto-Sections . ພຽງແຕ່ໃສ່ຊື່ຂອງຊຸດຢູ່ປາຍໃນ Never-MarkAuto-Section ແລະບັນທຶກແລະປິດແຟ້ມ. ສິ່ງນີ້ຈະກີດຂວາງການຄົ້ນຫາເພື່ອຊອກຫາຂໍ້ມູນເພີ່ມເຕີມຂອງຊຸດນັ້ນ.

    ຍົກຕົວຢ່າງ, ເພື່ອລົງບັນຊີຊຸດຈາກການປັບປຸງເພີ່ມຕື່ມການເຂົ້າດັ່ງທີ່ສະແດງ:

    Never-MarkAuto-Sections
      {
            "metapackages";
            "restricted/metapackages";
            "universe/metapackages";
            "multiverse/metapackages";
            "oldlibs";
            "restricted/oldlibs";
            "universe/oldlibs";
            "multiverse/oldlibs";
            "apache2*";
      };
    };
    

    ການເລືອກຊຸດຂອງລູກຄ້າ ສຳ ລັບການປັບປຸງ

    ທາງເລືອກອື່ນ ສຳ ລັບສິ່ງນີ້ແມ່ນການເລືອກສິ່ງທີ່ທ່ານຕ້ອງການປັບປຸງ. ເຄື່ອງມືທີ່ ເໝາະ ສົມຊ່ວຍໃຫ້ທ່ານມີສິດເສລີພາບໃນການເລືອກສິ່ງທີ່ທ່ານຕ້ອງການປັບປຸງ, ແຕ່ ສຳ ລັບສິ່ງນີ້ທ່ານຄວນມີຄວາມຮູ້ກ່ຽວກັບສິ່ງທີ່ທຸກຊຸດມີໄວ້ ສຳ ລັບການຮຽນຈົບ.

    ສຳ ລັບສິ່ງດັ່ງກ່າວ, ການປະຕິບັດຕາມ ຄຳ ສັ່ງທີ່ ກຳ ນົດໄວ້ສາມາດເປັນປະໂຫຍດ:

    ກ. ເພື່ອບອກສິ່ງທີ່ຫຸ້ມຫໍ່ມີການປັບປຸງທີ່ຍັງຄ້າງ.

    # apt-get -u -V upgrade
    

    ຂ. ການຕິດຕັ້ງພຽງແຕ່ຊຸດທີ່ເລືອກ.

    # apt-get --only-upgrade install <package-name>
    

    ສະຫຼຸບ

    ໃນບົດຂຽນນີ້, ພວກເຮົາໄດ້ອະທິບາຍສອງສາມວິທີທີ່ຈະປິດ/ປິດກັ້ນຫຼືການອັບເດດຊຸດບັນຊີ ດຳ ໂດຍໃຊ້ວິທີ APT. ຖ້າທ່ານຮູ້ວິທີອື່ນທີ່ຕ້ອງການ, ໃຫ້ພວກເຮົາຮູ້ຜ່ານ ຄຳ ເຫັນຫຼືຖ້າທ່ານ ກຳ ລັງຊອກຫາ ຄຳ ສັ່ງ yum ເພື່ອປິດ/ລັອກການປັບປຸງຊຸດ, ຫຼັງຈາກນັ້ນອ່ານບົດຄວາມຂ້າງລຸ່ມນີ້.