ວິທີ ກຳ ນົດຂໍ້ ຈຳ ກັດ ສຳ ລັບຂັ້ນຕອນການເຮັດວຽກຂອງຜູ້ໃຊ້ໃນ Linux


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

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

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

ກ່ອນທີ່ພວກເຮົາຈະກ້າວຕໍ່ໄປອີກມີສອງຢ່າງທີ່ພວກເຮົາຕ້ອງການເພື່ອຊີ້ໃຫ້ເຫັນ:

<

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

    /etc/security/limits.conf
    

    ເອກະສານນີ້ແມ່ນໃຊ້ເພື່ອສະ ໝັກ ulimit ທີ່ສ້າງຂື້ນໂດຍ pam_module.

    ແຟ້ມມີ syntax ຕໍ່ໄປນີ້:

    <domain> <type> <item> <value>

    ນີ້ພວກເຮົາຈະຢຸດເພື່ອປຶກສາຫາລືແຕ່ລະທາງເລືອກ:

    • ໂດເມນ - ນີ້ປະກອບມີຊື່ຜູ້ໃຊ້, ກຸ່ມ, ລະດັບ ຄຳ ແນະ ນຳ ແລະອື່ນໆ
    • ປະເພດ - ຂໍ້ ຈຳ ກັດທີ່ອ່ອນແລະຍາກ
    • ລາຍການ - ລາຍການທີ່ຈະຖືກ ຈຳ ກັດ - ຂະ ໜາດ ຫຼັກ, ຂະ ໜາດ ໄຟລ໌, nproc ແລະອື່ນໆ
    • ຄ່າ - ນີ້ແມ່ນມູນຄ່າ ສຳ ລັບຂີດ ຈຳ ກັດທີ່ໃຫ້ໄວ້

    ຕົວຢ່າງທີ່ດີ ສຳ ລັບຂີດ ຈຳ ກັດແມ່ນ:

    @student          hard           nproc                20

    ເສັ້ນຂ້າງເທິງ ກຳ ນົດຂີດ ຈຳ ກັດສູງສຸດ 20 ຂະບວນການໃນກຸ່ມ "ນັກຮຽນ" .

    ຖ້າທ່ານຕ້ອງການທີ່ຈະເຫັນຂໍ້ ຈຳ ກັດຂອງຂະບວນການສະເພາະໃດ ໜຶ່ງ ທ່ານສາມາດ“ ຈຳ ກັດ” ເອກະສານຂໍ້ ຈຳ ກັດດັ່ງນີ້:

    # cat /proc/PID/limits
    

    ບ່ອນທີ່ PID ແມ່ນ ID ຂອງຂະບວນການຕົວຈິງ, ທ່ານສາມາດຊອກຫາ id process ໂດຍການໃຊ້ ຄຳ ສັ່ງ ps. ສຳ ລັບ ຄຳ ອະທິບາຍລາຍລະອຽດເພີ່ມເຕີມ, ອ່ານບົດຄວາມຂອງພວກເຮົາທີ່ເວົ້າວ່າ - ຊອກຫາການເຮັດວຽກຂອງ Linux ທີ່ ກຳ ລັງເຮັດວຽກແລະ ກຳ ນົດຂັ້ນຕອນຂອງຂະບວນການຕໍ່ລະດັບຜູ້ ນຳ ໃຊ້

    ດັ່ງນັ້ນນີ້ແມ່ນຕົວຢ່າງ:

    # cat /proc/2497/limits
    
    Limit                     Soft Limit           Hard Limit           Units     
    Max cpu time              unlimited            unlimited            seconds   
    Max file size             unlimited            unlimited            bytes     
    Max data size             unlimited            unlimited            bytes     
    Max stack size            8388608              unlimited            bytes     
    Max core file size        0                    unlimited            bytes     
    Max resident set          unlimited            unlimited            bytes     
    Max processes             32042                32042                processes 
    Max open files            1024                 4096                 files     
    Max locked memory         65536                65536                bytes     
    Max address space         unlimited            unlimited            bytes     
    Max file locks            unlimited            unlimited            locks     
    Max pending signals       32042                32042                signals   
    Max msgqueue size         819200               819200               bytes     
    Max nice priority         0                    0                    
    Max realtime priority     0                    0                    
    Max realtime timeout      unlimited            unlimited            us   
    

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

    ຖ້າທ່ານມີ ຄຳ ຖາມຫຼື ຄຳ ເຫັນໃດໆ, ກະລຸນາຢ່າລັງເລທີ່ຈະສົ່ງພວກເຂົາໃນສ່ວນ ຄຳ ເຫັນຂ້າງລຸ່ມນີ້.