क्या NetworkManager में WiFi प्राथमिकता को ऊपर और नीचे खींचा जा सकता है?
संक्षिप्त उत्तर "अभी तक नहीं है।" 2018 के मध्य तक, उबंटू में वाईफाई प्राथमिकता निर्धारित करने के लिए माइक्रोसॉफ्ट विंडोज के रूप में कुछ भी आसान नहीं है। हालाँकि, आप जो चाहते हैं उसे पूरा करने के तरीके हैं।
टी एल; डॉ? सारांश
कमांड लाइन उपयोग के लिए nmcli
। जीयूआई के लिए, plasma-nm
।
nmcli -f autoconnect-priority,name c
nmcli c mod "mypreferred" conn.autoconnect-p 10
nmcli c mod "xfinitywifi" conn.autoconnect-p -10
या
apt install plasma-nm
kde5-nm-connection-editor
उपलब्ध विकल्प
यहां वर्तमान में उपलब्ध वाईफाई प्राथमिकता को निर्धारित करने के तरीके के साथ-साथ यह भी बताया गया है कि वे मूल प्रश्न का उत्तर क्यों नहीं देते हैं।
कमांड लाइन टूल (nmcli)
हालांकि यह समाधान संभवतः इसे करने का सबसे आसान तरीका है और यह NetworkManager के साथ काम nmcli
करता है , Microsoft Windows- स्टाइल ड्रैग-एंड-ड्रॉप reordering की अनुमति नहीं देता है। वास्तव में, nmcli
(जैसा कि नाम से पता चलता है) NetworkManager के लिए एक "कमांड लाइन इंटरफ़ेस" है, जिसका अर्थ है कि आपको टर्मिनल में कमांड टाइप करने की आवश्यकता होगी, जो कुछ लोगों के लिए ऑफ-पुट हो सकता है। मैं नीचे इसका उपयोग करने के तरीके के बारे में अधिक वर्णन करूंगा।
प्लाज्मा-एनएम (kde5-nm-कनेक्शन-संपादक)
यह उपकरण ड्रैग-एंड-ड्रॉप reordering की अनुमति नहीं देता है, लेकिन यह NetworkManager के साथ काम करता है। "केडीई" नाम के बावजूद, यह किसी भी डेस्कटॉप वातावरण के साथ काम करता है (मैंने इसे गनोम के साथ परीक्षण किया)। यह एक ग्राफिकल इंटरफ़ेस प्रस्तुत करता है जो किसी नेटवर्क के "ऑटोकनेक्ट-प्राथमिकता" को संपादित करता है। मैं नीचे इसका उपयोग करने के बारे में चर्चा करूंगा।
वाईफ़ाई रडार
यह उपकरण अनुरोध के अनुसार नेटवर्क प्राथमिकताओं को ऊपर-नीचे करने की अनुमति देता है। हालाँकि, यह वास्तव में नेटवर्क प्रबंधक के साथ एकीकृत नहीं है; वास्तव में मेरा मानना है कि यह एक ही समय में दोनों को चलाने के लिए एक गलती है। इसके अलावा, एक ग्राफिकल इंटरफ़ेस होने के बावजूद, इसका उपयोग करना उतना आसान नहीं है जितना इसे होना चाहिए। Wifi Radar का उपयोग न करने का एक और कारण यह है कि यह एक पायथन लिपि है जिसे मूल सुरक्षा जोखिम के रूप में चलाया जाना चाहिए। इसके अलावा, मैन पेज के अनुसार, वाईफाई राडार बहुत बिजली की खपत करता है और इसमें "संभवतः बहुत सारे" कीड़े हैं।
गनोम नेटवर्क कंट्रोल पैनल (रनिंग में भी नहीं)
मैं इसे पूर्णता के लिए और अधिक उल्लेख करता हूं क्योंकि यह वही है जो लोग काम करने की उम्मीद करेंगे, लेकिन ऐसा नहीं है। गनोम, जो उबंटू का वर्तमान डिफ़ॉल्ट डेस्कटॉप वातावरण है, एक नेटवर्क कंट्रोल पैनल के साथ आता है जो बस ऑटोकनेक्ट प्राथमिकताओं को बिल्कुल नहीं दिखा या संपादित कर सकता है। (वैसे, nmcli
और plasma-nm
दोनों गनोम के तहत ठीक काम करते हैं।)
एनएम-कनेक्शन-एडिटर: गनोम का पुराना नेटवर्क कंट्रोल पैनल
गनोम में कनेक्शन प्राथमिकताओं को सेट करने की क्षमता होती थी, यद्यपि एक क्लूनी तरीके से, खींचें और ड्रॉप नहीं। पुराना नियंत्रण कक्ष अभी तक गनोम में शामिल है, लेकिन क्लिक करके सुलभ नहीं है। इसके बजाय, कमांड चलाएं nm-connection-editor
, फिर एक वाईफाई नेटवर्क चुनें, एडिट पर क्लिक करें, जनरल टैब पर जाएं, और "ऑटो एक्टिवेशन के लिए कनेक्शन प्राथमिकता" के आगे - / + बटन पर क्लिक करें।
Emacs / vi
यदि आप एक कट्टर गीक हैं, तो आपकी नींद में गड़गड़ाहट कोड, आपको बस इतना करना है कि फ़ाइल में लाइन "ऑटोकनेक्ट-प्राथमिकता: 10" जोड़ें /etc/NetworkManager/system-connections/foo
। Nm-settings (5) देखें।
उदाहरण सहित पूर्ण विवेचना
दोनों nmcli
और kde5-nm-connection-editor
व्यक्तिगत नेटवर्क AutoConnect प्राथमिकताओं संपादित कर सकते हैं। केवल nmcli
आपको वर्तमान में निर्धारित सभी प्राथमिकताओं की सूची दिखा सकता है। दोनों मानते हैं कि आप जानते हैं कि उच्च संख्या उच्च प्राथमिकताओं का प्रतिनिधित्व करती है और यह शून्य डिफ़ॉल्ट है। नकारात्मक संख्याओं की अनुमति है और "अंतिम उपाय" के रूप में एक नेटवर्क को चिह्नित करने के लिए काम करते हैं यदि कुछ और उपलब्ध नहीं है (देखें man nm-settings
"ऑटोकनेक्ट-प्राथमिकता")।
Nmcli और प्लाज्मा-nm परिवर्तन स्थायी रूप से NetworkManager द्वारा / etc / NetworkManager / system-कनेक्शन / में संग्रहीत किए जाते हैं।
Nmcli का उपयोग कैसे करें
यह मेरा पसंदीदा समाधान है और यह पहले से ही उबंटू के साथ आता है। यदि आप कमांड लाइन से परिचित हैं या यदि आपके पास स्वाभाविक रूप से भाषाई मस्तिष्क है, तो आपको माउस का उपयोग करने की तुलना में यह समाधान आसान लग सकता है। दूसरी ओर, यदि आप पहले एक ग्राफिकल इंटरफ़ेस आज़माना चाहते हैं, तो केडीई के प्लाज्मा-एनएम पर अगले भाग पर छोड़ें। नीचे दिए गए सभी उदाहरणों के लिए, आपको कमांड में टाइप करने के लिए एक टर्मिनल खोलने की आवश्यकता होगी।
वर्तमान प्राथमिकताओं को सूचीबद्ध करने के लिए
$ nmcli -f autoconnect-priority,name c
नमूना उत्पादन:
AUTOCONNECT-PRIORITY NAME
0 Blake5Net
0 Caffe Ubuntu
0 Caffe Ubuntu Guest
0 Fire Hotspot
0 JET & Mishka
0 La Marzocco
0 Le_MX
0 MobileLab
0 xfinitywifi
युक्ति: यदि आपके पास बहुत लंबी सूची है, तो आप उन्हें प्राथमिकता से क्रमबद्ध करना चाहते हैं:
nmcli -f autoconnect-priority,name c | tail -n +2 | sort -nr
पसंदीदा के रूप में नेटवर्क कैसे सेट करें
nmcli connection modify "Caffe Ubuntu" connection.autoconnect-priority 10
ध्यान दें कि आप प्राथमिकता के लिए किसी भी संख्या का उपयोग कर सकते हैं। एक बड़ी संख्या नेटवर्क को सूची के शीर्ष पर ले जाती है।
अंतिम उपाय के रूप में नेटवर्क कैसे सेट करें
nmcli connection modify "xfinitywifi" connection.autoconnect-priority -10
नकारात्मक प्राथमिकता मान 0 के डिफ़ॉल्ट से कम है, जिसका अर्थ है कि उन्हें अंतिम रूप देने की कोशिश की जाएगी, अगर कोई अन्य ज्ञात वाईफाई नेटवर्क नहीं मिल सकता है। ध्यान दें कि, के कुछ संस्करणों में बग के कारण nmcli
, आप नकारात्मक संख्या को 4294967286 जैसे विशाल सकारात्मक संख्या के रूप में सूचीबद्ध देख सकते हैं। इस बारे में चिंता न करें क्योंकि यह अभी भी ठीक काम करेगा।
प्लाज्मा-एनएम का उपयोग कैसे करें
प्लाज्मा-एनएम, केडीई के नेटवर्क प्रबंधक क्लाइंट, आपको ग्राफिकल इंटरफ़ेस में कई क्लिकों के माध्यम से नेटवर्क की प्राथमिकता बदलने की सुविधा देता है। आप ड्रैग-एंड-ड्रॉप नहीं कर सकते, इसके बजाय आपको एक नंबर निर्दिष्ट करना होगा। जैसा कि nmcli
, उच्च संख्या उच्च प्राथमिकता है। दुर्भाग्य से, आप इस बात की सूची नहीं देख सकते हैं कि आपने अतीत में किन अन्य प्राथमिकताओं को निर्धारित किया है ताकि आपको किसी संख्या पर अनुमान लगाना पड़े। व्यक्तिगत रूप से, मैं केवल पसंदीदा नेटवर्क के लिए "10" और अंतिम रिसॉर्ट नेटवर्क के लिए "-10" का उपयोग करता हूं और मैं उससे परे अंतर नहीं करता।
आपको प्लाज्मा-एनएम प्राप्त करने के लिए सभी केडीई को स्थापित करने की आवश्यकता नहीं है। (मेरी मशीन पर, GNOME चल रहा है, पूर्ण केडीई पैकेज को 600 एमबी से अधिक डाउनलोड करने की आवश्यकता होगी, इसके विपरीत, प्लाज्मा-एनएम केवल 8 एमबी था)। मैंने कमांड लाइन से प्लाज्मा-एनएम स्थापित किया जैसे:
sudo apt install plasma-nm
और मैंने इसे टाइप करके इसे चलाया:
kde5-nm-connection-editor
(ठीक है, तकनीकी रूप से, मैंने वह सब टाइप नहीं किया था। मैंने TAB का उपयोग मेरे लिए टाइपिंग को स्वतः पूर्ण करने के लिए किया था)।
यदि आप केडीई का उपयोग नहीं करते हैं, तो पहली बार जब आप प्लाज्मा-एनएम चलाते हैं, तो यह आपको क्रेडेंशियल्स को स्टोर करने के लिए "वॉलेट" बनाने के बारे में पूछेगा। मैंने सिर्फ सवाल पर "रद्द" मारा और यह मेरे लिए ठीक काम किया।
फिर यह आपको कनेक्शन की एक सूची दिखाएगा। उस कनेक्शन पर डबल-क्लिक करें जिसे आप संपादित करना चाहते हैं। वह "कनेक्शन संपादक" पैनल लाएगा। "सामान्य कॉन्फ़िगरेशन" टैब चुनें। सबसे नीचे, आपको "प्राथमिकता" नामक एक बॉक्स दिखाई देगा। इसे 0 से 10 (पसंदीदा) या -10 (अंतिम उपाय) में बदलें। बदलावों को सहेजने के लिए ठीक है क्लिक करें।
चूंकि परिवर्तन स्थायी रूप से NetworkManager के साथ संग्रहीत हैं, एक बार जब आप प्राथमिकताएं समायोजित करना समाप्त कर लेते हैं, तो यदि आप नहीं करना चाहते हैं तो आपको प्लाज्मा-एनएम स्थापित करने की आवश्यकता नहीं है। ( sudo apt remove plasma-nm
)