23 ຕົວຢ່າງ ຄຳ ສັ່ງກ່ຽວກັບ PKG ທີ່ມີປະໂຫຍດໃນການຄຸ້ມຄອງການຫຸ້ມຫໍ່ໃນ FreeBSD


ໃນບົດແນະ ນຳ ນີ້ພວກເຮົາຈະອະທິບາຍວິທີການຈັດການກັບການ ນຳ ໃຊ້ແພັກເກັດໄບນາລີທີ່ຖືກລວບລວມໄວ້ລ່ວງ ໜ້າ ໃນ FreeBSD ໂດຍການຊ່ວຍເຫຼືອຂອງເຄື່ອງມືຄຸ້ມຄອງຊຸດທີ່ມີຊື່ວ່າ PKG ຜ່ານບ່ອນເກັບຂໍ້ມູນຊອບແວ Ports.

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

<

  • ການຕິດຕັ້ງ FreeBSD 11.x
  • ຄົ້ນຫາແລະຊອກຫາໃບສະ ໝັກ ຢູ່ Ports Tree ໃນ FreeBSD

    1. ຫໍສະ ໝຸດ Ports ແບ່ງອອກເປັນຫລາຍປະເພດໃນ FreeBSD, ແຕ່ລະປະເພດຈະຖືກສະແດງໂດຍໄດເລກະທໍລີໃນ/usr/ports/path system file.

    ບັນຊີລາຍຊື່ງ່າຍໆຂອງໄດເລກະທໍລີ/usr/ພອດ/ຈະສະແດງທຸກປະເພດທີ່ມີຢູ່ດັ່ງທີ່ສະແດງຢູ່ໃນ ໜ້າ ຈໍຂ້າງລຸ່ມນີ້.

    # ls /usr/ports/
    

    2. ເພື່ອເບິ່ງ ຄຳ ຮ້ອງສະ ໝັກ ທີ່ມີຢູ່ໃນ ໝວດ ໝູ່, ອອກ ຄຳ ສັ່ງ ls ຕໍ່ກັບໄດເລກະທໍລີປະເພດ.

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

    # ls /usr/ports/databases/ | less
    

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

    # ls /usr/ports/databases/ | wc -l
    

    ດັ່ງທີ່ທ່ານສາມາດເຫັນໃນພາບ ໜ້າ ຈໍຂ້າງເທິງ, ໝວດ ຖານຂໍ້ມູນ FreeBSD ມີຫຼາຍກວ່າ 1000 ແພັກເກັດທີ່ຖືກປະຕິບັດກ່ອນ.

    4. ເພື່ອເບິ່ງວ່າມີການ ນຳ ໃຊ້ສະເພາະໃນ ໝວດ ໝູ່, ອີກເທື່ອ ໜຶ່ງ, ໃຫ້ໃຊ້ປະໂຫຍດຂອງ grep ເພື່ອຄົ້ນຫາໂປແກຼມທີ່ ກຳ ຫນົດເອງ.

    ໃນຕົວຢ່າງຂ້າງລຸ່ມນີ້ຈະຄົ້ນຫາຖານຂໍ້ມູນ mongodb ທີ່ມີຢູ່ຫຸ້ມຫໍ່ແລະຫຸ້ມຫໍ່ຄວາມປອດໄພຂອງ antam.

    # ls /usr/ports/databases/ | grep mongodb
    # ls /usr/ports/security/ | grep clam
    

    ດັ່ງທີ່ທ່ານສາມາດເຫັນໄດ້, ຫລາຍສະບັບຂອງການສະ ໝັກ ສາມາດໃຊ້ໄດ້ໃນ FreeBSD Ports.

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

    ສົມມຸດວ່າທ່ານຕ້ອງການເບິ່ງໃນປະເພດໃດທີ່ທ່ານສາມາດຊອກຫາຊຸດຊອບແວ ສຳ ລັບຜົນປະໂຫຍດ mailx, ທ່ານສາມາດ ດຳ ເນີນການ ຄຳ ສັ່ງຕໍ່ໄປນີ້.

    # ls /usr/ports/*/*mailx
    

    6. ອີກວິທີ ໜຶ່ງ ສຳ ລັບການຄົ້ນຫາຊຸດຊອບແວແລະ ໝວດ ໝູ່ ທີ່ແພັກເກັດເປັນຂອງ, ແມ່ນໂດຍໃຊ້ ຄຳ ສັ່ງຊອກຫາທີ່ຢູ່ກັບຮູບແບບສາຍ.

    ກ່ອນທີ່ຈະປະຕິບັດສາຍຄົ້ນຫາ, ທ່ານຄວນປັບປຸງຖານຂໍ້ມູນສະຖານທີ່ດ້ວຍ ຄຳ ສັ່ງຕໍ່ໄປນີ້.

    # /usr/libexec/locate.updatedb
    

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

    # locate mailx
    

    ດັ່ງທີ່ທ່ານສາມາດເຫັນໄດ້, ມີສອງແພັກເກັດທີ່ມີໄວ້ ສຳ ລັບປະໂຫຍດ mailx, ເຊິ່ງທັງສອງສະຖານທີ່ຕັ້ງຢູ່ໃນ/usr/ports/mail/category.

    8. ຄ້າຍຄືກັບການຊອກຫາຊຸດທີ່ມີ ຄຳ ສັ່ງ whereis, ເພື່ອເບິ່ງປະເພດການ ນຳ ໃຊ້.

    # whereis mailx
    

    ຊອກຫາຊອບແວຜ່ານ PKG Command ໃນ FreeBSD

    9. ວິທີທີ່ງ່າຍທີ່ສຸດໃນການຄົ້ນຫາແລະຊອກຫາ ຄຳ ຮ້ອງສະ ໝັກ ໃນ FreeBSD ແມ່ນຜ່ານເສັ້ນ ຄຳ ສັ່ງການຈັດການຊຸດ PKG. ໃນການຄົ້ນຫາໂປແກຼມໄບນາລີ ສຳ ລັບໂປແກຼມ, ສຳ ລັບໂປແກຼມ postfix, ໃຫ້ອອກ ຄຳ ສັ່ງລຸ່ມນີ້.

    # pkg search package_name
    

    10. ໃນກໍລະນີທີ່ທ່ານຕ້ອງການເບິ່ງວ່າ ໝວດ ໃດເປັນຂອງປະເພດນັ້ນ, ໃຫ້ ດຳ ເນີນການ ຄຳ ສັ່ງດຽວກັນກັບຂ້າງເທິງກັບທຸງ -o , ດັ່ງທີ່ສະແດງຢູ່ໃນຕົວຢ່າງຂ້າງລຸ່ມນີ້.

    # pkg search -o package_name
    

    ຈັດການ Software ໃນ FreeBSD

    11. ໃນການຕິດຕັ້ງຊຸດທີ່ຖືກລວບລວມມາຈາກຫໍສະ ໝຸດ Ports ໃນ FreeBSD, ໃຫ້ອອກ ຄຳ ສັ່ງ pkg ດັ່ງທີ່ສະແດງຢູ່ໃນຕົວຢ່າງຂ້າງລຸ່ມນີ້.

    # pkg install package_name
    

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

    # pkg info package_name
    

    13. ປຸ່ມປ່ຽນ ຄຳ ສັ່ງກ່ຽວກັບຂໍ້ມູນ pkg ຈະສະແດງຂໍ້ຄວາມວ່າ "ບໍ່ມີແພັກເກດທີ່ຖືກຕ້ອງ package_name" ຖ້າຊຸດຊອບແວບໍ່ຖືກຕິດຕັ້ງຢູ່ໃນລະບົບຂອງທ່ານ, ດັ່ງທີ່ສະແດງຢູ່ໃນ ໜ້າ ຈໍຂ້າງລຸ່ມນີ້.

    # pkg info tcpdump
    

    14. ເພື່ອລົງບັນຊີທຸກໂປແກຼມທີ່ຕິດຕັ້ງໃນ FreeBSD, ໃຫ້ ດຳ ເນີນການ ຄຳ ສັ່ງຂໍ້ມູນ pkg ໂດຍບໍ່ຕ້ອງມີຕົວເລືອກໃດໆ.

    ຕົວກອງ grep ຕໍ່ ຄຳ ສັ່ງ pkg ຂໍ້ມູນສາມາດສະແດງໃຫ້ທ່ານເຫັນວ່າບາງແພັກເກດຫລືໂປແກຼມສະເພາະໃດ ໜຶ່ງ ມີຢູ່ໃນລະບົບດັ່ງທີ່ສະແດງຢູ່ໃນຕົວຢ່າງຂ້າງລຸ່ມນີ້.

    # pkg info | grep ftp
    

    15. ໃນຄໍາສັ່ງທີ່ຈະເອົາຊຸດອອກຈາກລະບົບ, ອອກຄໍາສັ່ງຂ້າງລຸ່ມນີ້.

    # pkg remove package_name
    or
    # pkg delete package_name
    

    16. ໃນກໍລະນີທີ່ທ່ານຕ້ອງການປ້ອງກັນການ ກຳ ຈັດຫຼືແກ້ໄຂຂອງຊຸດທີ່ທ່ານຕິດຕັ້ງ, ທ່ານສາມາດໃຊ້ປຸ່ມລັອກ ສຳ ລັບ ຄຳ ສັ່ງ pkg, ດັ່ງຮູບຂ້າງລຸ່ມນີ້.

    # pkg lock package_name
    

    ລະຫັດປົດລັອກ ຄຳ ສັ່ງ pkg ຈະຊ່ວຍໃຫ້ທ່ານສາມາດ ກຳ ຈັດການ ຈຳ ກັດຂອງແພັກເກັດແລະແກ້ໄຂຫລືຍົກເລີກການຫຸ້ມຫໍ່.

    # pkg unlock package_name
    

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

    # pkg which /path/to/executable
    

    18. ເພື່ອໃຫ້ທ້ອງຖິ່ນດາວໂຫລດແພັກເກດຈາກບ່ອນເກັບຂໍ້ມູນຂອງ Ports, ໂດຍບໍ່ຕ້ອງຕິດຕັ້ງແພັກເກັດໃນລະບົບ, ໃຫ້ແລ່ນ pkg ຄຳ ສັ່ງພ້ອມປຸ່ມຫຼັບ.

    ຖານສອງຊຸດທີ່ດາວໂຫລດມາ, ເຊິ່ງແມ່ນແຟ້ມ .txz ທີ່ຖືກບີບອັດ, ສາມາດພົບໄດ້ໃນເສັ້ນທາງ/var/cache/pkg/ລະບົບ.

    # pkg fetch package_name
    # ls /var/cache/pkg/ | grep package_name
    

    19. ເພື່ອກວດກາເບິ່ງວ່າແພັກເກດທີ່ຕິດຕັ້ງຈະຖືກພົບກັບບັນດາຂໍ້ບົກພ່ອງຫຼືຂໍ້ບົກພ່ອງທົ່ວໄປທີ່ອອກ ຄຳ ສັ່ງດ້ານລຸ່ມ.

    # pkg audit -F
    

    ເພື່ອເບິ່ງບັນຊີລາຍຊື່ຂອງຄວາມອ່ອນແອເກົ່າທີ່ບ່ອນທີ່ສົ່ງຜົນກະທົບຕໍ່ຊຸດຊອບແວໃນລຸ້ນກ່ອນອອກ ຄຳ ສັ່ງຂ້າງລຸ່ມນີ້.

    # pkg audit package_name
    

    ຂ້າງລຸ່ມນີ້ແມ່ນບົດຄັດຫຍໍ້ຂອງຂໍ້ບົກຜ່ອງທີ່ຮູ້ຈັກທັງ ໝົດ ເຊິ່ງບ່ອນທີ່ພົບໃນ Nginx web server ລວບລວມ ສຳ ລັບ FreeBSD.

    # pkg audit nginx
    
    nginx is vulnerable:
    Affected versions:
    <= 0.8.41 : > 1.4.4,1
    nginx -- Request line parsing vulnerability
    CVE: CVE-2013-4547
    WWW: https://vuxml.FreeBSD.org/freebsd/94b6264a-5140-11e3-8b22-f0def16c5c1b.html
    
    nginx is vulnerable:
    Affected versions:
    < 1.0.15
    nginx -- Buffer overflow in the ngx_http_mp4_module
    CVE: CVE-2012-2089
    WWW: https://vuxml.FreeBSD.org/freebsd/0c14dfa7-879e-11e1-a2a0-00500802d8f7.html
    
    nginx is vulnerable:
    Affected versions:
    < 1.4.7
    nginx -- SPDY heap buffer overflow
    CVE: CVE-2014-0133
    WWW: https://vuxml.FreeBSD.org/freebsd/fc28df92-b233-11e3-99ca-f0def16c5c1b.html
    ...
    

    ຮັກສາຄວາມສາມາດໃນການຄຸ້ມຄອງການຫຸ້ມຫໍ່ໃນ FreeBSD

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

    # pkg update
    # pkg upgrade
    

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

    # pkg stats
    

    22. ເພື່ອລຶບທຸກສິ່ງເພິ່ງພາອາໄສທີ່ເຫລືອໄວ້ໂດຍການຕິດຕັ້ງແພັກເກດຕ່າງໆໃນລະບົບອອກບັນຫາ ຄຳ ສັ່ງຂ້າງລຸ່ມ.

    # pkg autoremove
    

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

    # pkg clean -a -n  
    # pkg clean -a -y
    

    ຫມົດເທົ່ານີ້! ດັ່ງທີ່ທ່ານເຫັນ, FreeBSD ມີລະບົບການເກັບຊຸດທີ່ ໜ້າ ປະທັບໃຈ, ຄ້າຍຄືກັບເຄື່ອງມືການຈັດການແພັກເກັດທີ່ໃຊ້ໃນການແຈກຢາຍ Linux ເຊັ່ນ: APT ທີ່ມີ ຈຳ ນວນຫຼວງຫຼາຍຂອງຖານຂໍ້ມູນຊອບແວທີ່ຖືກລວບລວມແລະມີເສັ້ນ ຄຳ ສັ່ງທີ່ງ່າຍດາຍແລະມີປະສິດທິພາບ, pkg ເຊິ່ງສາມາດໃຊ້ໄດ້ ຈັດການຊອບແວໃຫ້ຖືກຕ້ອງ