วิธีเชื่อมต่อ WiFi จากบรรทัดคำสั่ง?


145

โพสต์อื่น ๆ ดูเหมือนว่าจะแก้ไขปัญหาการเชื่อมต่อเครือข่ายที่ซับซ้อนมากขึ้นจากบรรทัดคำสั่ง

บางครั้งตัวบ่งชี้ / ปุ่มเครือข่าย Unity panel ไม่ตอบสนองดีเกินไปในบางครั้ง - มันพยายามเชื่อมต่อกับเครือข่ายแม้ว่าฉันจะคลิกที่ "ยกเลิกการเชื่อมต่อ" สิ่งเช่นนั้น

ดังนั้นฉันต้องการไปที่บรรทัดคำสั่งสำหรับการควบคุม ฉันไม่ชอบ GUIs อยู่ดี

ไม่มีเครื่องมือบรรทัดคำสั่งง่ายๆที่สามารถทำสิ่งต่อไปนี้ได้หรือไม่?

wifi connect MyNetworkNameA
wifi disconnect
wifi connect MyNetworkNameB

4
ขึ้นอยู่กับความปลอดภัยไร้สายอะไร นี้จะกล่าวถึงในรายละเอียดที่นี่ - help.ubuntu.com/community/NetworkConfigurationCommandLine/ …
Panther

บน Ubuntu 16.04 และ 18.04 ยังคงประสบปัญหาการเชื่อมต่อ wifi คำสั่งเชื่อมต่อจะเป็นการแฮ็คที่ดี
AlikElzin-kilaka

คำตอบ:


193

ฉันคิดว่าคุณต้องการใช้ส่วนต่อประสานที่มีการจัดการต่อไป (โดย NetworkManager) nmcliเป็นเครื่องมือบรรทัดคำสั่งสำหรับควบคุม NetworkManager

  • หากต้องการดูรายการการเชื่อมต่อที่บันทึกไว้ให้ใช้ ( <SavedWiFiConn>)

    nmcli c
    
  • หากต้องการดูรายการฮอตสปอต WiFi ที่มีอยู่ ( <WiFiSSID>)

    nmcli d wifi list
    

    หรือ:

    sudo iwlist wlan0 scanning
    
  • หากต้องการดูรายการอินเตอร์เฟส ( <WifiInterface>)

    ifconfig -a
    

เพียงแค่เปลี่ยน<WifiInterface>, <WiFiSSID>, <WiFiPassword>ในคำสั่งต่อไปนี้เพื่อสะท้อนให้เห็นถึงการตั้งค่าของคุณ หากข้อมูล WiFi ได้รับการบันทึกแล้ววิธีที่ง่ายกว่าคือใช้<SavedWiFiConn>ชื่อการเชื่อมต่อเพราะมันถูกบันทึกไว้ใน

Ubuntu 16.04

##disconnect
nmcli d disconnect <WifiInterface>

##connect
nmcli d connect <WifiInterface>

อีกทางหนึ่ง:

##disconnect
nmcli c down <SavedWiFiConn>

##connect
nmcli c up <SavedWiFiConn>

Ubuntu 15.10 และรุ่นก่อนหน้า

##disconnect
nmcli d disconnect iface <WifiInterface>

##connect
nmcli d wifi connect <WiFiSSID> password <WiFiPassword> iface <WifiInterface>

อีกทางหนึ่ง:

##disconnect:
nmcli c down id <SavedWiFiConn>

##connect:
nmcli c up id <SavedWiFiConn>

หากรหัสผ่านของคุณไม่ได้รับการยอมรับโดยอัตโนมัติพิมพ์สิ่งนี้:

nmcli -a c up <SavedWiFiConn>

อ้างอิง: man nmcli


1
ทำงานเหมือนจับใจ! และเป็นที่น่าสงสัยบรรทัดคำสั่งตอบสนองทันทีในขณะที่ GUI สามารถเฉื่อยช้าไม่ร่วมมือและไม่ตอบสนองบางครั้ง
cmo

1
บันทึกวันของฉันเมื่อฉันทำ Unity Dash และทาสก์บาร์และกล่องโต้ตอบการตั้งค่าเครือข่ายหยุดชะงักเมื่อทำการเชื่อมต่อเครือข่ายทุกประเภท
Janaka Bandara

1
@kirill_igum ขอโทษจะสายเงียบสงบไม่ว่างคุณอาจจะใช้cronสำหรับการจัดตารางการสแกน WiFi ใช้iwlist wlan0 scanningหรือnmcli d wifi listแล้วnmcli จะเชื่อมต่อกับเครือข่าย wifi ที่สอดคล้องกันทั้งนี้ขึ้นอยู่กับความต้องการของคุณ
user.dz

1
คำสั่งที่ฉันออกใช้นั้นทำให้เกิดข้อผิดพลาด ฉันกำลังออกคำสั่งนี้: nmcli c up id "Apollo III Connect" มันทำให้เกิดข้อผิดพลาด เมื่อฉันออกจากคำและพิมพ์นี้จะเชื่อมต่อโดยไม่ผิดพลาด:id nmcli c "Apollo III Connect"ฉันเข้าใจวิธีการเชื่อมต่อทันที คุณกำลังพูดว่าidเป็นพารามิเตอร์และการพูดแทนที่คำidด้วยชื่อของการเชื่อมต่อซึ่งคุณกำลังตั้งชื่อ <WiFiConn> ขอบคุณ!
LD James

