ಈಗಾಗಲೇ ಚಾಲನೆಯಲ್ಲಿರುವ ಸಹಾಯಕದ ಬಗ್ಗೆ ಬರುವ ಸಂದೇಶವನ್ನು ಜೀವನಚಕ್ರದ ಸುಳಿವಾಗಿ ಪರಿಗಣಿಸಿ, ಪ್ರಕ್ರಿಯೆಗಳನ್ನು ಕೊಲ್ಲಲು ಪ್ರಾರಂಭಿಸುವ ಅನುಮತಿಯಾಗಿ ಅಲ್ಲ. ಅಪಾಯಕಾರಿ ಹೆಜ್ಜೆ ನಿಲ್ಲಿಸುವುದಲ್ಲ, ಅದಕ್ಕೂ ಮೊದಲಿನ ಗುರುತಿಸುವಿಕೆ, ಏಕೆಂದರೆ ಒಂದೇ Mac ನಲ್ಲಿ ಸಮಾನ ಹೆಸರಿನ ಹಲವು ಘಟಕಗಳಿರಬಹುದು ಮತ್ತು ಅವುಗಳಲ್ಲಿ ಒಂದೇ ಸಂಪರ್ಕವನ್ನು ಹೊಂದಿದೆ. ಮೊದಲು ಗುರುತಿನ ದಾಖಲೆಯನ್ನು ನಿರ್ಮಿಸಿ. ನಂತರ ನಿಲ್ಲಿಸುವುದು ಸರಿಯಾದ ಕ್ರಮವೇ ಎಂದು ನಿರ್ಧರಿಸಿ.

ಕ್ರಮ ತೆಗೆದುಕೊಳ್ಳುವ ಮೊದಲು ಗುರುತಿನ ದಾಖಲೆ ನಿರ್ಮಿಸಿ

ನಾಲ್ಕು ಸಂಗತಿಗಳು ಪ್ರಕ್ರಿಯೆಯನ್ನು ಗುರುತಿಸಬಹುದಾದಂತೆ ಮಾಡುತ್ತವೆ: ಪ್ರಸ್ತುತ PID ಮತ್ತು ಅದರ ಪ್ರಾರಂಭದ ಸಮಯ, ಅದು ಸೇರಿರುವ ಎಕ್ಸಿಕ್ಯುಟೆಬಲ್ ಮತ್ತು ಉತ್ಪನ್ನ, ಅದು ಚಾಲನೆಯಾಗುವ ಬಳಕೆದಾರ ಅಥವಾ ಸವಲತ್ತು ಸಂದರ್ಭ, ಮತ್ತು ಅದನ್ನು ಪ್ರಾರಂಭಿಸಿದ ಯಾವುದೇ ವಸ್ತು. ps -o pid,ppid,user,etime,command -p 1234 ಮೊದಲ ಮೂರನ್ನು ಒಂದೇ ಸಾಲಿನಲ್ಲಿ ನೀಡುತ್ತದೆ, ಪ್ರಕ್ರಿಯೆ ಎಷ್ಟು ಕಾಲ ಬದುಕಿದೆ ಎಂಬುದೂ ಸೇರಿದಂತೆ. Activity Monitor ಅದೇ ಮಾಹಿತಿಯನ್ನು ಹೆಚ್ಚು ಸ್ನೇಹಪರ ಮುಖದೊಂದಿಗೆ ತೋರಿಸುತ್ತದೆ. ನಿಯಂತ್ರಕವನ್ನು ಸೇರಿಸಿ, ಅಂದರೆ ಅದನ್ನು ಪ್ರಾರಂಭಿಸುವ ಮತ್ತು ನಿಲ್ಲಿಸುವ ಜವಾಬ್ದಾರಿ ಹೊತ್ತ ಅಪ್ಲಿಕೇಶನ್ ಅಥವಾ ಸೇವೆ. ಈ ನಾಲ್ಕರೊಂದಿಗೆ ಪ್ರಕ್ರಿಯೆ ಹೆಸರಾಗಿರುವುದನ್ನು ನಿಲ್ಲಿಸಿ, ನೀವು ಯೋಚಿಸಬಹುದಾದ ವಸ್ತುವಾಗುತ್ತದೆ.

