LFCS: ຕິດຕາມກວດກາການ ນຳ ໃຊ້ Linux ຂັ້ນຕອນການ ນຳ ໃຊ້ຊັບພະຍາກອນແລະ ກຳ ນົດຂອບເຂດຂະບວນການໃນແຕ່ລະພື້ນຖານຕໍ່ຜູ້ໃຊ້ - ສ່ວນທີ 14


ເນື່ອງຈາກການດັດແກ້ຫຼ້າສຸດໃນຈຸດປະສົງການສອບເສັງເອົາໃບຢັ້ງຢືນ LFCS ມີຜົນບັງຄັບໃຊ້ຕັ້ງແຕ່ວັນທີ 2 ເດືອນກຸມພາປີ 2016, ພວກເຮົາ ກຳ ລັງເພີ່ມບົດຄວາມທີ່ ຈຳ ເປັນເຂົ້າໃນຊຸດ LFCE ເຊັ່ນກັນ.

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

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

ສະຖິຕິຜູ້ປະມວນຜົນລາຍງານ Linux

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

ເພື່ອໃຊ້ເຄື່ອງມືນີ້, ທ່ານຈະຕ້ອງຕິດຕັ້ງ sysstat:

# yum update && yum install sysstat              [On CentOS based systems]
# aptitutde update && aptitude install sysstat   [On Ubuntu based systems]
# zypper update && zypper install sysstat        [On openSUSE systems]

ອ່ານເພີ່ມເຕີມກ່ຽວກັບ sysstat ແລະມັນມີເຄື່ອງໃຊ້ຕ່າງໆທີ່ Learn Sysstat ແລະ Utilities ຂອງມັນ mpstat, pidstat, iostat ແລະ sar ໃນ Linux

ເມື່ອທ່ານໄດ້ຕິດຕັ້ງ mpstat ແລ້ວ, ໃຊ້ມັນເພື່ອສ້າງລາຍງານສະຖິຕິຂອງຜູ້ປຸງແຕ່ງ.

ເພື່ອສະແດງ 3 ລາຍງານທົ່ວໂລກຂອງການ ນຳ ໃຊ້ CPU ( -u ) ສຳ ລັບ CPU ທັງ ໝົດ (ຕາມທີ່ລະບຸໂດຍ -P ALL) ໃນໄລຍະຫ່າງ 2 ວິນາທີ, ເຮັດ:

# mpstat -P ALL -u 2 3
Linux 3.19.0-32-generic (linux-console.net) 	Wednesday 30 March 2016 	_x86_64_	(4 CPU)

11:41:07  IST  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
11:41:09  IST  all    5.85    0.00    1.12    0.12    0.00    0.00    0.00    0.00    0.00   92.91
11:41:09  IST    0    4.48    0.00    1.00    0.00    0.00    0.00    0.00    0.00    0.00   94.53
11:41:09  IST    1    2.50    0.00    0.50    0.00    0.00    0.00    0.00    0.00    0.00   97.00
11:41:09  IST    2    6.44    0.00    0.99    0.00    0.00    0.00    0.00    0.00    0.00   92.57
11:41:09  IST    3   10.45    0.00    1.99    0.00    0.00    0.00    0.00    0.00    0.00   87.56

11:41:09  IST  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
11:41:11  IST  all   11.60    0.12    1.12    0.50    0.00    0.00    0.00    0.00    0.00   86.66
11:41:11  IST    0   10.50    0.00    1.00    0.00    0.00    0.00    0.00    0.00    0.00   88.50
11:41:11  IST    1   14.36    0.00    1.49    2.48    0.00    0.00    0.00    0.00    0.00   81.68
11:41:11  IST    2    2.00    0.50    1.00    0.00    0.00    0.00    0.00    0.00    0.00   96.50
11:41:11  IST    3   19.40    0.00    1.00    0.00    0.00    0.00    0.00    0.00    0.00   79.60

11:41:11  IST  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
11:41:13  IST  all    5.69    0.00    1.24    0.00    0.00    0.00    0.00    0.00    0.00   93.07
11:41:13  IST    0    2.97    0.00    1.49    0.00    0.00    0.00    0.00    0.00    0.00   95.54
11:41:13  IST    1   10.78    0.00    1.47    0.00    0.00    0.00    0.00    0.00    0.00   87.75
11:41:13  IST    2    2.00    0.00    1.00    0.00    0.00    0.00    0.00    0.00    0.00   97.00
11:41:13  IST    3    6.93    0.00    0.50    0.00    0.00    0.00    0.00    0.00    0.00   92.57

