ການຄຸ້ມຄອງແພັກເກດ Linux ກັບ Yum, RPM, Apt, Dpkg, Aptitude ແລະ Zypper - Part 9


ໃນເດືອນສິງຫາທີ່ຜ່ານມາ, ມູນນິທິ Linux ໄດ້ປະກາດໃບຢັ້ງຢືນ LFCS ( Linux Foundation Certified Sysadmin ), ເປັນໂອກາດທີ່ສ່ອງແສງໃຫ້ຜູ້ບໍລິຫານລະບົບຢູ່ທົ່ວທຸກແຫ່ງສາມາດສະແດງອອກ, ຜ່ານການສອບເສັງໂດຍອີງໃສ່ຜົນງານ, ວ່າພວກເຂົາ ມີຄວາມສາມາດ ສຳ ເລັດການສະ ໜັບ ສະ ໜູນ ການ ດຳ ເນີນງານໂດຍລວມ ສຳ ລັບລະບົບ Linux. A Sysadmin ທີ່ໄດ້ຮັບການຢັ້ງຢືນຈາກມູນລະນິທິ Linux ມີຄວາມຊໍານານໃນການຮັບປະກັນລະບົບທີ່ມີປະສິດຕິພາບ, ການແກ້ໄຂບັນຫາແລະການຕິດຕາມກວດກາໃນລະດັບທໍາອິດ, ລວມທັງການຍົກລະດັບສຸດທ້າຍ, ໃນເວລາທີ່ຕ້ອງການ, ເຖິງທີມງານສະ ໜັບ ສະ ໜູນ ດ້ານວິສະວະກໍາ.

ເບິ່ງວີດີໂອຕໍ່ໄປນີ້ທີ່ອະທິບາຍກ່ຽວກັບໂປແກຼມການຢັ້ງຢືນມູນນິທິ Linux.

ບົດຂຽນນີ້ແມ່ນພາກທີ 9 ຂອງຊຸດ 10-tutorial ຍາວໆ, ມື້ນີ້ໃນບົດຄວາມນີ້ພວກເຮົາຈະແນະ ນຳ ທ່ານກ່ຽວກັບ Linux Package Management, ທີ່ ຈຳ ເປັນ ສຳ ລັບການສອບເສັງຢັ້ງຢືນ LFCS.

ການຄຸ້ມຄອງການຫຸ້ມຫໍ່

ໃນບາງ ຄຳ ສັບ, ການຈັດການຊຸດແມ່ນວິທີການຕິດຕັ້ງແລະ ບຳ ລຸງຮັກສາ (ເຊິ່ງລວມມີການອັບເດດແລະອາດຈະ ກຳ ຈັດ) ຊອບແວໃນລະບົບ.

ໃນຊ່ວງ ທຳ ອິດຂອງ Linux, ບັນດາໂປແກຼມຕ່າງໆໄດ້ຖືກແຈກຢາຍເປັນລະຫັດແຫຼ່ງເທົ່ານັ້ນ, ພ້ອມກັບ ໜ້າ ຜູ້ຊາຍທີ່ຕ້ອງການ, ເອກະສານການຕັ້ງຄ່າທີ່ ຈຳ ເປັນແລະອື່ນໆ. ໃນປະຈຸບັນ, ຜູ້ ຈຳ ໜ່າຍ Linux ສ່ວນຫຼາຍແມ່ນໃຊ້ໂດຍໂປຣແກຣມທີ່ສ້າງມາກ່ອນຫຼືຊຸດຂອງໂປແກຼມທີ່ເອີ້ນວ່າແພກເກດ, ເຊິ່ງຖືກ ນຳ ສະ ເໜີ ໃຫ້ຜູ້ໃຊ້ກຽມພ້ອມ ສຳ ລັບຕິດຕັ້ງໃນການ ຈຳ ໜ່າຍ ນັ້ນ. ເຖິງຢ່າງໃດກໍ່ຕາມ, ໜຶ່ງ ໃນສິ່ງມະຫັດສະຈັນຂອງ Linux ແມ່ນຍັງມີຄວາມເປັນໄປໄດ້ທີ່ຈະໄດ້ຮັບລະຫັດແຫຼ່ງຂອງໂປແກຼມທີ່ຈະໄດ້ຮັບການສຶກສາ, ປັບປຸງແລະລວບລວມ.

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

