‘ಅದನ್ನು ಹಿನ್ನೆಲೆಯಲ್ಲಿ ಚಲಾಯಿಸಿ’ ಎಂಬ ಪದಗುಚ್ಛದಲ್ಲಿ ಎರಡು ಪ್ರಶ್ನೆಗಳು ಅಡಗಿವೆ. ಮೊದಲನೆಯದು ಈ ಬಳಕೆದಾರರು ವಿಶೇಷ ಹಕ್ಕುಗಳ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಪ್ರಾರಂಭಿಸಬಹುದೇ ಎಂಬುದು; ಎರಡನೆಯದು ಯಾರೂ ಟರ್ಮಿನಲ್ನಲ್ಲಿ ಟೈಪ್ ಮಾಡದೆಯೇ ಸೆಷನ್ ಮುಂದುವರಿಯಬಹುದೇ ಎಂಬುದು. ಶೆಲ್ನ ಆಂಪರ್ಸ್ಯಾಂಡ್ ಎರಡಕ್ಕೂ ಉತ್ತರಿಸುವುದಿಲ್ಲ, ಮತ್ತು sudo ಪಾಸ್ವರ್ಡ್ ಅನ್ನು ವೇರಿಯೇಬಲ್ನಲ್ಲಿ ಇಡುವ ಸ್ಕ್ರಿಪ್ಟ್ ಮೊದಲನೆಯದಕ್ಕೆ ಕೆಟ್ಟದಾಗಿ ಉತ್ತರಿಸಿ ಎರಡನೆಯದನ್ನು ಮುಟ್ಟದೆ ಬಿಡುತ್ತದೆ. ಅವುಗಳನ್ನು ಬೇರ್ಪಡಿಸಿ, ಆಗ ಆಯ್ಕೆಗಳನ್ನು ಹೋಲಿಸುವುದು ಸುಲಭವಾಗುತ್ತದೆ.

ಮೂರು ಅಭ್ಯರ್ಥಿಗಳನ್ನು ಮಾಲೀಕತ್ವದ ಆಧಾರದಲ್ಲಿ ಹೋಲಿಸಿ, ಅನುಕೂಲದ ಆಧಾರದಲ್ಲಿ ಅಲ್ಲ.

ಟರ್ಮಿನಲ್ ಬಿಡುವ ಮೂರು ದಾರಿಗಳು, ಮೂರು ವಿಭಿನ್ನ ಮಾಲೀಕರು

ಆದೇಶಕ್ಕೆ ಆಂಪರ್ಸ್ಯಾಂಡ್ ಸೇರಿಸಿದರೆ ಶೆಲ್ ಅದನ್ನು ಹಿನ್ನೆಲೆ ಕೆಲಸವಾಗಿ ಚಲಾಯಿಸುತ್ತದೆ, ಮತ್ತು ಕೆಲಸವು ಇನ್ನೂ ಅದೇ ಶೆಲ್ಗೆ ಸೇರಿದೆ. ಪ್ರೋಗ್ರಾಂ ಪ್ರಾರಂಭವಾಗುವ ಮೊದಲೇ sudo ಕೇಳಬಹುದು, ಮತ್ತು OpenVPN ನಂತರ ಕೀ ಪಾಸ್ಫ್ರೇಸ್ ಅಥವಾ ಲಾಗಿನ್ಗಾಗಿ ಕೇಳಬಹುದು. ಇನ್ಪುಟ್ ನಿರೀಕ್ಷಿಸುವ ಆದೇಶವನ್ನು ಹಿನ್ನೆಲೆಗೆ ಹಾಕಿದರೆ ಯಾರೂ ನೋಡದ ಟರ್ಮಿನಲ್ಗಾಗಿ ಕಾಯುವ ಪ್ರಕ್ರಿಯೆ ಉಂಟಾಗುತ್ತದೆ. ಟರ್ಮಿನಲ್ ಬಿಡುಗಡೆಯಾಗುತ್ತದೆ; ಸಂವಹನವಲ್ಲ.

ಇದು ಅಗ್ಗದ ಆಯ್ಕೆ ಮತ್ತು ಅತ್ಯಂತ ಗೊಂದಲಮಯವಾಗಿ ವಿಫಲವಾಗುವ ಆಯ್ಕೆ, ಏಕೆಂದರೆ ಪ್ರಾಂಪ್ಟ್ ನಿರ್ವಾಹಕರು ಈಗಾಗಲೇ ಬಿಟ್ಟ ಸ್ಥಳದಲ್ಲಿ ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತದೆ.

