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 मार्गासाठी नोंद पुन्हा वाचा. ती असल्यास लाँचरने काम केले आणि गहाळ चिन्ह ही पॅनेलच्या निर्देशक आधाराची वेगळी समस्या आहे, तुम्ही नुकतीच संपादित केलेल्या नोंदीची नाही.

तिकिटात तीन निरीक्षणे नोंदवा: सुरू झाले, दिसते, जोडले. ती नोंद पुढील व्यक्तीला तोच त्रिमुखी गोंधळ पुन्हा करण्यापासून रोखते आणि कोणत्या स्तरावर अजून काम आहे हे स्पष्ट करते.

संबंधित लेख