ನಾಲ್ಕರಲ್ಲಿ ಒಂದು ಅಪರಿಚಿತವಾಗಿದ್ದರೆ, ಅಲ್ಲೇ ನಿಲ್ಲಿಸಿ. ಅಪರಿಚಿತ ಘಟಕವು ಪ್ರಕಾಶಕ ಅಥವಾ ನಿರ್ವಾಹಕರಿಗೆ ಪ್ರಶ್ನೆ, ಪ್ರಯೋಗವಲ್ಲ.

ಹಳೆಯ ಲಾಗ್ನಲ್ಲಿರುವ PID ಈಗ ಬೇರೆಯವರದು

ಪ್ರಕ್ರಿಯೆ ID ಗಳನ್ನು ಮರುಬಳಕೆ ಮಾಡಲಾಗುತ್ತದೆ, ಮತ್ತು ನಿನ್ನೆಯ ಲಾಗ್ನಿಂದ ನಕಲಿಸಿದ ಸಂಖ್ಯೆ ಈಗ ಸಂಪೂರ್ಣ ಅಸಂಬಂಧಿತ ವಸ್ತುವನ್ನು ಸೂಚಿಸಬಹುದು. ಯಾವುದೇ ತೀರ್ಮಾನಕ್ಕೆ ಬರುವ ಮೊದಲು ಪ್ರಾರಂಭದ ಸಮಯವನ್ನು ಲಾಗ್ನ ಟೈಮ್ಸ್ಟ್ಯಾಂಪ್ನೊಂದಿಗೆ ಹೋಲಿಸಿ. ಸಣ್ಣ ಹೆಸರಿಗೂ ಇದೇ ಅನ್ವಯಿಸುತ್ತದೆ: ಒಂದೇ ಉತ್ಪನ್ನದ ಎರಡು ಬಿಲ್ಡ್ಗಳು ಒಂದೇ ಹೆಸರಿನ ಮತ್ತು ಬೇರೆ ಉದ್ದೇಶದ ಸಹಾಯಕಗಳನ್ನು ಕಳುಹಿಸಬಹುದು. ಗುರುತು ಎಂಬುದು ಟ್ಯೂಪಲ್, ಎಂದಿಗೂ ಕೇವಲ ಸಂಖ್ಯೆಯಲ್ಲ.

ಬೇರೆ ಯಾವುದನ್ನೂ ಮುಟ್ಟುವ ಮೊದಲು ಪಾತ್ರಗಳನ್ನು ಬೇರ್ಪಡಿಸಿ. ಒಂದೇ ಸಂಪರ್ಕದ ಕ್ಲೈಂಟ್, ಹಲವು ಅಪ್ಲಿಕೇಶನ್ಗಳಿಗೆ ಸೇವೆ ನೀಡುವ ಹಂಚಿದ ಸಹಾಯಕ, ಮತ್ತು ಇತರರ ಸೆಷನ್ಗಳನ್ನು ಸ್ವೀಕರಿಸುವ ಸರ್ವರ್—ಎಲ್ಲವೂ ಪಟ್ಟಿಯಲ್ಲಿ ಹಿನ್ನೆಲೆ ಪ್ರಕ್ರಿಯೆಯಂತೆ ಕಾಣುತ್ತವೆ. ಅವುಗಳಲ್ಲಿ ಒಂದನ್ನಷ್ಟೇ ನೀವು ಪರಿಗಣಿಸದ ಪರಿಣಾಮಗಳಿಲ್ಲದೆ ನಿಲ್ಲಿಸಬಹುದು.

ಸಿಗ್ನಲ್ನಿಂದಲ್ಲ, ಮಾಲೀಕರ ಮೂಲಕ ನಿಲ್ಲಿಸಿ