ເກືອບທັງ ໝົດ ຊອບແວທີ່ຕິດຕັ້ງຢູ່ໃນລະບົບ Linux ທີ່ທັນສະ ໄໝ ຈະຖືກພົບເຫັນໃນອິນເຕີເນັດ. ມັນສາມາດສະ ໜອງ ໂດຍຜູ້ ຈຳ ໜ່າຍ ໂດຍຜ່ານຫໍສະ ໝຸດ ກາງ (ເຊິ່ງສາມາດບັນຈຸຫລາຍພັນຊຸດ, ແຕ່ລະຊຸດໄດ້ຖືກສ້າງຂຶ້ນ, ທົດລອງແລະຮັກສາ ສຳ ລັບການແຈກຈ່າຍໂດຍສະເພາະ) ຫຼືສາມາດໃຊ້ໄດ້ໃນລະຫັດແຫຼ່ງທີ່ສາມາດດາວໂຫລດແລະຕິດຕັ້ງດ້ວຍຕົນເອງ .

ເນື່ອງຈາກວ່າຄອບຄົວແຈກຈ່າຍທີ່ແຕກຕ່າງກັນໃຊ້ລະບົບການຫຸ້ມຫໍ່ທີ່ແຕກຕ່າງກັນ (Debian: * .deb /CentOS: * .rpm /openSUSE: * .rpm ສ້າງໂດຍສະເພາະ openSUSE), ຊຸດທີ່ມີຈຸດປະສົງ ສຳ ລັບການແຈກຢາຍ ໜຶ່ງ ອັນຈະບໍ່ເຂົ້າກັນກັບການແຈກຈ່າຍອື່ນ. ເຖິງຢ່າງໃດກໍ່ຕາມ, ການແຈກຈ່າຍສ່ວນຫຼາຍມີແນວໂນ້ມທີ່ຈະຕົກຢູ່ໃນ ໜຶ່ງ ໃນສາມຄອບຄົວແຈກຢາຍທີ່ຖືກປົກຄຸມດ້ວຍໃບຢັ້ງຢືນ LFCS.

ເພື່ອປະຕິບັດວຽກງານການຄຸ້ມຄອງແພັກເກັດຢ່າງມີປະສິດທິຜົນ, ທ່ານຕ້ອງຮູ້ວ່າທ່ານຈະມີສອງປະໂຫຍດທີ່ມີຢູ່: ເຄື່ອງມື ລະດັບຕ່ ຳ (ເຊິ່ງຈັດການກັບການຕິດຕັ້ງ, ຍົກລະດັບແລະຕົວຈິງ). ການ ກຳ ຈັດແຟ້ມເອກະສານຊຸດ), ແລະເຄື່ອງມື ລະດັບສູງ (ເຊິ່ງຮັບຜິດຊອບຮັບປະກັນວ່າວຽກງານການແກ້ໄຂການເອື່ອຍອີງແລະການຄົ້ນຫາຂໍ້ມູນ metadata - "ຂໍ້ມູນກ່ຽວກັບຂໍ້ມູນ" - ຖືກປະຕິບັດ).

ໃຫ້ພວກເຮົາເບິ່ງການຫລອກລວງຂອງເຄື່ອງມືທີ່ມີລະດັບຕໍ່າແລະລະດັບສູງ.

dpkg ແມ່ນຜູ້ຈັດການຊຸດລະດັບຕ່ ຳ ສຳ ລັບລະບົບທີ່ອີງໃສ່ Debian. ມັນສາມາດຕິດຕັ້ງ, ກຳ ຈັດ, ສະ ໜອງ ຂໍ້ມູນກ່ຽວກັບແລະສ້າງແພັກເກັດ * .deb ແຕ່ມັນບໍ່ສາມາດດາວໂຫລດແລະຕິດຕັ້ງເອກະສານເພິ່ງພາອາໃສທີ່ສອດຄ້ອງກັນໂດຍອັດຕະໂນມັດ.

