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 ແມ່ນໄດ້ຖືກບັນທຶກໄວ້ໃນແຟ້ມເອກະສານ
ເຄື່ອງມືຄຸ້ມຄອງຂະບວນການອື່ນໆຂອງ 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.
ພວກເຮົາຍັງໄດ້ຮຽນຮູ້ວິທີການປະຕິບັດທີ່ ເໝາະ ສົມ (ໂດຍການປັບບູລິມະສິດການປະຕິບັດຂອງຂະບວນການໃດ ໜຶ່ງ ຫຼືໂດຍການຢຸດມັນ) ພາຍໃຕ້ສະຖານະການທີ່ຜິດປົກກະຕິ.
ພວກເຮົາຫວັງວ່າແນວຄວາມຄິດທີ່ໄດ້ອະທິບາຍໄວ້ໃນບົດແນະ ນຳ ນີ້ມີປະໂຫຍດ. ຖ້າທ່ານມີ ຄຳ ຖາມຫຼື ຄຳ ເຫັນໃດໆ, ກະລຸນາຕິດຕໍ່ຫາພວກເຮົາໂດຍໃຊ້ແບບຟອມຕິດຕໍ່ດ້ານລຸ່ມ.