sudo -b ರುಜುವಾತು ನಿರ್ವಾಹಕವಲ್ಲ

sudo -b sudo ದೃಷ್ಟಿಕೋನದಿಂದ ಆದೇಶವನ್ನು ಹಿನ್ನೆಲೆಯಲ್ಲಿ ಚಲಾಯಿಸುತ್ತದೆ, ಇದು ಕಾಣೆಯಾದ ವೈಶಿಷ್ಟ್ಯದಂತೆ ಕೇಳಿಸುತ್ತದೆ, ಆದರೆ ಹಾಗಲ್ಲ. sudo ಕೈಪಿಡಿಯ ಪ್ರಕಾರ, ಆ ಮೋಡ್ನಲ್ಲಿ ಸಂವಾದಾತ್ಮಕ ಆದೇಶಗಳು ಸಾಮಾನ್ಯವಾಗಿ ಕೆಟ್ಟದಾಗಿ ವರ್ತಿಸುತ್ತವೆ, ಮತ್ತು ಶೆಲ್ ಕೆಲಸ ನಿಯಂತ್ರಣವು ಅದು ರಚಿಸುವ ಪ್ರಕ್ರಿಯೆಗಳನ್ನು ನಿರ್ವಹಿಸಲಾರದು. ಪ್ರಶ್ನೆಗಳಿಗೆ ಉತ್ತರಿಸುವ ದಾರಿ ನೀಡದೆ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಸರಿಸುತ್ತದೆ. ಅದರಲ್ಲಿ ಖಾಸಗಿ ಕೀ ಪಾಸ್ಫ್ರೇಸ್ ಅಥವಾ ಗೇಟ್ವೇ ಲಾಗಿನ್ ಒದಗಿಸುವ ಯಾವುದೂ ಇಲ್ಲ.

ಸಂಪರ್ಕಕ್ಕೆ ಸಂವಹನ ಬೇಕಿದ್ದರೆ, ಪರಿಹಾರವೆಂದರೆ ಬೆಂಬಲಿತ ಸಂವಾದರಹಿತ ದೃಢೀಕರಣ ವ್ಯವಸ್ಥೆ, ಅದೇ ಪ್ರಾಂಪ್ಟ್ ಪ್ರಾರಂಭಿಸುವ ಬೇರೆ ದಾರಿಯಲ್ಲ.

--daemon ಪ್ರೋಗ್ರಾಂ ಬದಲಾಯಿಸುತ್ತದೆ, ಲಾಗಿನ್ ಅಲ್ಲ

--daemon ಇನಿಶಿಯಲೈಸೇಶನ್ ನಂತರ ಬೇರ್ಪಡಲು OpenVPN ಗೆ ಹೇಳುತ್ತದೆ. 2.6 ಕೈಪಿಡಿ syslog ಮರುನಿರ್ದೇಶನವು ಆಯ್ಕೆ ಪಾರ್ಸ್ ಆಗುವಾಗಲೇ ನಡೆಯುತ್ತದೆ ಎಂದು ಗಮನಿಸುತ್ತದೆ, ಆದರೂ ಬೇರ್ಪಡುವಿಕೆ ನಂತರ ನಡೆಯುತ್ತದೆ, ಆದ್ದರಿಂದ ಸಂದೇಶಗಳು ನಿರೀಕ್ಷಿಸಿದ್ದಕ್ಕಿಂತ ಮೊದಲೇ ಟರ್ಮಿನಲ್ನಲ್ಲಿ ಕಾಣಿಸುವುದನ್ನು ನಿಲ್ಲಿಸಬಹುದು. ಆ ಹಂತದ ನಂತರದ ಮೌನ ಟನೆಲ್ ಬಗ್ಗೆ ಏನನ್ನೂ ಸಾಬೀತುಪಡಿಸುವುದಿಲ್ಲ. ಸ್ಪಷ್ಟವಾದ --log ಅಥವಾ --log-append ಸೇರಿಸಿ ಇದರಿಂದ ಔಟ್ಪುಟ್ ನೀವು ಓದಬಹುದಾದ ಸ್ಥಳಕ್ಕೆ ತಲುಪುತ್ತದೆ.