ອ່ານຕໍ່ : ຕົວຢ່າງ ຄຳ ສັ່ງ 15 dpkg

apt-get ແມ່ນຜູ້ຈັດການຊຸດທີ່ມີລະດັບສູງ ສຳ ລັບ Debian ແລະອະນຸພັນ, ແລະມີວິທີງ່າຍໆໃນການດຶງແລະຕິດຕັ້ງແພັກເກດລວມທັງຄວາມລະອຽດເພິ່ງພາອາໄສ, ຈາກຫລາຍແຫລ່ງໂດຍໃຊ້ເສັ້ນ ຄຳ ສັ່ງ. ບໍ່ຄືກັບ dpkg, apt-get ບໍ່ໄດ້ເຮັດວຽກໂດຍກົງກັບໄຟລ໌ * .deb, ແຕ່ມີຊື່ທີ່ ເໝາະ ສົມຂອງແພັກເກດ.

ອ່ານຕໍ່ : ຕົວຢ່າງ ຄຳ ສັ່ງ 25 apt-get

ຄວາມ ເໝາະ ສົມ ແມ່ນຜູ້ຈັດການຊຸດລະດັບສູງອີກອັນ ໜຶ່ງ ສຳ ລັບລະບົບທີ່ອີງໃສ່ Debian, ແລະສາມາດ ນຳ ໃຊ້ໃນການປະຕິບັດວຽກງານການຄຸ້ມຄອງ (ຕິດຕັ້ງ, ຍົກລະດັບ, ແລະຖອດຊຸດຕ່າງໆ, ຍັງຈັດການກັບຄວາມລະອຽດເພິ່ງພາອາໄສໂດຍອັດຕະໂນມັດ) ດ້ວຍວິທີທີ່ໄວແລະງ່າຍດາຍ . ມັນສະຫນອງການເຮັດວຽກດຽວກັນກັບ apt-get ແລະຫນ້າທີ່ເພີ່ມເຕີມ, ເຊັ່ນການສະເຫນີການເຂົ້າເຖິງຫລາຍຮຸ່ນຂອງຊຸດ.

rpm ແມ່ນລະບົບການຄຸ້ມຄອງແພັກເກັດທີ່ໃຊ້ໂດຍ Linux Standard Base (LSB) -compliant ແຈກຢາຍ ສຳ ລັບການຈັດການລະດັບຕ່ ຳ. ຄືກັນກັບ dpkg, ມັນສາມາດສອບຖາມ, ຕິດຕັ້ງ, ກວດສອບ, ຍົກລະດັບ, ແລະຖອດຊຸດຕ່າງໆແລະຖືກ ນຳ ໃຊ້ເລື້ອຍໆໂດຍການແຈກຢາຍທີ່ອີງໃສ່ Fedora ເຊັ່ນ: RHEL ແລະ CentOS.

ອ່ານຕໍ່ : 20 ຕົວຢ່າງ ຄຳ ສັ່ງ

yum ເພີ່ມການເຮັດວຽກຂອງການປັບປຸງອັດຕະໂນມັດແລະການຈັດການຊຸດດ້ວຍການຄຸ້ມຄອງເພິ່ງພາອາໄສກັບລະບົບທີ່ອີງໃສ່ RPM. ໃນຖານະເປັນເຄື່ອງມືທີ່ມີລະດັບສູງ, ເຊັ່ນ: apt-get ຫຼື aptitude, yum ເຮັດວຽກກັບຫໍສະມຸດ.

ອ່ານຕໍ່ : ຕົວຢ່າງ ຄຳ ສັ່ງ 20 ປີ

ການ ນຳ ໃຊ້ທົ່ວໄປຂອງເຄື່ອງມືລະດັບຕໍ່າ