ವಸ್ತುವನ್ನು ಹೊಂದಿರುವ ನಿಯಂತ್ರಣದಿಂದ ಪ್ರಾರಂಭಿಸಿ: ಸಂಪರ್ಕದ ಸಂಪರ್ಕ ಕಡಿತ ಬಟನ್, ಸೇವೆಯ ಬೆಂಬಲಿತ ನಿಲ್ಲಿಸುವ ಆದೇಶ, ಅಥವಾ ನಿರ್ವಹಣಾ ಏಜೆಂಟ್ನ ಸ್ವಂತ ಕ್ರಮ. ಆ ಮಾರ್ಗಗಳು ಉತ್ಪನ್ನ ನಿರೀಕ್ಷಿಸುವ ವಿಘಟನೆಯನ್ನು ನಡೆಸುತ್ತವೆ, ಅದರಲ್ಲಿ ಮಾರ್ಗಗಳನ್ನು ತೆಗೆಯುವುದು ಮತ್ತು ಟನಲ್ ಸಾಧನವನ್ನು ಮುಚ್ಚುವುದು ಸೇರಿದೆ. ಸಿಗ್ನಲ್ ಎಲ್ಲವನ್ನೂ ಬಿಟ್ಟು ಹಿಂದೆ ಸ್ಥಿತಿ ಬಿಡುತ್ತದೆ.

ನಂತರ ಏನು ಉಳಿಯುತ್ತದೆ ಎಂದು ನೋಡಿ. ನೆನಪಿನಲ್ಲಿ ಉಳಿಯುವ ಪ್ರಕ್ರಿಯೆ ಮುಂದಿನ ಸಂಪರ್ಕಕ್ಕಾಗಿ ಕಾಯುತ್ತಿರಬಹುದು, ಇದು ವಿಫಲ ನಿಲ್ಲಿಸುವಿಕೆಯಲ್ಲ, ವಿನ್ಯಾಸದ ಆಯ್ಕೆ.

ಸೂಪರ್ವೈಸರ್ ನೀವು ಕೊಂದದ್ದನ್ನು ಮತ್ತೆ ಏಕೆ ಪ್ರಾರಂಭಿಸುತ್ತದೆ

ಲಾಂಚ್ ಡೀಮನ್ ಅಥವಾ ಸ್ವಯಂ-ಸಂಪರ್ಕ ನೀತಿ ಟನಲ್ ಆನ್ ಆಗಿರಬೇಕೆಂದು ಉದ್ದೇಶಿಸಿದರೆ, ಪ್ರಕ್ರಿಯೆಯನ್ನು ಕೊಲ್ಲುವುದು ಏನನ್ನೂ ವ್ಯಕ್ತಪಡಿಸುವುದಿಲ್ಲ. ಸೂಪರ್ವೈಸರ್ ನಿರ್ಗಮನವನ್ನು ನೋಡಿ ಅದನ್ನು ಮತ್ತೆ ಪ್ರಾರಂಭಿಸುತ್ತದೆ, ಕೆಲವೊಮ್ಮೆ ನೀವು ಲಾಗ್ ಓದಿ ಮುಗಿಸುವ ಮೊದಲೇ.

ಅದರೊಂದಿಗೆ ಹೋರಾಡುವ ಮೊದಲು ಸೂಪರ್ವೈಸರ್ ಹುಡುಕಿ. launchctl list ಲೋಡ್ ಆದ ಕೆಲಸಗಳು ಮತ್ತು ಅವುಗಳ ಲೇಬಲ್ಗಳನ್ನು ತೋರಿಸುತ್ತದೆ, ಮತ್ತು ಜೀವಂತವಾಗಿ ಇರಿಸುವ ಸೆಟ್ಟಿಂಗ್ ಇರುವ ಕೆಲಸ ನಿರ್ಗಮನದಲ್ಲಿ ವಿನ್ಯಾಸದ ಪ್ರಕಾರ ಮತ್ತೆ ಪ್ರಾರಂಭವಾಗುತ್ತದೆ. ಅಲ್ಲಿನ ಸರಿಯಾದ ಕ್ರಮ ಉದ್ದೇಶವನ್ನು ಬದಲಿಸುವುದು: ಕೆಲಸವನ್ನು ಅನ್ಲೋಡ್ ಮಾಡಿ, ಸ್ವಯಂ-ಸಂಪರ್ಕ ನೀತಿಯನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿ, ಅಥವಾ ನಿರ್ವಾಹಕರನ್ನು ಅದನ್ನು ಮಾಡಲು ಕೇಳಿ. ಬಲವಂತದ ಮುಕ್ತಾಯವು ಬೇರೆ ಅರ್ಥವಿರುವ ಬೇರೆ ಸಾಧನ, ಮತ್ತು ಅದು ಸಿಲುಕಿಕೊಂಡ ಪ್ರಕ್ರಿಯೆಗೆ ದಾಖಲಿತ ಚೇತರಿಕೆ ಕಾರ್ಯವಿಧಾನಕ್ಕೆ ಸೇರುತ್ತದೆ, ದಿನನಿತ್ಯದ ಸಂಪರ್ಕ ನಿರ್ವಹಣೆಗೆ ಅಲ್ಲ.

