我有一台已经10年的老华硕笔记本,LCD屏都掉了,电池也坏了,但是还能开机,屏也能显示,原来装的系统是ubuntu 64 bit ,太慢了,cpu是core(TM)2 T5600 1.83 双核处理器 1G内存,系统起来后内存还剩下几十M空间,这还是交换分区划了4G的,要不然估计都跑不动。
虽然电脑很老了,但是比我的嵌入式平台要好很多了,我的嵌入式平台才600MCPU,128M内存,128Mflash,运行我写的应用程序还是杠杠的。两相一比,我的笔记本还是神级配置了。所以我相将笔记本重新安装个轻量级的系统,用于我的嵌入式开发交叉编辑,还是绰绰有余的。
想到就干,因为是要搭建我的嵌入式交叉编辑环境,操作系统选择了centos,原因嘛,这几周一直在捣鼓centos,感觉centos比较对脾气。国内的Linux镜像网站很多,我常用的是阿里云镜像和163镜像,这次从163镜像下载,(不知什么原因今天aliyun的centos镜像下载一直是1M 速度太慢,换到163的有5M左右)。考虑到我的笔记本的内存才1G,就不用64bit的系统,centos 7 镜像 没找到 32bit的,就下载了个 centos6.8 32bit minimal 版的
在我的台式机(windowns 7系统)上用ultraiso 制作了一个U盘启动盘,因为 centos6.8 32bit mini 才300多M,制作很快。开始安装centos,基本上都是下一步、下一步。Linux分析还是按照我的习惯,/ 根目录 30G,/opt 目录20G swap 4G,/home 100G,/work 工作区剩下的全部空间。因为是minimal安装,需要安装的东西很少,很快就安装完成了。
系统自动重启后进入命令行启动界面,输入root和密码进入操作系统,先看看网卡状态,试着输入ifconfig ,界面显示只有lo 回环,没有启动网卡。这个问题我在公司安装centos7时就遇到过了。是因为centos 在minimal安装时,默认是不启动网卡的。需要注意的时,centos7 中最小安装时 连 ifconfig 这个命令都没有,需要先安装net-tools后才能执行ifconfig命令.但是想安装软件,要先解决联网问题.不然什么都安装不上.centos 不知是不是因为是主要面向服务器设计的,默认大概是不安装无线网卡驱动的,而我为了方便工作,无线联网确实必须的.
先找根网线将笔记本链接到路由上, 然后命令行输入(root)
ifconfig eth0 up
然后再用ifconfig查看,就能看到eth0 已经链接到网上了.为了能够在电脑重启后能自动开启eth0 ,需要修改/etc/sysconfig/network-scripts 目录下的ifcfg-eth0文件
使用vi 打开ifcfg-eth0 并修改里面的ONBOOT=no 为ONBOOT=yes .如下:
DEVICE=eth0
HWADDR=XX:XX:XX:XX:XX:XX # MAC ADDR
TYPE=Ethernet
UUID=028d9cb6-22cd-486d-b838-fa0643c1cccd
ONBOOT=yes #修改后,这里为yes
NM_CONTROLLED=yes
BOOTPROTO=dhcp
这是我看到/etc/sysconfig/network-scripts下还有一个ifcfg-wlan0 文件, 此文件是配置无线网卡的,如上一同修改了
DEVICE=wlan0
HWADDR=xx:xx:xx:xx:xx:xx # MAC ADDR
TYPE=Ethernet
UUID=2c906dc7-7d4e-4be7-96d3-6b86a2c2b960
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=dhcp
然后我用ifconfig wlan0 up 启动无线网卡,提示没有网卡驱动(大致就是这个意思,在做的的时候没有截屏,忘记具体显示的什么内容了.)
需要安装显卡驱动,我记得我以前在安装centos的桌面环境的时候我这个本的无线网卡是能用的,所以centos的源里应该是有我这本的驱动的.需要看看我的本的显卡型号,然后才能安装.从网上查考查看网卡型号是使用lspci命令,我在命令行输入lspci 提示没有这个命令,还得安装.输入命令:
yum install lspci*
提示没有此安装包,在网上查了才知道要安装 pciutils,
yum install pciutils*
选择全部安装.
再次查看
[root@linux ~]# lspci
00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (rev 03)
...
...
02:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG [Golan] Network Connection (rev 02)
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 01)
...
我的无线网卡型号是:Intel Corporation PRO/Wireless 3945ABG,去centos 源中找找
[root@linux ~]# yum list | grep "3945"
iwl3945-firmware.noarch 15.32.2.9-4.el6 @anaconda-CentOS-201605211917.i386/6.8
果然有,安装吧
[root@linux ~]# yum install iwl3945-firmware
安装完后,再用
ifocnfig wlan0 up
ifconfig查看, wlan0 已经启动
无线网卡接入网络需要设置ssid和密码,这个在图形界面中很好做,但是命令行下…
我在网上找了一个介绍比较明了的网站archlilnux wiki
其中介绍了各种手动和自动管理wifi的工具,手动的主要有iw/iwconfig + wpa_supplicant
我这里选择安装了iw+wpa_supplicant
[root@linux ~]# yum install iw
[root@linux ~]# yum install wpa_supplicant
然后就可以使用
iw dev wlan0 scan | grep "SSID"
查看附近有哪些WiFi可用
根据wifi加密方式不同,连接方式(命令)也有差异,一般情况向现在都是用WPA/WPA2 方式
WPA/WPA2
连接网路
ip link set dev wlan0 up
wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf # -B 后台模式
dhclient wlan0 #注意
wpa_supplicant.conf 配置:
ctrl_interface=/var/run/wpa_supplicant
#ctrl_interface_group=wheel
ap_scan=1
network={
ssid="ssid名称"
scan_ssid=1
key_mgmt=WPA-PSK
psk="实际密码"
}
要关闭连接,可以禁用接口:
ip link set dev wlan0 down
要使用静态 IP,将 dhclient 命令替换为:
ip addr add 192.168.8.10/24 broadcast 192.168.8.255 dev wlan0
ip route add default via 192.168.8.1
禁用接口前,需要先刷新 IP 地址和网关:
ip addr flush dev wlan0
ip route flush dev wlan0