ಡೀಮನ್ ಮೋಡ್ ಕನ್ಸೋಲ್ ಅನ್ನೂ ಶಾಶ್ವತವಾಗಿ ತೆಗೆದುಹಾಕುತ್ತದೆ. ಸಂರಕ್ಷಿತ ಖಾಸಗಿ ಕೀಗೆ ಆ ಮೋಡ್ನಲ್ಲಿ askpass ಬೇಕು, ಮತ್ತು ಕನ್ಸೋಲ್ನಿಂದ ನಮೂದಿಸಿದ ರುಜುವಾತುಗಳು ಕ್ಯಾಶಿಂಗ್ ಆಯ್ಕೆಗಳೊಂದಿಗೆ ಸೇರಿ ನಂತರದ ಮರುದೃಢೀಕರಣಕ್ಕೆ ಕೇಳಲು ಸ್ಥಳವಿಲ್ಲದಂತೆ ಬಿಡಬಹುದು. ಹಿನ್ನೆಲೆ ಪ್ರಾರಂಭವು ತನ್ನ ಮೊದಲ ಕೀ ನವೀಕರಣವನ್ನು ತಾಳಿಕೊಳ್ಳುತ್ತದೆ ಎಂದು ಊಹಿಸುವ ಮೊದಲು ಸ್ಥಾಪಿತ ಆವೃತ್ತಿಯ ವಿರುದ್ಧ ದೃಢೀಕರಣ ಮಾದರಿಯನ್ನು ಪರಿಶೀಲಿಸಿ.

sudo ಪರಿಶೀಲನೆ ಏನು ಕೊಡುತ್ತದೆ ಮತ್ತು ಏನು ಕೊಡುವುದಿಲ್ಲ

sudo -v ಕ್ಯಾಶ್ ಮಾಡಿದ ಸ್ಥಳೀಯ ರುಜುವಾತನ್ನು ಮಾನ್ಯಗೊಳಿಸುತ್ತದೆ ಅಥವಾ ರಿಫ್ರೆಶ್ ಮಾಡುತ್ತದೆ, ನೀತಿ ಬೇಡಿದರೆ ದೃಢೀಕರಿಸುತ್ತದೆ. ಅದು OpenVPN ಅನ್ನು ಪ್ರಾರಂಭಿಸುವುದಿಲ್ಲ, ಗೇಟ್ವೇಯೊಂದಿಗೆ ದೃಢೀಕರಿಸುವುದಿಲ್ಲ, ಮತ್ತು ಸ್ಕ್ರಿಪ್ಟ್ನ ನಂತರದ ಆದೇಶಕ್ಕೆ ಅನುಮತಿ ಸಿಗುತ್ತದೆ ಎಂಬ ಭರವಸೆ ನೀಡುವುದಿಲ್ಲ. sudo -n ವಿರುದ್ಧ ಅರ್ಥ ನೀಡುತ್ತದೆ: ಕೇಳಬೇಡ, ವಿಫಲವಾಗು. ಇದು ಸ್ಥಳೀಯ ಅನುಮೋದನೆ ವೈಫಲ್ಯವನ್ನು ಸ್ಪಷ್ಟಗೊಳಿಸುತ್ತದೆ, ಅದು ಉಪಯುಕ್ತ, ಮತ್ತು OpenVPN ನಂತರ ಏನು ಕೇಳುತ್ತದೆ ಎಂಬುದರ ಬಗ್ಗೆ ಏನನ್ನೂ ಹೇಳುವುದಿಲ್ಲ.

ಎರಡೂ ಆಯ್ಕೆಗಳಲ್ಲಿ ಯಾವುದೂ ಎಲ್ಲರಿಗೂ ಪಾಸ್ವರ್ಡ್ ರಹಿತ ಆದೇಶಗಳನ್ನು ನೀಡಲು ಅಥವಾ ನಿರ್ವಾಹಕ ಪಾಸ್ವರ್ಡ್ ಅನ್ನು ಸ್ಕ್ರಿಪ್ಟ್ಗೆ ಹಾಕಲು ಕಾರಣವಲ್ಲ.

ಗಮನಿಸಬಹುದಾದ ಮಾಲೀಕರಿಗೆ ಆದ್ಯತೆ ನೀಡಿ

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

ನೀವು ಏನೇ ಆರಿಸಿದರೂ, ಟನೆಲ್ ಯಾವ ಸಂಪನ್ಮೂಲಕ್ಕಾಗಿ ಇದೆಯೋ ಅದನ್ನು ಪರಿಶೀಲಿಸಿ. ಯಶಸ್ವಿ ಪ್ರಾರಂಭ ವಿನಂತಿ ಪ್ರಕ್ರಿಯೆ ಘಟನೆ, ಕಾರ್ಯನಿರ್ವಹಿಸುವ ಸಂಪರ್ಕದ ಸಾಕ್ಷಿಯಲ್ಲ.

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