ಕೊಲ್ಲುವಿಕೆಯಲ್ಲ, ಜೀವನಚಕ್ರದ ಘಟನೆಯನ್ನು ದಾಖಲಿಸಿ

ಘಟಕದ ಗುರುತು, ಕ್ಲೈಂಟ್ ಆವೃತ್ತಿ, ಮೊದಲ ಸಂಬಂಧಿತ ಜೀವನಚಕ್ರ ಘಟನೆ, ಮತ್ತು ನೀವು ಏನು ಮಾಡಿದಿರಿ ಎಂಬುದನ್ನು ಬರೆಯಿರಿ. ಘಟನೆ ಕ್ರಮಕ್ಕಿಂತ ಹೆಚ್ಚು ಮುಖ್ಯ, ಏಕೆಂದರೆ ಲಾಗಿನ್ನಲ್ಲಿ ಎರಡು ಇನ್ಸ್ಟಾನ್ಸ್ ಕಾಣಿಸಿಕೊಳ್ಳುವುದು ಪುನರಾವರ್ತಿಸುವ ಸ್ಟಾರ್ಟಪ್ ಕ್ರಮದ ಸಮಸ್ಯೆ. ಎಕ್ಸಿಕ್ಯುಟೆಬಲ್ ಮತ್ತು ಅದರ ನಿಯಂತ್ರಕವನ್ನು ಹೆಸರಿಸುವ ದಾಖಲೆ ಮುಂದಿನ ವ್ಯಕ್ತಿಗೆ ಅದನ್ನು ಮರುಸೃಷ್ಟಿಸಲು ಅವಕಾಶ ನೀಡುತ್ತದೆ.

ನಂತರ ಉದ್ದೇಶಿತ ಸ್ಥಿತಿಯನ್ನು ಪರಿಶೀಲಿಸಿ: ಬಳಕೆದಾರರಿಗೆ ಬೇಕಾಗಿದ್ದ ಸೇವೆ, ಮತ್ತು ಅದು ತಲುಪುವ ಖಾಸಗಿ ಸಂಪನ್ಮೂಲ. ಸಬ್ಸ್ಟ್ರಿಂಗ್ grep ಮಾಡಿ ಪ್ರತಿ ಹೊಂದಿಕೆಯನ್ನು ಬಲವಂತವಾಗಿ ಕೊಲ್ಲುವ ಪೈಪ್ಲೈನ್ ತಪ್ಪಿಸಿ, ಏಕೆಂದರೆ ಅದು ಮೇಲಿನ ಎಲ್ಲವನ್ನೂ ಬಿಸಾಡಿ ಸಾಮಾನ್ಯವಾಗಿ ಎರಡು ಇನ್ಸ್ಟಾನ್ಸ್ ಏಕೆ ಇದ್ದವು ಎಂಬ ಸಾಕ್ಷ್ಯವನ್ನು ನಾಶಪಡಿಸುತ್ತದೆ. ಪ್ರಕ್ರಿಯೆ ಮತ್ತೆ ಬರುತ್ತಲೇ ಇದ್ದರೆ, ಕಂಡುಹಿಡಿದದ್ದು ಸಂರಚನೆ ಅಥವಾ ಕ್ರಮದ ದೋಷ, ಮತ್ತು ಸರಿಪಡಿಸುವಿಕೆ ಕ್ಲೈಂಟ್ನ ಸ್ಟಾರ್ಟಪ್ ನಡವಳಿಕೆಯ ಮಾಲೀಕರಿಗೆ ಸೇರುತ್ತದೆ.

ಸಂಬಂಧಿತ ಲೇಖನಗಳು