ಒಂದೇ ವಿಫಲ Squid ಪ್ರಾರಂಭದ ವೇಳೆ Could not read pid file ಮತ್ತು shm_open(...): Permission denied ಎರಡೂ ಕಾಣಿಸಬಹುದು. ಅವು ಬೇರೆ ಬೇರೆ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಸೂಚಿಸುತ್ತವೆ. ಕ್ಯಾಶ್ ಡೈರೆಕ್ಟರಿಯ ಒಡೆತನ ಸರಿಪಡಿಸುವುದು ತಾನಾಗಿಯೇ ಇವುಗಳಲ್ಲಿ ಯಾವುದನ್ನೂ ಸರಿಪಡಿಸುವುದಿಲ್ಲ.

Linux ನಲ್ಲಿ POSIX ಹಂಚಿದ ಮೆಮೊರಿ ಆಬ್ಜೆಕ್ಟ್ ಸಾಮಾನ್ಯವಾಗಿ /dev/shm ಅಡಿಯಲ್ಲಿ ನಿರೂಪಿಸಲ್ಪಡುತ್ತದೆ. ಅದರ ಮಾಲೀಕ ಮತ್ತು ಪ್ರವೇಶ ಮೋಡ್ ಮುಖ್ಯ. ಆದ್ದರಿಂದ ಬೇರೆ ರನ್ಟೈಮ್ ಗುರುತು ಬಿಟ್ಟ ಆಬ್ಜೆಕ್ಟ್ ನಂತರದ ಪ್ರಕ್ರಿಯೆಯನ್ನು ವಿಫಲಗೊಳಿಸಬಹುದು, squid.conf ಓದಬಲ್ಲದಾಗಿದ್ದು ಕೇಳುವ ಪೋರ್ಟ್ ಮುಕ್ತವಾಗಿದ್ದರೂ ಸಹ.

ಈ ಇನ್ಸ್ಟೆನ್ಸ್ ಹೇಗೆ ಪ್ರಾರಂಭವಾಯಿತು ಎಂಬುದನ್ನು ಮರುನಿರ್ಮಿಸಿ

ಸೇವೆಯ ಸಾಮಾನ್ಯ ಪ್ರಾರಂಭವನ್ನು ದೋಷನಿವಾರಣೆಯಲ್ಲಿ ಬಳಸಿದ ಯಾವುದೇ ಕೈಯಿಂದ ಪ್ರಾರಂಭದೊಂದಿಗೆ ಹೋಲಿಸಿ. ಕೈಯಿಂದ ಪ್ರಾರಂಭಿಸಿದ ಪ್ರಕ್ರಿಯೆ ಮತ್ತು ಪ್ಯಾಕೇಜ್ ಮಾಡಿದ ಸೇವೆ ಬೇರೆ ಬೇರೆ ಬಳಕೆದಾರರು, ಮಾರ್ಗಗಳು ಅಥವಾ ಸಂರಚನಾ ಫೈಲ್ಗಳನ್ನು ಬಳಸಬಹುದು. ಆಬ್ಜೆಕ್ಟ್ ಅನ್ನು ಹಳೆಯದು ಎಂದು ಪರಿಗಣಿಸುವ ಮೊದಲು ಇನ್ನೊಂದು Squid ಇನ್ಸ್ಟೆನ್ಸ್ ಇನ್ನೂ ಚಾಲನೆಯಲ್ಲಿದೆಯೇ ಎಂದು ನಿರ್ಧರಿಸಿ.

ನಂತರ ವಿಫಲವಾಗುತ್ತಿರುವ ನಿಖರ ಕಾರ್ಯಾಚರಣೆಯನ್ನು ಓದಿ. PID ದೋಷವು ಸಂರಚಿಸಿದ PID ಸ್ಥಳ ಮತ್ತು ಅದರ ಮೂಲ ಡೈರೆಕ್ಟರಿಗೆ ಸಂಬಂಧಿಸಿದೆ. ಲಾಗ್ ದೋಷವು ಲಾಗ್ ಫೈಲ್ ಅಥವಾ ಡೈರೆಕ್ಟರಿಗೆ ಸಂಬಂಧಿಸಿದೆ. ಕ್ಯಾಶ್ ಪ್ರಾರಂಭದ ದೋಷವು ಸಂಗ್ರಹಣೆಗೆ ಸಂಬಂಧಿಸಿದೆ. shm_open ದೋಷವು ಹೆಸರಿಸಿದ ಹಂಚಿದ ಮೆಮೊರಿ ಆಬ್ಜೆಕ್ಟ್ಗೆ ಸಂಬಂಧಿಸಿದೆ ಮತ್ತು ಪ್ರಕ್ರಿಯೆಗೆ ಅನ್ವಯಿಸುವ ಭದ್ರತಾ ನೀತಿಯನ್ನೂ ಒಳಗೊಳ್ಳಬಹುದು.

