CentOS 7 最小化安装 自动连接 WiFi

前言:

CentOS 最小化安装后,不存在 iw,连接 WiFi 需要安装 iw,而 iw 又需要 libnl,使用 iw 连接 WiFi 时,会出现不能自动连接的问题。自动连接可以通过安装 NetworkManager-wifi 之后,使用 nmcli 连接 WiFi 解决。

资料:https://wiki.archlinux.org/index.php/NetworkManager

现在有两个解决办法:

  1. 先安装(U盘本地安装) iw(以及 iw 的依赖 libnl)暂时连接网络,之后使用 yum 在网络中安装 NetworkManager-wifi;
  2. 直接安装(U盘本地安装) NetworkManager-wifi(以及 NetworkManager-wifi 的依赖:NetworkManager-libnm、NetworkManager、NetworkManager-tui、NetworkManager-team)。

方式一:

  1. 查看是否安装了 iw:
    -bash: iw: command not found 说明没有安装 iw。

     

    [root@localhost /]# iw
    -bash: iw: command not found
    
  1. 下载 iw 相关依赖:
    安装后无 iw,在 阿里巴巴开源镜像站 根据自己的系统搜索下载适合你的软件版本。

    libnl,iw 所需依赖:


    iw:
  2. 下载后放入U盘中,插入电脑,挂载U盘:
    1. 创建U盘挂载位置:
      mkdir -p /mut/usb_disk
    2. 挂载U盘:
      mount /dev/sdb1 /mut/usb_disk
  3. 安装 iw:
    1. 查看依赖:
      [root@localhost iw]# ls
      iw-4.3-2.el7.x86_64.rpm  libnl-1.1.4-3.el7.x86_64.rpm
    2. 安装依赖:
      yum -y install libnl-1.1.4-3.el7.x86_64.rpm
      yum -y install iw-4.3-2.el7.x86_64.rpm
  4. 查看网卡名:
    [root@localhost iw]# iw dev
    phy#0
    	Unnamed/non-netdev interface
    		wdev 0x2
    		addr e4:f8:9c:0b:07:62
    		type P2P-device
    	Interface wlp3s0
    		ifindex 3
    		wdev 0x1
    		addr e4:f8:9c:0b:07:61
    		type managed
    		channel 6 (2437 MHz), width: 20 MHz, center1: 2437 MHz
    网卡名在 Interface 后面:wlp3s0
     
  5. 打开网卡:
    ip link set wlp3s0 up
  6. 搜索WiFi:
    [root@localhost iw]# iw wlp3s0 scan | grep SSID
    	SSID: 1401
    	SSID: TP-LINK_D3EA
    	SSID: Mi 5s
    	SSID: CU_Pg8d
    	SSID: 1401_5G
    	SSID: TP-LINK_D3EA
    	SSID: \xe9\xbe\x99\xe6\xa8\xbe\xe6\xb9\xbe\xe6\x9c\x80\xe5\xbc\xba\xe7\x8e\x8b\xe8\x80\x85
    	SSID: 1502
    
  7. 连接WiFi:
     
    [root@localhost iw]# wpa_supplicant -B -i wlp3s0 -c <(wpa_passphrase "WiFi 名称" "密码")
    Successfully initialized wpa_supplicant
    
  8. 分配IP:

    dhclient wlp3s0
  9. 查看是否连接到 WiFi:

    [root@localhost /]# ip addr
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
        inet 127.0.0.1/8 scope host lo
           valid_lft forever preferred_lft forever
        inet6 ::1/128 scope host 
           valid_lft forever preferred_lft forever
    2: enp4s0f1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
        link/ether 80:fa:5b:1a:9f:75 brd ff:ff:ff:ff:ff:ff
    3: wlp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
        link/ether e4:f8:9c:0b:07:61 brd ff:ff:ff:ff:ff:ff
        inet 192.168.43.99/24 brd 192.168.43.255 scope global dynamic wlp3s0
           valid_lft 3434sec preferred_lft 3434sec
        inet6 2409:893c:f32:3f54:e6f8:9cff:fe0b:761/64 scope global mngtmpaddr dynamic 
           valid_lft 3414sec preferred_lft 3414sec
        inet6 fe80::e6f8:9cff:fe0b:761/64 scope link 
           valid_lft forever preferred_lft forever
    

    wlp3s0 中有 inet 192.168.43.99 说明已连接到 WiFi。
     

  10. 查看是否能联网:

    [root@localhost /]# ping baidu.com
    PING baidu.com (220.181.38.148) 56(84) bytes of data.
    64 bytes from 220.181.38.148 (220.181.38.148): icmp_seq=1 ttl=46 time=101 ms
    64 bytes from 220.181.38.148 (220.181.38.148): icmp_seq=2 ttl=46 time=227 ms
    64 bytes from 220.181.38.148 (220.181.38.148): icmp_seq=3 ttl=46 time=99.2 ms
    64 bytes from 220.181.38.148 (220.181.38.148): icmp_seq=4 ttl=46 time=75.1 ms
    64 bytes from 220.181.38.148 (220.181.38.148): icmp_seq=5 ttl=46 time=192 ms
    64 bytes from 220.181.38.148 (220.181.38.148): icmp_seq=6 ttl=46 time=72.0 ms
    64 bytes from 220.181.38.148 (220.181.38.148): icmp_seq=7 ttl=46 time=93.1 ms
    
  11. 安装 NetworkManager-wifi:

    yum -y install NetworkManager-wifi

    安装完成后,默认开启和开机自启。
    但是使用之前需要重启 NetworkManager-wifi 才能生效。
     

  12. 搜索 WiFi:

    nmcli device wifi list

    或者使用:

    nmcli dev wifi list
  13. 连接 WiFi:

    nmcli device wifi connect "WiFi 名称" password "WiFi 密码"

    或者使用:

    nmcli dev wifi connect "WiFi 名称" password "WiFi 密码"