Average:     CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
Average:     all    7.71    0.04    1.16    0.21    0.00    0.00    0.00    0.00    0.00   90.89
Average:       0    5.97    0.00    1.16    0.00    0.00    0.00    0.00    0.00    0.00   92.87
Average:       1    9.24    0.00    1.16    0.83    0.00    0.00    0.00    0.00    0.00   88.78
Average:       2    3.49    0.17    1.00    0.00    0.00    0.00    0.00    0.00    0.00   95.35
Average:       3   12.25    0.00    1.16    0.00    0.00    0.00    0.00    0.00    0.00   86.59

ເພື່ອເບິ່ງສະຖິຕິດຽວກັນ ສຳ ລັບ CPU ສະເພາະ (CPU 0 ໃນຕົວຢ່າງຕໍ່ໄປນີ້), ໃຊ້:

# mpstat -P 0 -u 2 3
Linux 3.19.0-32-generic (linux-console.net) 	Wednesday 30 March 2016 	_x86_64_	(4 CPU)

11:42:08  IST  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
11:42:10  IST    0    3.00    0.00    0.50    0.00    0.00    0.00    0.00    0.00    0.00   96.50
11:42:12  IST    0    4.08    0.00    0.00    2.55    0.00    0.00    0.00    0.00    0.00   93.37
11:42:14  IST    0    9.74    0.00    0.51    0.00    0.00    0.00    0.00    0.00    0.00   89.74
Average:       0    5.58    0.00    0.34    0.85    0.00    0.00    0.00    0.00    0.00   93.23

ຜົນໄດ້ຮັບຂອງ ຄຳ ສັ່ງຂ້າງເທິງສະແດງໃຫ້ເຫັນຖັນເຫຼົ່ານີ້:

<

  • CPU : ໝາຍ ເລກໂຮງງານຜະລິດເປັນເລກເຕັມ, ຫຼື ຄຳ ສັບທັງ ໝົດ ເປັນຄ່າສະເລ່ຍ ສຳ ລັບຜູ້ປຸງແຕ່ງທັງ ໝົດ.
  • % usr : ເປີເຊັນຂອງການ ນຳ ໃຊ້ CPU ໃນຂະນະທີ່ ກຳ ລັງ ດຳ ເນີນການ ນຳ ໃຊ້ລະດັບຜູ້ໃຊ້.
  • % ງາມ : ຄືກັນກັບ % usr , ແຕ່ມີບູລິມະສິດທີ່ດີ.
  • % sys : ເປີເຊັນຂອງການ ນຳ ໃຊ້ CPU ທີ່ເກີດຂື້ນໃນຂະນະທີ່ ດຳ ເນີນການ ນຳ ໃຊ້ kernel. ນີ້ບໍ່ໄດ້ລວມເອົາເວລາທີ່ໃຊ້ເວລາໃນການຈັດການກັບການຂັດຂວາງຫລືການຈັດການກັບຮາດແວ.
  • % iowait : ເປີເຊັນຂອງເວລາທີ່ CPU (ຫຼືທັງ ໝົດ) ທີ່ບໍ່ໄດ້ຢູ່, ໃນໄລຍະນັ້ນມີການ ດຳ ເນີນງານ I/O ທີ່ມີຊັບພະຍາກອນຢ່າງຫຼວງຫຼາຍທີ່ ກຳ ນົດໃນ CPU ນັ້ນ. ຄຳ ອະທິບາຍລະອຽດ (ມີຕົວຢ່າງ) ສາມາດເບິ່ງໄດ້ທີ່ນີ້.
  • % irq : ເປີເຊັນຂອງເວລາທີ່ໃຊ້ໃນການບໍລິການຂັດຂວາງຮາດແວ.
  • % ອ່ອນ : ຄືກັນກັບ % irq , ແຕ່ມີການຂັດຂວາງຊອບແວ.
  • % ລັກ : ເປີເຊັນຂອງເວລາທີ່ໃຊ້ເວລາໃນການລໍຄອຍໂດຍເຈດຕະນາ (ລັກຂະໂມຍຫລືລັກເວລາທີ່ລັກ) ໃນເວລາທີ່ເຄື່ອງ virtual, ເປັນແຂກ, ແມ່ນ "ຊະນະ" ຄວາມສົນໃຈຂອງຜູ້ເບິ່ງແຍງລະບົບໃນຂະນະທີ່ແຂ່ງຂັນກັບ CPU ຄຸນຄ່ານີ້ຄວນຈະຖືກເກັບໄວ້ເປັນນ້ອຍເທົ່າທີ່ເປັນໄປໄດ້. ມູນຄ່າສູງໃນດ້ານນີ້ ໝາຍ ຄວາມວ່າເຄື່ອງ virtual ກຳ ລັງຢຸດຢູ່ - ຫລືອີກບໍ່ດົນກໍ່ຈະມີ.
  • % ແຂກ : ເປີເຊັນຂອງເວລາທີ່ໃຊ້ງານຂອງໂຮງງານຜະລິດເສມືນ.
  • % ບໍ່ເຮັດວຽກ : ເປີເຊັນຂອງເວລາທີ່ CPU (s) ບໍ່ໄດ້ປະຕິບັດວຽກງານໃດໆ. ຖ້າທ່ານສັງເກດເຫັນຄ່າຕ່ ຳ ໃນຖັນນີ້, ນັ້ນແມ່ນການສະແດງໃຫ້ເຫັນວ່າລະບົບຖືກວາງຢູ່ພາຍໃຕ້ພາລະ ໜັກ. ໃນກໍລະນີດັ່ງກ່າວ, ທ່ານຈະຕ້ອງພິຈາລະນາຢ່າງໃກ້ຊິດກ່ຽວກັບບັນຊີລາຍຊື່ຂອງຂະບວນການ, ດັ່ງທີ່ພວກເຮົາຈະປຶກສາຫາລືກັນໃນເວລາ ໜຶ່ງ ນາທີ, ເພື່ອ ກຳ ນົດສິ່ງທີ່ກໍ່ໃຫ້ເກີດມັນ.
  • ເພື່ອເຮັດໃຫ້ສະຖານທີ່ຂອງໂປເຊດເຊີຢູ່ພາຍໃຕ້ການໂຫຼດທີ່ສູງບາງຢ່າງ, ໃຫ້ແລ່ນ ຄຳ ສັ່ງຕໍ່ໄປນີ້ແລະຫຼັງຈາກນັ້ນປະຕິບັດ mpstat (ຕາມທີ່ລະບຸໄວ້) ຢູ່ປາຍທາງແຍກຕ່າງຫາກ:

    # dd if=/dev/zero of=test.iso bs=1G count=1
    # mpstat -u -P 0 2 3
    # ping -f localhost # Interrupt with Ctrl + C after mpstat below completes
    # mpstat -u -P 0 2 3
    

    ສຸດທ້າຍ, ສົມທຽບກັບຜົນຜະລິດຂອງ mpstat ພາຍໃຕ້ສະພາບການ“ ປົກກະຕິ”:

    ດັ່ງທີ່ທ່ານເຫັນໃນຮູບຂ້າງເທິງ, CPU 0 ແມ່ນຢູ່ໃນພາລະ ໜັກ ໃນໄລຍະສອງຕົວຢ່າງ ທຳ ອິດ, ດັ່ງທີ່ໄດ້ລະບຸໄວ້ໃນຖັນ % idle .

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

    ການລາຍງານຂັ້ນຕອນຂອງ Linux

    ເພື່ອລາຍຊື່ຂະບວນການຈັດຮຽງພວກມັນໂດຍການ ນຳ ໃຊ້ CPU, ພວກເຮົາຈະໃຊ້ ຄຳ ສັ່ງ ps ທີ່ຮູ້ກັນດີກັບ -eo (ເພື່ອເລືອກຂະບວນການທັງ ໝົດ ທີ່ມີຮູບແບບທີ່ ກຳ ນົດໂດຍຜູ້ໃຊ້) ແລະ - ລະຫັດ (ເພື່ອ ກຳ ນົດການຈັດລຽງ ລຳ ດັບຕາມແບບທີ່ ກຳ ຫນົດເອງ) ຕົວເລືອກ, ດັ່ງນັ້ນ:

    # ps -eo pid,ppid,cmd,%cpu,%mem --sort=-%cpu
    

    ຄຳ ສັ່ງຂ້າງເທິງນີ້ຈະສະແດງໃຫ້ເຫັນພຽງແຕ່ PID , PPID , ຄຳ ສັ່ງທີ່ກ່ຽວຂ້ອງກັບຂະບວນການ, ແລະເປີເຊັນຂອງການ ນຳ ໃຊ້ CPU ແລະ RAM ຈັດລຽງຕາມເປີເຊັນຂອງການ ນຳ ໃຊ້ CPU ໃນ ລຳ ດັບທີ່ ກຳ ລັງລົງ . ເມື່ອປະຕິບັດໃນລະຫວ່າງການສ້າງເອກະສານ .iso, ນີ້ແມ່ນສອງສາມເສັ້ນ ທຳ ອິດຂອງຜົນໄດ້ຮັບ:

    ເມື່ອພວກເຮົາໄດ້ ກຳ ນົດຂະບວນການທີ່ມີຄວາມສົນໃຈ (ເຊັ່ນວ່າລະຫັດທີ່ມີ PID = 2822 ), ພວກເຮົາສາມາດໄປຫາ /proc/PID (/proc/2822 ໃນກໍລະນີນີ້) ແລະເຮັດລາຍຊື່ໄດເລກະທໍລີ.

    ໄດເລກະທໍລີນີ້ແມ່ນບ່ອນທີ່ມີເອກະສານແລະໄດເລກະທໍລີຫຼາຍໆບ່ອນທີ່ມີຂໍ້ມູນລະອຽດກ່ຽວກັບຂະບວນການນີ້ໂດຍສະເພາະໃນຂະນະທີ່ມັນ ກຳ ລັງແລ່ນຢູ່.

    <

  • /proc/2822/io ມີສະຖິຕິ IO ສຳ ລັບຂັ້ນຕອນ (ຈຳ ນວນຕົວອັກສອນແລະໄບຕ໌ທີ່ອ່ານແລະຂຽນ, ໃນບັນດາອື່ນໆ, ໃນລະຫວ່າງການປະຕິບັດງານ IO).
  • /proc/2822/attr/current ສະແດງໃຫ້ເຫັນຄຸນລັກສະນະຄວາມປອດໄພຂອງ SELinux ໃນປະຈຸບັນຂອງຂະບວນການ.
  • /proc/2822/cgroup ອະທິບາຍກຸ່ມຄວບຄຸມ (ກຸ່ມເປັນເວລາສັ້ນໆ) ເຊິ່ງຂະບວນການດັ່ງກ່າວຈະເປັນໄປໄດ້ຖ້າຕົວເລືອກການຕັ້ງຄ່າແກ່ນຂອງ CONFIG_CGROUPS ຖືກເປີດໃຊ້ງານເຊິ່ງທ່ານສາມາດກວດສອບກັບ:
  • # cat /boot/config-$(uname -r) | grep -i cgroups
    

    ຖ້າທາງເລືອກເປີດໃຊ້, ທ່ານຄວນເບິ່ງ:

    CONFIG_CGROUPS=y
    

    ການ ນຳ ໃຊ້ລະຫັດກຸ່ມ ທ່ານສາມາດຈັດການ ຈຳ ນວນການ ນຳ ໃຊ້ຊັບພະຍາກອນທີ່ໄດ້ຮັບອະນຸຍາດໃນແຕ່ລະຂັ້ນຕອນທີ່ໄດ້ອະທິບາຍໄວ້ໃນ ໝວດ ທີ 1 ເຖິງ 4 ຂອງພາກສ່ວນຄວບຄຸມຂອງເອກະສານ Ubuntu 14.04 Server.

    ລະຫັດ /proc/2822/fd ແມ່ນໄດເລກະທໍລີທີ່ມີ ໜຶ່ງ ເສັ້ນທາງເຊື່ອມຕໍ່ສັນຍາລັກ ສຳ ລັບເຄື່ອງບັນຍາຍເອກະສານແຕ່ລະຂັ້ນຕອນທີ່ໄດ້ເປີດ. ຮູບພາບຕໍ່ໄປນີ້ສະແດງຂໍ້ມູນນີ້ ສຳ ລັບຂັ້ນຕອນທີ່ເລີ່ມຕົ້ນໃນ tty1 (ສະຖານີ ທຳ ອິດ) ເພື່ອສ້າງຮູບພາບ .iso:

    ຮູບພາບຂ້າງເທິງສະແດງໃຫ້ເຫັນວ່າ stdin (file descriptor 0), stdout (file descriptor 1), ແລະ stderr (file descriptor 2) ຖືກ mapped ເຖິງ/dev/zero, /root/test.iso, ແລະ/dev/tty1 ຕາມ ລຳ ດັບ.

    ຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບລະຫັດ /proc ສາມາດພົບໄດ້ໃນເອກະສານ“ ລະບົບແຟ້ມລະຫັດ/ໂປແກຼມລະຫັດແຟ້ມລະຫັດ” ທີ່ເກັບຮັກສາໄວ້ແລະຮັກສາໄວ້ໂດຍ Kernel.org, ແລະໃນປື້ມຄູ່ມືຂອງ Linux Programmer.

    ການ ກຳ ນົດຂໍ້ ຈຳ ກັດດ້ານຊັບພະຍາກອນຕໍ່ພື້ນຖານຕໍ່ຜູ້ໃຊ້ໃນ Linux

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

    ເພື່ອເຮັດສິ່ງນີ້, ດັດແກ້ /etc/security/limits.conf ແລະເພີ່ມສາຍຕໍ່ໄປນີ້ຢູ່ທາງລຸ່ມຂອງເອກະສານເພື່ອ ກຳ ນົດຂອບເຂດ:

    *   	hard	nproc   10
    

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

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

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

    ຄຳ ແນະ ນຳ: ຂໍ້ ຈຳ ກັດອື່ນໆທີ່ເປັນໄປໄດ້ໂດຍ ulimit ແມ່ນໄດ້ຖືກບັນທຶກໄວ້ໃນແຟ້ມເອກະສານ limit.conf .

    ເຄື່ອງມືຄຸ້ມຄອງຂະບວນການອື່ນໆຂອງ Linux

    ນອກ ເໜືອ ຈາກເຄື່ອງມືທີ່ໄດ້ກ່າວມາກ່ອນແລ້ວ, ຜູ້ບໍລິຫານລະບົບອາດ ຈຳ ເປັນຕ້ອງ:

    a) ປັບປຸງແກ້ໄຂບຸລິມະສິດການປະຕິບັດ (ການ ນຳ ໃຊ້ຊັບພະຍາກອນຂອງລະບົບ) ຂອງຂັ້ນຕອນການ ນຳ ໃຊ້ renice. ນີ້ ໝາຍ ຄວາມວ່າແກ່ນຈະຈັດສັນຊັບພະຍາກອນລະບົບຫຼາຍຫລື ໜ້ອຍ ໃຫ້ແກ່ຂະບວນການໂດຍອີງໃສ່ບຸລິມະສິດທີ່ໄດ້ຮັບມອບ ໝາຍ (ຈຳ ນວນ ໜຶ່ງ ທີ່ຮູ້ກັນທົ່ວໄປວ່າ "ງາມ" ໃນລະດັບຕັ້ງແຕ່ -20 ເຖິງ 19 ).

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

    syntax ພື້ນຖານຂອງການມີຊື່ສຽງແມ່ນດັ່ງຕໍ່ໄປນີ້:

    # renice [-n] <new priority> <UID, GID, PGID, or empty> identifier
    

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

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

    ເພື່ອຂ້າຂັ້ນຕອນ, ໃຫ້ໃຊ້ ຄຳ ສັ່ງຂ້າດັ່ງຕໍ່ໄປນີ້:

    # kill PID
    

    ອີກທາງເລືອກ, ທ່ານສາມາດໃຊ້ pkill ເພື່ອຢຸດທຸກຂັ້ນຕອນຂອງເຈົ້າຂອງທີ່ໃຫ້ (-u) , ຫຼືເຈົ້າຂອງກຸ່ມ (-G) , ຫຼືແມ່ນແຕ່ຂັ້ນຕອນຕ່າງໆທີ່ມີ PPID ໃນລະຫັດທົ່ວໄປ (-P) . ຕົວເລືອກເຫຼົ່ານີ້ອາດຈະຖືກຕິດຕາມດ້ວຍການສະແດງຕົວເລກຫຼືຊື່ຕົວຈິງທີ່ເປັນຕົວລະບຸຕົວ:

    # pkill [options] identifier
    

    ຍົກຕົວຢ່າງ,

    # pkill -G 1000
    

    ຈະຂ້າທຸກຂະບວນການທີ່ເປັນເຈົ້າຂອງໂດຍກຸ່ມທີ່ມີ GID = 1000.

    ແລະ,

    # pkill -P 4993 
    

    ຈະຂ້າທຸກຂະບວນການເຊິ່ງ PPID ແມ່ນ 4993.

    ກ່ອນທີ່ຈະແລ່ນ pkill, ມັນແມ່ນຄວາມຄິດທີ່ດີທີ່ຈະທົດສອບຜົນໄດ້ຮັບກັບ pgrep ກ່ອນ, ບາງທີອາດຈະໃຊ້ຕົວເລືອກ -l ພ້ອມທັງລາຍຊື່ຂອງຂະບວນການ. ມັນໃຊ້ທາງເລືອກດຽວກັນແຕ່ພຽງແຕ່ກັບຄືນ PIDs ຂອງຂະບວນການ (ໂດຍບໍ່ມີການປະຕິບັດຕໍ່ໄປອີກ) ທີ່ຈະຖືກຂ້າຖ້າຫາກວ່າ pkill ຖືກໃຊ້.

    # pgrep -l -u gacanepa
    

    ນີ້ແມ່ນຮູບໃນຮູບຕໍ່ໄປ:

    ບົດສະຫຼຸບ

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

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

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