ಯುನಿಟ್ -.mount ಮಾಸ್ಕ್ ಆಗಿದೆ: OpenVPN ಕ್ಲೈಂಟ್ ಪ್ರಾರಂಭವಾಗುವುದಿಲ್ಲ
/run/systemd/system ನಲ್ಲಿ ಉಳಿದಿರುವ -.mount ಫೈಲ್ ರೂಟ್ ಮೌಂಟ್ ಯುನಿಟ್ ಅನ್ನು ಮಾಸ್ಕ್ ಮಾಡುತ್ತದೆ, ಆದ್ದರಿಂದ ಫೈಲ್ ಸಿಸ್ಟಂ ಅಗತ್ಯವಿರುವ ಪ್ರತಿಯೊಂದು ಯುನಿಟ್ OpenVPN ಪ್ರಾರಂಭವಾಗುವ ಮೊದಲೇ ವಿಫಲವಾಗುತ್ತದೆ.
ನಿಮ್ಮ ಸೇವೆ OpenVPN ಎಂದಿಗೂ ಚಾಲನೆಯಾಗುವ ಮೊದಲೇ ವಿಫಲವಾಗುತ್ತದೆ, ಮತ್ತು ದೋಷವು ನೀವು ಎಂದಿಗೂ ಕಾನ್ಫಿಗರ್ ಮಾಡದ ಮೌಂಟ್ ಯುನಿಟ್ ಬಗ್ಗೆ ಮಾತನಾಡುತ್ತದೆ. ಇದೇ ಸೂಚನೆ: systemd ಇಡೀ ವಹಿವಾಟನ್ನು ನಿರಾಕರಿಸುತ್ತಿದೆ ಏಕೆಂದರೆ ರೂಟ್ ಮೌಂಟ್ ಯುನಿಟ್ ಮಾಸ್ಕ್ ಆಗಿದೆ, ಮತ್ತು ನಿಮ್ಮ VPN ಪ್ರೊಫೈಲ್ ಇನ್ನೂ ಓದಿಲ್ಲ. ಸಾಮಾನ್ಯ ಕಾರಣ ರನ್ಟೈಮ್ ಯುನಿಟ್ ಡೈರೆಕ್ಟರಿಯಲ್ಲಿ ಉಳಿದಿರುವ ಫೈಲ್, ಮುರಿದ fstab ಅಲ್ಲ ಮತ್ತು ಕಾಣೆಯಾದ ಪ್ರಮಾಣಪತ್ರ ಅಲ್ಲ. ಮೊದಲು ಫೈಲ್ ಹಿಂಬಾಲಿಸಿ, ಏಕೆಂದರೆ ಅದನ್ನು ಹೊರಗಿಡುವುದು ಅಗ್ಗದ ವಿವರಣೆ.
ದೋಷವು ರೂಟ್ ಮೌಂಟ್ ಹೆಸರಿಸುತ್ತದೆ, ನಿಮ್ಮ ಪ್ರೊಫೈಲಲ್ಲ
systemd ಸ್ವತಃ ಕರ್ನಲ್ನ ಮೌಂಟ್ ಮಾಹಿತಿಯಿಂದ ರೂಟ್ ಮೌಂಟ್ ಯುನಿಟ್ ರಚಿಸುತ್ತದೆ ಮತ್ತು ಯುನಿಟ್ ಅನ್ನು -.mount ಎಂದು ಕರೆಯುತ್ತದೆ ಏಕೆಂದರೆ ಡ್ಯಾಶ್ ರೂಟ್ ಪಥವನ್ನು ಸೂಚಿಸುತ್ತದೆ. ಈ ಯುನಿಟ್ ಸಾಮಾನ್ಯವಾಗಿ ಮೆಮೊರಿಯಲ್ಲಿ ಮಾತ್ರ ಇರುತ್ತದೆ ಮತ್ತು ಅದರ ಹಿಂದೆ ಫೈಲ್ ಇರುವುದಿಲ್ಲ. ದೋಷವು ಅದು ಮಾಸ್ಕ್ ಆಗಿದೆ ಎಂದು ಹೇಳಿದಾಗ, ಯಾರೋ ಯುನಿಟ್ ಫೈಲ್ ಅನ್ನು systemd ಲೋಡ್ ಮಾಡುವ ಸ್ಥಳದಲ್ಲಿ ಇಟ್ಟು ಆ ಫೈಲ್ ಅನ್ನು /dev/null ಕಡೆಗೆ ತೋರಿಸಿದ್ದಾರೆ. ಮಾಸ್ಕ್ ಆಗಿರುವುದು ನಿಜವಾದ ಸ್ಥಿತಿ, ಸಂದೇಶದಲ್ಲಿ ಟೈಪಿಂಗ್ ತಪ್ಪಲ್ಲ.
ಇನ್ಸ್ಟನ್ಸ್ ಯುನಿಟ್ ವಿಫಲವಾಗುತ್ತದೆ ಏಕೆಂದರೆ ಅದರ ಜಾಬ್ ಗ್ರಾಫ್ ಕ್ರಮ ಮತ್ತು ತನ್ನದೇ ಮೌಂಟ್ ಅಗತ್ಯಗಳ ಮೂಲಕ ರೂಟ್ ಮೌಂಟ್ ತಲುಪುತ್ತದೆ. OpenVPN ಬೈನರಿ ಚಾಲನೆಯಾಗುವ ಮೊದಲೇ ವಹಿವಾಟು ನಿರಾಕರಿಸಲ್ಪಡುತ್ತದೆ, ಆದ್ದರಿಂದ ಕ್ಲೈಂಟ್ನ ಸಂರಚನೆಯಲ್ಲಿ ಯಾವುದೂ ಕಾರಣವಾಗಿರಲು ಸಾಧ್ಯವಿಲ್ಲ. ಆದ್ದರಿಂದ ಪ್ರೊಫೈಲ್, ಪ್ರಮಾಣಪತ್ರ ಅಥವಾ ರುಜುವಾತುಗಳನ್ನು ಬದಲಿಸುವುದು ಈ ನಿರ್ದಿಷ್ಟ ವೈಫಲ್ಯದ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರುವುದಿಲ್ಲ.
OpenVPN ಡೀಬಗ್ ಮಾಡುವ ಮೊದಲು ರನ್ಟೈಮ್ ಡೈರೆಕ್ಟರಿ ನೋಡಿ
ರನ್ಟೈಮ್ ಯುನಿಟ್ ಡೈರೆಕ್ಟರಿಯಲ್ಲಿ ನಿಖರವಾಗಿ ಆ ಹೆಸರಿನ ಫೈಲ್ ಹುಡುಕಿ, ನಂತರ systemd ಅನ್ನು ಯುನಿಟ್ ಏನೆಂದು ಭಾವಿಸುತ್ತದೆ ಎಂದು ಕೇಳಿ. ಎರಡೂ ಉತ್ತರಗಳು ತ್ವರಿತ, ಮತ್ತು ಒಟ್ಟಾಗಿ ಉಳಿದ ಫೈಲ್ ಅನ್ನು ನಿಜವಾದ ಮೌಂಟ್ ಸಮಸ್ಯೆಯಿಂದ ಬೇರ್ಪಡಿಸುತ್ತವೆ.
ls -l /run/systemd/system/-.mount
systemctl status -.mount
systemctl list-unit-files --state=masked | grep mount
ಸಾಮಾನ್ಯ ಯಂತ್ರದಲ್ಲಿ ಅಂತಹ ಫೈಲ್ ಇರುವುದಿಲ್ಲ, ಮತ್ತು ಮಾಸ್ಕ್ ಆದ ಪಟ್ಟಿಯಲ್ಲಿ ರೂಟ್ ಮೌಂಟ್ ಇರುವುದಿಲ್ಲ. ಮೊದಲ ಆಜ್ಞೆ /dev/null ಗೆ ಸಿಂಬಾಲಿಕ್ ಲಿಂಕ್ ಮುದ್ರಿಸಿದರೆ, ರೋಗನಿರ್ಣಯ ಖಚಿತ. ಅದೇ ಡೈರೆಕ್ಟರಿಯಲ್ಲಿ ಅದೇ ಉಪಕರಣಗಳಿಂದ ರಚಿಸಲಾದ tmp.mount ಮಾಸ್ಕ್ ಕೂಡ ಇರಬಹುದು, ಮತ್ತು ಅದು ಬೇರೆ ಹೆಸರಿನಲ್ಲಿ ಅದೇ ರೀತಿಯ ವೈಫಲ್ಯ ಉಂಟುಮಾಡುತ್ತದೆ. ಇಡೀ ಡೈರೆಕ್ಟರಿ ನೋಡಿ, ದೋಷದಲ್ಲಿನ ಹೆಸರನ್ನು ಮಾತ್ರವಲ್ಲ.
ls -la /run/systemd/system/*.mount
ಡೈರೆಕ್ಟರಿ ಸ್ವಚ್ಛವಾಗಿದ್ದು ಯುನಿಟ್ ಇನ್ನೂ ಮಾಸ್ಕ್ ಆಗಿದ್ದರೆ, ಮಾಸ್ಕ್ ಹುಡುಕಾಟ ಮಾರ್ಗದ ಬೇರೆಡೆ ಇದೆ, ಮತ್ತು systemctl cat -.mount ಯಾವ ಫೈಲ್ ಲೋಡ್ ಆಗುತ್ತಿದೆ ಎಂದು ತೋರಿಸುತ್ತದೆ.
ಫೈಲ್ ಅಳಿಸಿ, ಮತ್ತೆ ಲೋಡ್ ಮಾಡಿ ಮತ್ತು ಮತ್ತೆ ಪ್ರಾರಂಭಿಸಿ
ರನ್ಟೈಮ್ ಫೈಲ್ ತೆಗೆದು ಮ್ಯಾನೇಜರ್ ಅನ್ನು ಮತ್ತೆ ಲೋಡ್ ಮಾಡುವುದು ಸಾಕು, ಮತ್ತು ಅದು ಪ್ಯಾಕೇಜ್ನಿಂದ ಬಂದ ಯಾವುದನ್ನೂ ಮುಟ್ಟುವುದಿಲ್ಲ. ಪ್ರಾರಂಭಿಸುವ ಮೊದಲು ಮತ್ತೆ ಲೋಡ್ ಮಾಡಿ, ಏಕೆಂದರೆ systemd ಡೈರೆಕ್ಟರಿ ಮತ್ತೆ ಓದುವವರೆಗೆ ಲೋಡ್ ಆದ ಯುನಿಟ್ನ ಸ್ಥಿತಿಯನ್ನು ಇಟ್ಟುಕೊಳ್ಳುತ್ತದೆ.
sudo rm -f /run/systemd/system/-.mount /run/systemd/system/tmp.mount
sudo systemctl daemon-reload
systemctl status -.mount
sudo systemctl start [email protected]
ನಂತರ ಸರಿಪಡಿಸುವಿಕೆ ಕೆಲಸ ಮಾಡಿತು ಎಂದು ಭಾವಿಸುವ ಬದಲು ಸೇವೆಯ ಸ್ವಂತ ಜರ್ನಲ್ ಓದಿ. ಸ್ವಚ್ಛ ಪ್ರಾರಂಭವು systemd ಯುನಿಟ್ ಸ್ವೀಕರಿಸಿದೆ ಎಂದು ಮಾತ್ರ ಸಾಬೀತುಪಡಿಸುತ್ತದೆ; ಕ್ಲೈಂಟ್ ಇನ್ನೂ ಕಾಣೆಯಾದ ಪ್ರೊಫೈಲ್, ತಲುಪಲಾಗದ ಸಹವರ್ತಿ ಅಥವಾ ಪರಿಶೀಲಿಸದ ಪ್ರಮಾಣಪತ್ರದಿಂದ ಸಾಯಬಹುದು. ಇವು ಮಾಸ್ಕ್ ಯುನಿಟ್ನ ಹಿಂದೆ ಅಡಗಿದ್ದ OpenVPN ನ ಸಾಮಾನ್ಯ ಸಮಸ್ಯೆಗಳು. ಜರ್ನಲ್ ಯಾವ ಪ್ರೊಫೈಲ್ ಲೋಡ್ ಆಯಿತು ಮತ್ತು ಸುರಂಗ ನಿಜವಾಗಿ ನಿರ್ಮಾಣವಾಯಿತೇ ಎಂದು ದಾಖಲಿಸುತ್ತದೆ. ಯುನಿಟ್ ಪ್ರಾರಂಭವಾಗಿ ಸುರಂಗ ಬಾರದಿದ್ದರೆ, ನೀವು ಬೇರೆ ಸಮಸ್ಯೆಗೆ ಹೋಗಿದ್ದೀರಿ, ಮತ್ತು ಅದು ಪ್ರಗತಿ.
journalctl -u [email protected] -b --no-pager
/run ತಾತ್ಕಾಲಿಕ ಫೈಲ್ ಸಿಸ್ಟಂ ಆಗಿರುವುದರಿಂದ, ರೀಬೂಟ್ ಫೈಲ್ ಅನ್ನೂ ಅಳಿಸುತ್ತದೆ. ಇದು ರೀಬೂಟ್ ಅನ್ನು ಉಪಯುಕ್ತ ಪರೀಕ್ಷೆಯನ್ನಾಗಿಸುತ್ತದೆ: ಸೇವೆ ರೀಬೂಟ್ ನಂತರ ಕೆಲಸ ಮಾಡಿ ಮುಂದಿನ ನಿಯೋಜನೆಯ ನಂತರ ಮತ್ತೆ ವಿಫಲವಾದರೆ, ಫೈಲ್ ಇಮೇಜ್ನಲ್ಲಿ ಬೇಯಿಸಲ್ಪಡುತ್ತಿದೆ.
ಅದು ಇಮೇಜ್ನಿಂದ ಹಿಂತಿರುಗುವುದನ್ನು ತಡೆಯಿರಿ
ನಿರ್ಮಾಣದ ಸಮಯದಲ್ಲಿ ಮೌಂಟ್ ಯುನಿಟ್ಗಳನ್ನು ಮಾಸ್ಕ್ ಮಾಡುವ ಕಂಟೇನರ್ ಅಥವಾ ವರ್ಚುವಲ್ ಮೆಷಿನ್ ಟೆಂಪ್ಲೇಟ್ ಆ ಮಾಸ್ಕ್ ಅನ್ನು ಪ್ರತಿ ಕ್ಲೋನ್ಗೆ ಒಯ್ಯುತ್ತದೆ. ಮುಂದೆ ಫೈಲ್ ಸಿಸ್ಟಂ ಬೇಕಾದದ್ದು ಮುರಿಯುತ್ತದೆ, ಮತ್ತು ಸಂದೇಶವು ಬಂದ ಇಮೇಜ್ನ ಬದಲು ಮೌಂಟ್ ಅನ್ನು ದೂಷಿಸುತ್ತದೆ. ಒಂದು ಚಾಲನೆಯಲ್ಲಿರುವ ಇನ್ಸ್ಟನ್ಸ್ ಒಳಗೆ ಸರಿಪಡಿಸುವುದು ಮುಂದಿನ ಇನ್ಸ್ಟನ್ಸ್ ರಚನೆಯವರೆಗೆ ಸಮಸ್ಯೆಯನ್ನು ಮರೆಮಾಡುತ್ತದೆ.
ನಿರ್ಮಾಣ ಸಂದರ್ಭದಲ್ಲಿ ಫೈಲ್ನ ಹೆಸರು ಮತ್ತು ಅದನ್ನು ರಚಿಸುವ ಆಜ್ಞೆಯನ್ನು ಹುಡುಕಿ, ನಂತರ ಟೆಂಪ್ಲೇಟ್ನಿಂದ ಮಾಸ್ಕ್ ತೆಗೆದು ಮತ್ತೆ ನಿರ್ಮಿಸಿ. ಮಾಸ್ಕ್ ನಿರ್ಮಾಣದ ಸಮಯದಲ್ಲಿ ನಿಜವಾಗಿಯೂ ಬೇಕಾದರೆ, ನಿರ್ಮಾಣ ಮುಗಿಸುವ ಅದೇ ಪದರದಲ್ಲಿ ಅದನ್ನು ತೆಗೆಯಿರಿ, ಇದರಿಂದ ಕಳುಹಿಸುವ ಇಮೇಜ್ ಸ್ವಚ್ಛವಾಗಿ ಪ್ರಾರಂಭವಾಗುತ್ತದೆ. ಹೊಸ ಕ್ಲೋನ್ನಲ್ಲಿ ಪರಿಶೀಲಿಸಿ, ಕೈಯಿಂದ ಸರಿಪಡಿಸಿದ ಯಂತ್ರದಲ್ಲಿ ಅಲ್ಲ. ಇಮೇಜ್ ಬದಲಾಯಿತು ಎಂದು ಸಾಬೀತುಪಡಿಸುವ ಏಕೈಕ ಪರೀಕ್ಷೆ ಅದು.
ನೆನಪಿಡಬೇಕಾದ ಲಕ್ಷಣ ದೋಷ ಮತ್ತು ನೀವು ಕಾನ್ಫಿಗರ್ ಮಾಡುತ್ತಿದ್ದ ವಸ್ತುವಿನ ನಡುವಿನ ವ್ಯತ್ಯಾಸ. systemd ಮೌಂಟ್ ಬಗ್ಗೆ ದೂರಿದಾಗ ಮತ್ತು ನೀವು VPN ಕ್ಲೈಂಟ್ ಪ್ರಾರಂಭಿಸುತ್ತಿದ್ದಾಗ, ಮೊದಲು ಸಂದೇಶದಲ್ಲಿನ ಯುನಿಟ್ ಹೆಸರು ಓದಿ, ನಂತರ ಸೇವೆಯ ಹೆಸರು.