ಒಂದೇ ಡೆಸ್ಕ್ಟಾಪ್ನಲ್ಲಿ ಮಾತ್ರ ಚಲಿಸುವ VPN ಆಟೋಸ್ಟಾರ್ಟ್ ನಮೂದನ್ನು ಸರಿಪಡಿಸುವುದು
ಒಂದು ಡೆಸ್ಕ್ಟಾಪ್ನಲ್ಲಿ ಪ್ರಾರಂಭವಾಗಿ ಇನ್ನೊಂದರಲ್ಲಿ ಪ್ರಾರಂಭವಾಗದ VPN ಲಾಂಚರ್ ಟನೆಲ್ ದೋಷವಲ್ಲ, ಡೆಸ್ಕ್ಟಾಪ್ ನಮೂದಿನ ಫಿಲ್ಟರ್. ಮೊದಲು OnlyShowIn, TryExec ಮತ್ತು ಓವರ್ರೈಡ್ ಓದಿ.
VPN ಕ್ಲೈಂಟ್ ಅಪ್ಲಿಕೇಶನ್ ಮೆನುವಿನಿಂದ ಪ್ರಾರಂಭವಾಗುತ್ತದೆ, ಟನೆಲ್ ಸಂಪರ್ಕಗೊಳ್ಳುತ್ತದೆ, ಮತ್ತು ಒಂದು ಯಂತ್ರದಲ್ಲಿ ಸೈನ್-ಇನ್ ನಂತರ ಐಕಾನ್ ಎಂದಿಗೂ ಕಾಣಿಸಿಕೊಳ್ಳುವುದಿಲ್ಲ, ಆದರೆ ಅದೇ ಪ್ಯಾಕೇಜ್ ಇನ್ನೊಂದರಲ್ಲಿ ಸರಿಯಾಗಿ ವರ್ತಿಸುತ್ತದೆ. ಮೂರು ಅವಲೋಕನಗಳನ್ನು ಒಂದೇ ದೂರಿನಲ್ಲಿ ಸೇರಿಸಲಾಗುತ್ತಿದೆ: ಪ್ರೋಗ್ರಾಂ ಪ್ರಾರಂಭವಾಯಿತೇ, ಅದರ ಇಂಟರ್ಫೇಸ್ ಕಾಣುತ್ತದೆಯೇ, ಮತ್ತು ಟನೆಲ್ ಎದ್ದಿದೆಯೇ. ಲಾಂಚರ್ ಅನ್ನು ಫಿಲ್ಟರಿಂಗ್ ಕೀಗಳಿರುವ ಡೆಸ್ಕ್ಟಾಪ್ ನಮೂದು ನಿಯಂತ್ರಿಸುತ್ತದೆ, ಮತ್ತು ಆ ನಮೂದಿಗೆ VPN ಪ್ರೋಟೋಕಾಲ್ನೊಂದಿಗೆ ಯಾವುದೇ ಸಂಬಂಧವಿಲ್ಲ. ಕೈಪಿಡಿಯನ್ನು ಕ್ರಮವಾಗಿ ಅನುಸರಿಸಿ ಮತ್ತು ಮೂರರಲ್ಲಿ ಒಂದು ಸ್ಪಷ್ಟವಾಗಿ ಬೇರ್ಪಟ್ಟಾಗ ನಿಲ್ಲಿಸಿ.
ಮೂರು ಪ್ರತ್ಯೇಕ ಸಂಗತಿಗಳು: ಪ್ರಾರಂಭ, ಐಕಾನ್, ಟನೆಲ್
ಡೆಸ್ಕ್ಟಾಪ್ ನಮೂದು ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಪ್ರಾರಂಭಿಸುತ್ತದೆ. ಅದು ಟ್ರೇ ಅನುಷ್ಠಾನವನ್ನು ಸ್ಥಾಪಿಸಲಾರದು, ಮತ್ತು ಅಪ್ಲಿಕೇಶನ್ ಬಳಸುವ ಪ್ರೋಟೋಕಾಲ್ ಅನ್ನು ಬೆಂಬಲಿಸದ ಪ್ಯಾನೆಲ್ನಲ್ಲಿ ಸೂಚಕವನ್ನು ತೋರಿಸಲಾರದು. ಪ್ರಕ್ರಿಯೆ ಈಗಾಗಲೇ ಚಾಲನೆಯಲ್ಲಿದ್ದರೆ, ಪ್ರಾರಂಭದ ಪ್ರಶ್ನೆಗೆ ಉತ್ತರ ದೊರೆತಿದೆ ಮತ್ತು ನೀವು ಬದಲಿಗೆ ಏಕೀಕರಣ ಸಮಸ್ಯೆಯನ್ನು ನೋಡುತ್ತಿದ್ದೀರಿ.
ಟನೆಲ್ ಮತ್ತೆ ಮೂರನೇ ಸಂಗತಿ. ಕಾಣೆಯಾದ ಐಕಾನ್ ಸಂಪರ್ಕ ಕಡಿತಗೊಂಡದ್ದಕ್ಕೆ ಸಾಕ್ಷಿಯಲ್ಲ, ಮತ್ತು ಐಕಾನ್ «ಸರಿಪಡಿಸಲು» ಕ್ಲೈಂಟ್ ಅನ್ನು ಕೊಂದು ಮತ್ತೆ ಪ್ರಾರಂಭಿಸುವುದು ಕಾರಣವಿಲ್ಲದೆ ಕೆಲಸ ಮಾಡುತ್ತಿರುವ ಟನೆಲ್ ಅನ್ನು ಅಡ್ಡಿಪಡಿಸುವ ವಿಧಾನವೇ ಆಗಿದೆ. ಬಳಕೆದಾರರು ಕಾಣೆಯಾದ ಐಕಾನ್ ಮತ್ತು ಮುರಿದ ಟನೆಲ್ ಅನ್ನು ಒಂದೇ ವಾಕ್ಯದಲ್ಲಿ ವರದಿ ಮಾಡುತ್ತಾರೆ, ಮತ್ತು ಅದಕ್ಕಾಗಿಯೇ ಎರಡನ್ನೂ ಕಾಗದದ ಮೇಲೆ ಬೇರ್ಪಡಿಸಬೇಕು.
ಏನನ್ನಾದರೂ ಬದಲಿಸುವ ಮೊದಲು ಅವುಗಳನ್ನು ಬೇರ್ಪಡಿಸಿ. ಪ್ರಕ್ರಿಯೆ ಇದೆಯೇ, ನಂತರ ಪ್ಯಾನೆಲ್ ಸೂಚಕವನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆಯೇ, ಮತ್ತು ಕೊನೆಯದಾಗಿ ಇಂಟರ್ಫೇಸ್ ಸಂಪರ್ಕದ ಬಗ್ಗೆ ವರದಿ ಮಾಡುತ್ತದೆಯೇ ಎಂದು ಪರಿಶೀಲಿಸಿ. ಪ್ರತಿ ಉತ್ತರವೂ ಬೇರೆ ಪದರ ಮತ್ತು ಬೇರೆ ಜವಾಬ್ದಾರರನ್ನು ಸೂಚಿಸುತ್ತದೆ.
ಸೆಷನ್ ನಿಜವಾಗಿ ಓದುವ ನಮೂದನ್ನು ಹುಡುಕಿ
ಆಟೋಸ್ಟಾರ್ಟ್ ನಮೂದುಗಳು ಬಳಕೆದಾರ ಕೋಶದಲ್ಲಿ ಮತ್ತು ಸಿಸ್ಟಂ ಕೋಶದಲ್ಲಿ ಇರುತ್ತವೆ, ಮತ್ತು ಫೈಲ್ ಹೆಸರುಗಳು ಹೊಂದಿಕೆಯಾದಾಗ ಬಳಕೆದಾರರ ಪ್ರತಿ ಗೆಲ್ಲುತ್ತದೆ. ತಪ್ಪಾದ ನಮೂದನ್ನು ಓದುವುದೇ ಬದಲಾವಣೆ ಪರಿಣಾಮರಹಿತವಾಗಿ ಕಾಣುವ ಅತ್ಯಂತ ಸಾಮಾನ್ಯ ಕಾರಣ. ಏನನ್ನಾದರೂ ಸಂಪಾದಿಸುವ ಮೊದಲು ಎರಡೂ ಕೋಶಗಳನ್ನು ಪಟ್ಟಿ ಮಾಡಿ ಮತ್ತು ಸೆಷನ್ ನಿಜವಾಗಿ ಯಾವ ಫೈಲ್ ಲೋಡ್ ಮಾಡುತ್ತದೆ ಎಂದು ಗಮನಿಸಿ.
ls -l ~/.config/autostart/ /etc/xdg/autostart/ echo "$XDG_CURRENT_DESKTOP" grep -H -E '^(OnlyShowIn|NotShowIn|TryExec|Hidden|Exec)=' ~/.config/autostart/*.desktop /etc/xdg/autostart/*.desktop
ಪರಿಸರ ಚರವು ಫಿಲ್ಟರಿಂಗ್ ಕೀಗಳನ್ನು ಹೋಲಿಸುವ ಸೆಷನ್ ಹೆಸರನ್ನು ಮುದ್ರಿಸುತ್ತದೆ, ಮತ್ತು ಅದು ಸಾಮಾನ್ಯವಾಗಿ ಕೋಲನ್ಗಳಿಂದ ಬೇರ್ಪಟ್ಟ ಪಟ್ಟಿ. ಅದನ್ನು ನಮೂದಿನ ಮೌಲ್ಯಗಳೊಂದಿಗೆ ಅಕ್ಷರಶಃ ಹೋಲಿಸಿ, ಏಕೆಂದರೆ ಆ ಹೆಸರುಗಳು ಸೆಷನ್ ವಿವರಣೆಯಲ್ಲ, ದೊಡ್ಡ ಮತ್ತು ಸಣ್ಣ ಅಕ್ಷರ ಸೂಕ್ಷ್ಮ ಸಂರಚನಾ ವಿವರಗಳು. ಮೌಲ್ಯ GNOME ಇದರೊಂದಿಗೆ ಹೊಂದಿಕೆಯಾಗುವುದಿಲ್ಲ: gnome, ಮತ್ತು ಅದರಿಂದ ಉಂಟಾಗುವ ಮೌನಕ್ಕೆ ಯಾವುದೇ ದೋಷ ಸಂದೇಶ ಲಗತ್ತಾಗಿಲ್ಲ. ಊಹಿಸುವ ಬದಲು ಅದನ್ನು ಮುದ್ರಿಸಿ.
ಒಂದೇ ಫೈಲ್ ಹೆಸರು ಎರಡೂ ಕೋಶಗಳಲ್ಲಿದ್ದರೆ, ಬಳಕೆದಾರರ ಪ್ರತಿಯೇ ಮುಖ್ಯ. ಸಿಸ್ಟಂ ಫೈಲ್ ಸಂಪಾದಿಸಿ ಏನೂ ಏಕೆ ಬದಲಾಗಲಿಲ್ಲ ಎಂದು ಆಶ್ಚರ್ಯಪಡುವುದು ಬಹಳ ಸಾಮಾನ್ಯವಾದ ಕಳೆದುಹೋದ ಗಂಟೆ.
ಫಿಲ್ಟರಿಂಗ್ ಕೀಗಳನ್ನು ಕ್ರಮವಾಗಿ ಓದಿ
ಕೆಳಗಿನ ಉದಾಹರಣೆ ನಮೂದು ಸೆಷನ್ ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಪ್ರಾರಂಭಿಸುತ್ತದೆಯೇ ಎಂದು ನಿರ್ಧರಿಸುವ ಕೀಗಳನ್ನು ತೋರಿಸುತ್ತದೆ. ಇದು ಒಂದು ತುಣುಕು, ಪೂರ್ಣ ಲಾಂಚರ್ ಅಲ್ಲ, ಮತ್ತು ಮೌಲ್ಯಗಳು ಕಾಲ್ಪನಿಕ ಮಾರ್ಗಕ್ಕೆ ಸೇರಿವೆ.
[Desktop Entry] Type=Application Name=Example VPN Exec=/opt/example-vpn/client --minimized TryExec=/opt/example-vpn/client OnlyShowIn=GNOME;
OnlyShowIn ನಮೂದನ್ನು ಪಟ್ಟಿ ಮಾಡಿದ ಪರಿಸರಗಳಿಗೆ ಸೀಮಿತಗೊಳಿಸುತ್ತದೆ ಮತ್ತು NotShowIn ಪಟ್ಟಿ ಮಾಡಿದವನ್ನು ಹೊರಗಿಡುತ್ತದೆ. ಒಂದೇ ನಮೂದಿನಲ್ಲಿ ಎರಡೂ ಕಾಣಿಸಿಕೊಂಡಾಗ ವಿಶೇಷಣೆಯು ಉಪಯುಕ್ತ ವರ್ತನೆಯನ್ನು ವ್ಯಾಖ್ಯಾನಿಸುವುದಿಲ್ಲ, ಆದ್ದರಿಂದ ಎರಡನ್ನೂ ಹೊಂದಿರುವ ಫೈಲ್ ಅನ್ನು ಚತುರ ಸಂಯೋಜನೆ ಎಂದಲ್ಲ, ದೋಷ ಎಂದು ಪರಿಗಣಿಸಿ. ಎರಡನೆಯದನ್ನು ಸೇರಿಸಿ ಆದ್ಯತಾ ನಿಯಮದ ನಿರೀಕ್ಷೆ ಮಾಡುವ ಬದಲು ಬೇಡವಾದ ಕೀಯನ್ನು ತೆಗೆದುಹಾಕಿ.
TryExec ಸೆಷನ್ ಅದನ್ನು ಪ್ರಾರಂಭಿಸುವ ಮೊದಲು ಎಕ್ಸಿಕ್ಯೂಟೆಬಲ್ ಫೈಲ್ ಇದೆಯೇ ಎಂದು ಕೇಳುತ್ತದೆ. ಆದ್ದರಿಂದ ಹಳೆಯ ಸ್ಥಾಪನೆಯಿಂದ ಉಳಿದ ಮಾರ್ಗವು ಹೊಸ ಪ್ಯಾಕೇಜ್ ಮೆನುವಿನಿಂದ ಪ್ರಾರಂಭಿಸಿದಾಗ ಕೆಲಸ ಮಾಡಿದರೂ ಆಟೋಸ್ಟಾರ್ಟ್ ಅನ್ನು ಹತ್ತಿಕ್ಕುತ್ತದೆ, ಮತ್ತು ಆ ವೈಫಲ್ಯ ನಿಖರವಾಗಿ ಡೆಸ್ಕ್ಟಾಪ್ ಫಿಲ್ಟರ್ನಂತೆ ಕಾಣುತ್ತದೆ.
ಬಳಕೆದಾರ ಮಟ್ಟದಲ್ಲಿ ಓವರ್ರೈಡ್ ಮಾಡಿ, ಸಿಸ್ಟಂ ಮಟ್ಟದಲ್ಲಿ ಅಲ್ಲ
ಫಿಲ್ಟರ್ ಈ ಯಂತ್ರಕ್ಕೆ ನಿಜವಾಗಿಯೂ ತಪ್ಪಾಗಿದ್ದರೆ, ಸಿಸ್ಟಂ ನಮೂದನ್ನು ಬಳಕೆದಾರ ಕೋಶಕ್ಕೆ ನಕಲಿಸಿ ಮತ್ತು ಪ್ರತಿಯನ್ನು ಬದಲಿಸಿ. XDG ಆಟೋಸ್ಟಾರ್ಟ್ ನಿಯಮಗಳ ಪ್ರಕಾರ, ಅದೇ ಹೆಸರಿನ ಬಳಕೆದಾರ ನಮೂದಿಗೆ ಆದ್ಯತೆ ಇರುತ್ತದೆ, ಮತ್ತು Hidden=true ಸಿಸ್ಟಂ ಫೈಲ್ ಅನ್ನು ಅಳಿಸದೆ ನಮೂದನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸುತ್ತದೆ.
mkdir -p ~/.config/autostart cp /etc/xdg/autostart/example-vpn.desktop ~/.config/autostart/ sed -i '/^OnlyShowIn=/d' ~/.config/autostart/example-vpn.desktop desktop-file-validate ~/.config/autostart/example-vpn.desktop
ಲಾಗ್ ಔಟ್ ಮಾಡುವ ಮೊದಲು ಫಲಿತಾಂಶವನ್ನು ಮಾನ್ಯಗೊಳಿಸಿ, ಏಕೆಂದರೆ ದೋಷಪೂರಿತ ನಮೂದನ್ನು ಸದ್ದಿಲ್ಲದೆ ನಿರ್ಲಕ್ಷಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಮುಂದಿನ ಪರೀಕ್ಷೆ ನಿಮಗೆ ಏನನ್ನೂ ಹೇಳುವುದಿಲ್ಲ. ಪ್ಯಾಕೇಜ್ ಮರುಸ್ಥಾಪಿಸುವುದರಿಂದ ನಿಮ್ಮ ಓವರ್ರೈಡ್ ತೆಗೆಯುವುದಿಲ್ಲ, ಅದೇ ಉದ್ದೇಶ ಮತ್ತು ಅದು ಇದೆ ಎಂದು ದಾಖಲಿಸುವ ಕಾರಣವೂ ಹೌದು. ಟಿಕೆಟ್ನಲ್ಲಿ ಫೈಲ್ ಮಾರ್ಗವನ್ನು ಬರೆಯಿರಿ ಇದರಿಂದ ಮುಂದಿನ ವ್ಯಕ್ತಿ ಓವರ್ರೈಡ್ ಅನ್ನು ಮತ್ತೆ ಕಳೆಯುವ ಬದಲು ಕಂಡುಕೊಳ್ಳುತ್ತಾರೆ.
ಹಂಚಿಕೆಯ ಸಿಸ್ಟಂ ಲಾಂಚರ್ಗಳನ್ನು ಸಂಪಾದಿಸುವ ಬದಲು ಇದನ್ನು ಆರಿಸಿ, ಏಕೆಂದರೆ ಅದು ಯಂತ್ರದ ಪ್ರತಿ ಬಳಕೆದಾರರ ವರ್ತನೆಯನ್ನು ಬದಲಿಸುತ್ತದೆ ಮತ್ತು ಅದೇ ರೀತಿಯಲ್ಲಿ ಪರಿಶೀಲಿಸಲಾಗದು. ಬಳಕೆದಾರ ಮಟ್ಟದ ಓವರ್ರೈಡ್ ಒಂದೇ ಸ್ಥಳದಲ್ಲಿ ಕಾಣುತ್ತದೆ, ಒಂದು ಫೈಲ್ ಅಳಿಸುವ ಮೂಲಕ ಹಿಂತಿರುಗಿಸಬಹುದು ಮತ್ತು ಟಿಕೆಟ್ನಲ್ಲಿ ಸುಲಭವಾಗಿ ವಿವರಿಸಬಹುದು. ಸಿಸ್ಟಂ ಫೈಲ್ ಪೂರೈಕೆದಾರರು ಕಳುಹಿಸಿದಂತೆಯೇ ಉಳಿಯುತ್ತದೆ, ಆದ್ದರಿಂದ ಪ್ಯಾಕೇಜ್ ನವೀಕರಣವು ನಿಮ್ಮ ತಾರ್ಕಿಕತೆಯನ್ನು ಸದ್ದಿಲ್ಲದೆ ರದ್ದುಗೊಳಿಸುವುದಿಲ್ಲ.
ಟನೆಲ್ ಮುಟ್ಟದೆ ಪ್ರಾರಂಭವನ್ನು ದೃಢೀಕರಿಸಿ
ಲಾಗ್ ಔಟ್ ಮಾಡಿ ಮತ್ತೆ ಲಾಗ್ ಇನ್ ಮಾಡಿ, ನಂತರ ಪ್ಯಾನೆಲ್ ನೋಡುವ ಮೊದಲು ಪ್ರಕ್ರಿಯೆ ಇದೆ ಎಂದು ದೃಢೀಕರಿಸಿ. ಯಶಸ್ವಿ ಪ್ರಾರಂಭ ಮತ್ತು ಕಾಣುವ ಐಕಾನ್ ಎರಡು ವಿಭಿನ್ನ ಫಲಿತಾಂಶಗಳು, ಮತ್ತು ಎರಡನೆಯದಕ್ಕೆ ಮಾತ್ರ ಡೆಸ್ಕ್ಟಾಪ್ ಏಕೀಕರಣದ ಕೆಲಸ ಬೇಕು. ಎರಡನ್ನೂ ಬೆರೆಸಿದರೆ ಸದಾ ಕೆಲಸ ಮಾಡುತ್ತಿದ್ದ ಪ್ಯಾಕೇಜ್ ಅನ್ನು ಮತ್ತೆ ಸ್ಥಾಪಿಸಲು ಹೋಗುತ್ತೀರಿ.
pgrep -af example-vpn systemctl --user status example-vpn.service journalctl --user -b --no-pager | grep -i example-vpn | tail -20
ಪ್ರಕ್ರಿಯೆ ಇಲ್ಲದಿದ್ದರೆ, ಉಳಿದ ಫಿಲ್ಟರ್ ಅಥವಾ ಹಳೆಯ TryExec ಮಾರ್ಗಕ್ಕಾಗಿ ನಮೂದನ್ನು ಮತ್ತೆ ಓದಿ. ಅದು ಇದ್ದರೆ, ಲಾಂಚರ್ ಕೆಲಸ ಮಾಡಿತು ಮತ್ತು ಕಾಣೆಯಾದ ಐಕಾನ್ ಪ್ಯಾನೆಲ್ನ ಸೂಚಕ ಬೆಂಬಲದ ಪ್ರತ್ಯೇಕ ಸಮಸ್ಯೆ, ನೀವು ಈಗಷ್ಟೇ ಸಂಪಾದಿಸಿದ ನಮೂದಿನದಲ್ಲ.
ಟಿಕೆಟ್ನಲ್ಲಿ ಮೂರು ಅವಲೋಕನಗಳನ್ನು ದಾಖಲಿಸಿ: ಪ್ರಾರಂಭವಾಯಿತು, ಕಾಣುತ್ತದೆ, ಸಂಪರ್ಕಗೊಂಡಿದೆ. ಆ ದಾಖಲೆ ಮುಂದಿನ ವ್ಯಕ್ತಿಯು ಅದೇ ತ್ರಿಮುಖ ಗೊಂದಲವನ್ನು ಪುನರಾವರ್ತಿಸದಂತೆ ತಡೆಯುತ್ತದೆ ಮತ್ತು ಯಾವ ಪದರಕ್ಕೆ ಇನ್ನೂ ಕೆಲಸ ಬೇಕು ಎಂದು ಸ್ಪಷ್ಟಪಡಿಸುತ್ತದೆ.