ಪ್ರತಿ ಸಂಪನ್ಮೂಲಕ್ಕೂ ಅಗತ್ಯವಿರುವ ರನ್ಟೈಮ್ ಪ್ರವೇಶವನ್ನು ಅದರ ಪ್ರಸ್ತುತ ಮಾಲೀಕ ಮತ್ತು ಮೋಡ್ನೊಂದಿಗೆ ಹೋಲಿಸಿ. ಸಾಮಾನ್ಯ ಅನುಮತಿಗಳು ಸಾಕಷ್ಟು ಎನಿಸಿದರೆ, ಸಂಬಂಧಿತ SELinux ಅಥವಾ AppArmor ನಿರಾಕರಣೆ ಸಾಕ್ಷ್ಯವನ್ನು ಪರಿಶೀಲಿಸಿ. ಕೇವಲ “Permission denied” ಯಾವ ಪದರವು ಪ್ರವೇಶ ನಿರಾಕರಿಸಿತು ಎಂದು ತಿಳಿಸುವುದಿಲ್ಲ.

ಎರಡನೇ ಸಮಸ್ಯೆ ಸೃಷ್ಟಿಸದೆ ಒಡೆತನ ಸರಿಪಡಿಸಿ

ರನ್ಟೈಮ್ ಖಾತೆಯನ್ನು ಸ್ಥಾಪನೆಯ ಸೇವಾ ಸಂರಚನೆಗೆ ಹೊಂದಿಸಿ ಇರಿಸಿ. ಎಲ್ಲವನ್ನೂ nobody ಗೆ ಬದಲಿಸುವುದು ಸಹಾಯಕ ಪ್ರವೇಶವನ್ನು ಮುರಿಯಬಹುದು ಮತ್ತು ಸೇವೆ ನಿರ್ವಹಿಸುವ ಫೈಲ್ಗಳೊಂದಿಗೆ ಹೊಸ ಅಸಂಗತಿ ತರಬಹುದು.

/dev/shm ನಲ್ಲಿ Squid ತರಹದ ಪ್ರತಿ ಆಬ್ಜೆಕ್ಟ್ ಅನ್ನು ಅಳಿಸುವುದೂ ಉತ್ತಮ ಮೊದಲ ಹೆಜ್ಜೆ ಅಲ್ಲ. ಹೆಸರಿಸಿದ ಆಬ್ಜೆಕ್ಟ್ ಸಕ್ರಿಯ ಇನ್ಸ್ಟೆನ್ಸ್ಗೆ ಸೇರಿರಬಹುದು. ಅಗತ್ಯವಿದ್ದರೆ ಸ್ವಚ್ಛಗೊಳಿಸುವಿಕೆ, ಪೀಡಿತ ಸೇವೆ ನಿಲ್ಲಿಸಿದ ಸ್ಥಿತಿಯಲ್ಲಿ ದೃಢೀಕೃತ ತ್ಯಜಿಸಿದ ಸಂಪನ್ಮೂಲವನ್ನು ಗುರಿಯಾಗಿಸಬೇಕು, ನಂತರ ಸಾಮಾನ್ಯ ಸೇವಾ ಕಾರ್ಯವಿಧಾನದ ಮೂಲಕ ಪ್ರಾರಂಭಿಸಬೇಕು.

ಉಪಯುಕ್ತ ಫಲಿತಾಂಶ ಸುಸಂಗತ ಪ್ರಾರಂಭ ಮತ್ತು ಒಡೆತನದ ಮಾದರಿ. ದೋಷ ಮಾಯವಾಗುವವರೆಗೆ root ಆಗಿ ಒಂದು ಆಜ್ಞೆ ಚಲಾಯಿಸುವುದು ಮುಂದಿನ ನಿಯಮಿತ ಮರುಪ್ರಾರಂಭವನ್ನು ಅದೇ ಸಮಸ್ಯೆಯೊಂದಿಗೆ ಬಿಟ್ಟುಬಿಡಬಹುದು.

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