ວຽກທີ່ເຮັດເລື້ອຍໆທີ່ທ່ານຈະເຮັດກັບເຄື່ອງມືລະດັບຕໍ່າມີດັ່ງນີ້:

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

# dpkg -i file.deb 		[Debian and derivative]
# rpm -i file.rpm 		[CentOS / openSUSE]

ໝາຍ ເຫດ: ຢ່າພະຍາຍາມຕິດຕັ້ງຢູ່ໃນເອກະສານ CentOS * .rpm ທີ່ຖືກສ້າງຂຶ້ນ ສຳ ລັບ openSUSE, ຫຼືໃນທາງກັບກັນ!

ອີກເທື່ອ ໜຶ່ງ, ທ່ານຈະຍົກລະດັບຊຸດທີ່ຕິດຕັ້ງດ້ວຍຕົນເອງເທົ່ານັ້ນເມື່ອມັນບໍ່ມີຢູ່ໃນຫໍສະ ໝຸດ ກາງ.

# dpkg -i file.deb 		[Debian and derivative]
# rpm -U file.rpm 		[CentOS / openSUSE]

ເມື່ອທ່ານເອົາມືໃສ່ລະບົບທີ່ເຮັດວຽກຢູ່ແລ້ວ, ທ່ານຕ້ອງການຮູ້ວ່າມີການຕິດຕັ້ງຫຍັງແດ່.

# dpkg -l 		[Debian and derivative]
# rpm -qa 		[CentOS / openSUSE]

ຖ້າທ່ານຢາກຮູ້ວ່າຊຸດສະເພາະຖືກຕິດຕັ້ງແລ້ວ, ທ່ານສາມາດສົ່ງຜົນຜະລິດຂອງ ຄຳ ສັ່ງຂ້າງເທິງນີ້ໃຫ້ grep, ດັ່ງທີ່ໄດ້ອະທິບາຍໄວ້ໃນການ ໝູນ ໃຊ້ແຟ້ມເອກະສານໃນ Linux - ສ່ວນທີ 1 ຂອງຊຸດນີ້. ສົມມຸດວ່າພວກເຮົາ ຈຳ ເປັນຕ້ອງກວດສອບວ່າແພັກເກດ mysql-common ຖືກຕິດຕັ້ງຢູ່ໃນລະບົບ Ubuntu ຫລືບໍ່.

# dpkg -l | grep mysql-common

ອີກວິທີ ໜຶ່ງ ໃນການ ກຳ ນົດວ່າແພັກເກັດຖືກຕິດຕັ້ງ.

# dpkg --status package_name 		[Debian and derivative]
# rpm -q package_name 			[CentOS / openSUSE]

ຕົວຢ່າງ, ໃຫ້ກວດເບິ່ງວ່າຊຸດ sysdig ຖືກຕິດຕັ້ງຢູ່ໃນລະບົບຂອງພວກເຮົາຫຼືບໍ່.

# rpm -qa | grep sysdig
# dpkg --search file_name
# rpm -qf file_name

ຕົວຢ່າງ, ຊຸດໃດທີ່ຕິດຕັ້ງ pw_dict.hwm ?

# rpm -qf /usr/share/cracklib/pw_dict.hwm

ການ ນຳ ໃຊ້ທົ່ວໄປຂອງເຄື່ອງມືລະດັບສູງ

ວຽກທີ່ເຮັດເລື້ອຍໆທີ່ທ່ານຈະເຮັດກັບເຄື່ອງມືລະດັບສູງມີດັ່ງນີ້.

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

# aptitude update && aptitude search package_name 

ໃນການຄົ້ນຫາຕົວເລືອກທັງ ໝົດ, ຍຳ ຈະຄົ້ນຫາ package_name ບໍ່ພຽງແຕ່ຢູ່ໃນຊື່ແພັກເກັດເທົ່ານັ້ນ, ແຕ່ຍັງຢູ່ໃນ ຄຳ ອະທິບາຍຂອງແພັກເກັດ.