5
ในการบันทึกการตั้งค่าการเชื่อมต่อ: วิธีsudo nmcli dev wifi con "SSID_NAME" password PASSWORD "CONFIG_NAME"ค้นหาการตั้งค่าการเชื่อมต่อที่บันทึกไว้โดยอัตโนมัติ:nmcli c
Cirelli94

75

nmtui โซลูชัน ncurses

สุดยอดตัวเลือกผู้จัดการเครือข่ายแบบโต้ตอบ ncurses:

nmtui

มาในแพคเกจเดียวกับnm-applet(สิ่งไอคอนแถบด้านบนเริ่มต้น) และnm-cliและจึงมีอยู่อย่างกว้างขวาง

ภาพหน้าจอ:

ป้อนคำอธิบายรูปภาพที่นี่

ทดสอบใน Ubuntu 17.10


ขอบคุณ! ด้วยเหตุผลบางอย่าง Ubuntu ของฉันปฏิเสธที่จะเชื่อมต่อกับ Wifi ดังนั้นฉันเสียบสายเคเบิลอีเธอร์เน็ตและคลิกเปิดใช้งานบนการเชื่อมต่อแบบมีสายและ BAM!
asgs

@Downvoters โปรดอธิบายฉันไม่เคยตอบโต้ ;-)
Ciro Santilli 新疆改造中心中心法轮功六四事件

3
ใช้งานได้กับ Ubuntu 16.01 เช่นกันโซลูชันที่ยอดเยี่ยม!
Jan Sila

4
นี่เป็นโซลูชันที่ใช้งานง่ายกว่า IMO เว้นแต่ว่าคุณกำลังพยายามที่จะเรียนรู้ว่า Linux / Unix เชื่อมต่อกับ WiFi ได้อย่างไรดูเหมือนว่าเป็นตัวเลือกที่สมบูรณ์แบบและกด Enter โซลูชัน ทำงานได้ดีบน Ubuntu 18
jamzsabb

19

หากจุดเข้าใช้งาน Wi-Fi ของคุณถูกบันทึกไว้จะทำการเชื่อมต่ออัตโนมัติ เปิดหรือปิดระบบไร้สายด้วยคำสั่งที่ง่ายกว่า:

nmcli nm wifi on
nmcli nm wifi off

ในเวอร์ชันที่ใหม่กว่า:

nmcli radio wifi on
nmcli radio wifi off

man nmcliสำหรับการอ้างอิงให้ดู


1
คุณจะทำให้ NM เปิดใช้งาน wifi โดยอัตโนมัติในระหว่างการบู๊ตได้อย่างไร ทุกครั้งที่ฉันรีบูต Network Manager เริ่มต้นด้วยการปิดใช้งาน wifi
Cerin

@Cerin คุณอาจลองเพิ่มคำสั่งนี้ไปยังแอปพลิเคชั่นเริ่มต้นดูที่askubuntu.com/questions/243139/…
user.dz

และวิธีทำใน Ubuntu> 14.04
จอภาพ 35

3

หากคุณต้องการเชื่อมต่อกับเครือข่ายที่เรียกว่า PrettyFlyForAWiFi-5G

nmcli -a d wifi connect PrettyFlyForAWiFi-5G

-a(หรือ--ask) หมายความว่ามันจะขอรหัสผ่านจากคุณ การเชื่อมต่อจะถูกบันทึกและควรเชื่อมต่อโดยอัตโนมัติหากคุณรีสตาร์ทคอมพิวเตอร์

คุณสามารถต่อpassword <your password>ท้าย (คำตัวอักษรpasswordตามด้วยรหัสผ่านจริง)

nmcli d wifi connect PrettyFlyForAWiFi-5G password 12345678

แต่อาจจะทำงานunset HISTFILEก่อนเพื่อว่ารหัสผ่าน WiFi ของคุณจะไม่ถูกบันทึกลงใน~/.bash_historyไฟล์ของคุณ


หากต้องการดูเครือข่าย WiFi ทั้งหมดที่อยู่รอบตัวคุณ ( --rescan yesเป็นทางเลือกรายการของเครือข่ายอาจมีอายุไม่เกิน 30 วินาทีโดยที่ไม่มี)

nmcli d wifi list --rescan yes

ซึ่งจะส่งออกสิ่งที่ชอบ

IN-USE  SSID                         MODE   CHAN  RATE        SIGNAL  BARS  SECURITY
        PrettyFlyForAWiFi-5G         Infra  44    405 Mbit/s  59      ▂▄▆_  WPA2
        PrettyFlyForAWiFi            Infra  6     195 Mbit/s  41      ▂▄__  WPA1 WPA2

หากต้องการลืมการเชื่อมต่อ (ที่ได้รับการบันทึกหลังจากที่คุณวิ่งnmcli -a d wifi connect <name>)

nmcli c delete PrettyFlyForAWiFi-5G

เพื่อดูรายการการเชื่อมต่อที่บันทึกไว้ทั้งหมด

nmcli c

คุณสามารถใช้nmcli connectionแทนnmcli c <whatever>และnmcli deviceแทนที่จะเป็นnmcli d

nmcliเป็นอินเตอร์เฟสบรรทัดคำสั่งสำหรับNetworkManager (ซึ่งเป็นส่วนหนึ่งของGNOMEสภาพแวดล้อมเดสก์ท็อปเริ่มต้นของ Ubuntu) และได้รับการติดตั้งบน Ubuntu แล้ว

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.