方式二:

  1. 在 阿里巴巴开源镜像站 下载  NetworkManager-wifi、NetworkManager-libnm、NetworkManager、NetworkManager-tui、NetworkManager-team。
    注意:
    版本号应保持一致,以 CentOS 7 为例:截止发稿,存在 1.12.0-6.el7、1.12.0-7.el7、1.12.0-8.el7、1.12.0-10.el7,请注意区分,以免出现异常。
    最好使用最新版本(版本号最大),如推荐使用1.12.0-10.el7。
    笔者本次使用的是:
    NetworkManager-1.12.0-10.el7_6.x86_64.rpm
    NetworkManager-libnm-1.12.0-10.el7_6.x86_64.rpm
    NetworkManager-team-1.12.0-10.el7_6.x86_64.rpm
    NetworkManager-tui-1.12.0-10.el7_6.x86_64.rpm
    NetworkManager-wifi-1.12.0-10.el7_6.x86_64.rpm

    安装时只能使用此命令:

    yum -y install NetworkManager*

    注意:
    由于已上文件相互依赖,使用 yum -y install NetworkManager-1.12.0-10.el7_6.x86_64.rpm 时,无论怎么调顺序,总是需要连接网络才行。

  2. 重启NetworkManager:

    systemctl restart NetworkManager
  3. 搜索 WiFi:

    nmcli device wifi list

    或者使用:

    nmcli dev wifi list
  4. 连接 WiFi:

    nmcli device wifi connect "WiFi 名称" password "WiFi 密码"

    或者使用:

    nmcli dev wifi connect "WiFi 名称" password "WiFi 密码"


     

说明:

  1. WiFi 配置:
    [root@localhost network-scripts]# ls
    ifcfg-"WiFi 名称"   ifdown-ippp    ifdown-sit       ifup-bnep  ifup-plusb   ifup-TeamPort      network-functions-ipv6
    ifcfg-enp4s0f1  ifdown-ipv6    ifdown-Team      ifup-eth   ifup-post    ifup-tunnel
    ifcfg-lo        ifdown-isdn    ifdown-TeamPort  ifup-ippp  ifup-ppp     ifup-wireless
    ifdown          ifdown-post    ifdown-tunnel    ifup-ipv6  ifup-routes  init.ipv6-global
    ifdown-bnep     ifdown-ppp     ifup             ifup-isdn  ifup-sit     keys-"WiFi 密码"
    ifdown-eth      ifdown-routes  ifup-aliases     ifup-plip  ifup-Team    network-functions
    

    其中 ifcfg-"WiFi 名称" 是 WiFi 配置,keys-"WiFi 名称" 是 WiFi 密码,明文储存。
     


总结:

已上两种方法最终效果相同。

方式一:
需要手动下载的包较少,挑选容易;命令多且复杂。

方式二:
需要手动下载的包较多,挑选复杂,可能会出现包选择不一致,出现异常的情况;命令简单,直接。

发布了94 篇原创文章 · 获赞 32 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/qq_32596527/article/details/93230855
今日推荐