ວິທີການປ່ຽນ Runlevels (ເປົ້າ ໝາຍ) ໃນ SystemD


Systemd ແມ່ນລະບົບ init ທີ່ທັນສະ ໄໝ ສຳ ລັບ Linux: ລະບົບແລະຜູ້ຈັດການບໍລິການທີ່ ເໝາະ ສົມກັບລະບົບ SysV init ທີ່ນິຍົມແລະສະຄິບ LSB init. ມັນມີຈຸດປະສົງເພື່ອເອົາຊະນະຄວາມບົກຜ່ອງຂອງ SysV init ດັ່ງທີ່ໄດ້ອະທິບາຍໄວ້ໃນບົດຄວາມຕໍ່ໄປ.

<

  • ເລື່ອງຢູ່ເບື້ອງຫຼັງ ‘init’ ແລະ ‘systemd’: ເປັນຫຍັງ“ init” ຈຳ ເປັນຕ້ອງໄດ້ຖືກທົດແທນດ້ວຍ 'systemd' ໃນ Linux
  • ໃນລະບົບທີ່ຄ້າຍຄືກັບ Unix ເຊັ່ນ Linux, ສະຖານະປະຕິບັດການຂອງລະບົບປະຕິບັດການໃນປະຈຸບັນແມ່ນເປັນທີ່ຮູ້ກັນວ່າເປັນລະດັບ; ມັນ ກຳ ນົດວ່າລະບົບການບໍລິການໃດທີ່ ກຳ ລັງໃຊ້ງານຢູ່. ພາຍໃຕ້ລະບົບ init ທີ່ນິຍົມເຊັ່ນ SysV init, runlevels ແມ່ນຖືກລະບຸໂດຍຕົວເລກ. ເຖິງຢ່າງໃດກໍ່ຕາມ, ໃນລະບົບ runlevels ແມ່ນ ໝາຍ ເຖິງເປົ້າ ໝາຍ.

    ໃນບົດຂຽນນີ້, ພວກເຮົາຈະອະທິບາຍວິທີການປ່ຽນລະດັບ runlevel (ເປົ້າ ໝາຍ) ກັບ systemd. ກ່ອນທີ່ພວກເຮົາຈະກ້າວຕໍ່ໄປອີກ, ຂໍໃຫ້ໄລຍະສັ້ນໆພາຍໃຕ້ຄວາມ ສຳ ພັນລະຫວ່າງຕົວເລກແລະເປົ້າ ໝາຍ.

    • ລະດັບການແລ່ນ 0 ແມ່ນຖືກຈັບຄູ່ໂດຍ poweroff.target (ແລະ runlevel0.target ແມ່ນສັນຍາລັກທີ່ເຊື່ອມຕໍ່ກັບ poweroff.target).
    • ການແລ່ນລະດັບ 1 ແມ່ນຖືກຈັບຄູ່ໂດຍ rescue.target (ແລະ runlevel1.target ແມ່ນສັນຍາລັກທີ່ເຊື່ອມຕໍ່ກັບ rescue.target).
    • ລະດັບການ ດຳ ເນີນງານທີ 3 ແມ່ນເຮັດຕາມແບບຫຼາຍຕົວ (ແລະ runlevel3.target ແມ່ນສັນຍາລັກທີ່ເຊື່ອມໂຍງກັບຫຼາຍຮູບແບບ).
    • ລະດັບການ ດຳ ເນີນງານຂັ້ນ 5 ແມ່ນເຮັດຕາມແບບ graphical.target (ແລະ runlevel5.target ແມ່ນສັນຍາລັກທີ່ເຊື່ອມຕໍ່ກັບ graphical.target).
    • ລະດັບການ ດຳ ເນີນງານຂັ້ນ 6 ແມ່ນເຮັດຕາມໂດຍ reboot.target (ແລະ runlevel6.target ແມ່ນສັນຍາລັກທີ່ເຊື່ອມຕໍ່ກັບ reboot.target).
    • ເຫດສຸກເສີນແມ່ນຖືກຕ້ອງໂດຍ Emergency.target.

    ວິທີການເບິ່ງເປົ້າ ໝາຍ ໃນປະຈຸບັນ (ລະດັບການແລ່ນ) ໃນ Systemd

    ໃນເວລາທີ່ລະບົບເກີບ, ໂດຍຄ່າເລີ່ມຕົ້ນ systemd ກະຕຸ້ນຫນ່ວຍ default.target. ວຽກຕົ້ນຕໍແມ່ນການກະຕຸ້ນການບໍລິການແລະ ໜ່ວຍ ງານອື່ນໆໂດຍການດຶງພວກມັນຂື້ນກັບຄວາມເພິ່ງພາອາໃສ.

    ເພື່ອເບິ່ງເປົ້າ ໝາຍ ເລີ່ມຕົ້ນ, ພິມ ຄຳ ສັ່ງຂ້າງລຸ່ມນີ້.

    #systemctl get-default 
    
    graphical.target
    

    ເພື່ອ ກຳ ນົດເປົ້າ ໝາຍ ເລີ່ມຕົ້ນ, ໃຫ້ ດຳ ເນີນການ ຄຳ ສັ່ງດັ່ງລຸ່ມນີ້.

    # systemctl set-default multi-user.target  
    

    ວິທີການປ່ຽນເປົ້າ ໝາຍ (runlevel) ໃນ Systemd

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

    ເພື່ອປ່ຽນໄປ runlevel 3, ດຳ ເນີນການ ຄຳ ສັ່ງຕໍ່ໄປນີ້.

    # systemctl isolate multi-user.target 
    

    ເພື່ອປ່ຽນລະບົບໃຫ້ runlevel 5, ພິມ ຄຳ ສັ່ງຂ້າງລຸ່ມນີ້.

    # systemctl isolate graphical.target
    

    ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ systemd, ອ່ານຜ່ານບົດຄວາມທີ່ເປັນປະໂຫຍດເຫຼົ່ານີ້:

    <

  • ວິທີການບໍລິການແລະ ໜ່ວຍ ງານທີ່ໃຊ້ 'Systemdl' ໃນ Linux
  • ວິທີການສ້າງແລະ ດຳ ເນີນ ໜ່ວຍ ງານບໍລິການ ໃໝ່ ໃນ Systemd ໂດຍໃຊ້ Shell Script
  • ການຄຸ້ມຄອງຂັ້ນຕອນແລະການບໍລິການເລີ່ມຕົ້ນຂອງລະບົບ (SysVinit, Systemd ແລະ Upstart)
  • ຈັດການຂໍ້ຄວາມບັນທຶກພາຍໃຕ້ລະບົບທີ່ໃຊ້ລະບົບ Journalctl [ຄູ່ມືທີ່ສົມບູນແບບ]
  • ໃນຄູ່ມືນີ້, ພວກເຮົາໄດ້ສະແດງວິທີການປ່ຽນລະດັບ runlevel (ເປົ້າ ໝາຍ) ກັບ systemd. ໃຊ້ແບບຟອມ ຄຳ ເຫັນຂ້າງລຸ່ມນີ້ເພື່ອສົ່ງ ຄຳ ຖາມຫລືຄວາມຄິດໃດໆກ່ຽວກັບບົດຂຽນນີ້.