# yum search package_name
# yum search all package_name
# yum whatprovides “*/package_name”

ສົມມຸດວ່າພວກເຮົາຕ້ອງການໄຟລ໌ທີ່ມີຊື່ວ່າ sysdig . ຢາກຮູ້ວ່າແພັກເກດພວກເຮົາຈະຕ້ອງຕິດຕັ້ງ, ໃຫ້ເຮັດວຽກ ນຳ.

# yum whatprovides “*/sysdig”

whatprovides ບອກ yum ໃຫ້ຄົ້ນຫາຊຸດທີ່ຈະໃຫ້ເອກະສານທີ່ກົງກັບ ຄຳ ເວົ້າປົກກະຕິຂ້າງເທິງ.

# zypper refresh && zypper search package_name		[On openSUSE]

ໃນຂະນະທີ່ຕິດຕັ້ງຊຸດ, ທ່ານອາດຈະໄດ້ຮັບການກະຕຸ້ນໃຫ້ຢືນຢັນການຕິດຕັ້ງຫຼັງຈາກຜູ້ຈັດການຊຸດໄດ້ແກ້ໄຂທຸກຄວາມເພິ່ງພາອາໄສ. ໃຫ້ສັງເກດວ່າການເຮັດວຽກການອັບເດດຫລືການປັບປຸງ ໃໝ່ (ອີງຕາມຜູ້ຈັດການຊຸດທີ່ ກຳ ລັງໃຊ້ຢູ່) ແມ່ນບໍ່ ຈຳ ເປັນຢ່າງເຂັ້ມງວດ, ແຕ່ການຮັກສາຊຸດທີ່ຕິດຕັ້ງໄວ້ໃຫ້ຖືກຕ້ອງແມ່ນການປະຕິບັດ sysadmin ທີ່ດີ ສຳ ລັບເຫດຜົນດ້ານຄວາມປອດໄພແລະການເພິ່ງພາອາໄສ.

# aptitude update && aptitude install package_name 		[Debian and derivatives]
# yum update && yum install package_name 			[CentOS]
# zypper refresh && zypper install package_name 		[openSUSE]

ທາງເລືອກ ເອົາ ຈະຖອນການຕິດຕັ້ງແພກເກັດແຕ່ປ່ອຍໃຫ້ໄຟລ໌ການຕັ້ງຄ່າຍັງຄົງຢູ່, ໃນຂະນະທີ່ການ ກຳ ຈັດຈະລົບລ້າງທຸກຮ່ອງຮອຍຂອງໂປຣແກຣມອອກຈາກລະບົບຂອງທ່ານ.
# ຄວາມ ເໝາະ ສົມເອົາອອກ/purge package_name
# yum ລົບລ້າງ package_name

---Notice the minus sign in front of the package that will be uninstalled, openSUSE ---

# zypper remove -package_name 

ສ່ວນໃຫຍ່ (ຖ້າບໍ່ແມ່ນທັງ ໝົດ) ຜູ້ຈັດການແພັກເກັດຈະກະຕຸ້ນທ່ານ, ໂດຍຄ່າເລີ່ມຕົ້ນ, ຖ້າທ່ານແນ່ໃຈກ່ຽວກັບການ ດຳ ເນີນການຖອນການຕິດຕັ້ງກ່ອນທີ່ຈະປະຕິບັດຕົວຈິງ. ສະນັ້ນອ່ານຂໍ້ຄວາມໃນ ໜ້າ ຈໍຢ່າງລະມັດລະວັງເພື່ອຫລີກລ້ຽງການເກີດບັນຫາທີ່ບໍ່ ຈຳ ເປັນ!

ຄຳ ສັ່ງຕໍ່ໄປນີ້ຈະສະແດງຂໍ້ມູນກ່ຽວກັບຊຸດ ວັນເກີດ .

# aptitude show birthday 
# yum info birthday
# zypper info birthday

ບົດສະຫຼຸບ

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