因为本人也是刚接触 centos 24k纯小白, 所以是从零开始的攻略的 ,可能技术层次理解的不是很深。但这些东西都是无限的测试,之后一步步可行的。
同时我遇到的问题也会不断的刷新在我的微博上。
一、挂载U盘
1,执行 fdisk -l 命令
[root@localhost ~]# fdisk -l
他的用途:观察硬盘之实体使用情形与分割硬盘用,linux磁盘分区管理。
得到:
此时是插着U盘的输出。并且可以从上面红色区域得到。U盘设备为/dev/sdc4 文件格式为FAT32
然后将这个/dev/sdc4挂接到 自己创建的盘符上比如:
1,在/mnt/下创建一个挂载点
[root@localhost ~]# mkdir /mnt/usb
2,挂载U盘
[root@localhost ~]# mount -t vfat /dev/sdc4 /mnt/usb
挂载:在linux操作系统中, 挂载是指将一个设备(通常是存储设备)挂接到一个已存在的目录上。 我们要访问存储设备中的文件,必须将文件所在的分区挂载到一个已存在的目录上, 然后通过访问这个目录来访问存储设备。
这时候U盘里的东西就相当于复制到了/mnt/usb的目录里。然而。U盘拔掉 usb的目录也将会清空所以需要把 /mnt/usb目录里所要取到的文件 复制一份放到 自己想要的目录里。
3、拷贝U盘里的文件
[root@localhost ~]# cp /mnt/usb/filename /usr/drivers/ -r // (-r为复制目录)
这句代码把U盘里的文件 拷贝出一份 放到了/usr/drivers目录里
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
二、安装无线网
问题1:最小安装不能使用网络。但是想安装库又必须要用到yum 但是yum不联网就安装不 所以陷入循环中。解决方法:
首先要配置 yum的环境 让yum在本地安装 。这样可以先安装一些有用的库。
首先安装系统时候所用的centOS7.ios利用他做的系统他有一些yum本地库。
1:挂载
我这里使用U盘安装 所以U盘中有很多的路径 并不是一个ios文件 而U盘类型也是fta32
[root@localhost ~]# mount -t vfat /dev/sdb4 /mnt/usb
之后 ls /mnt/usb 就会出现一大堆目录和文件
2:配置本地yum
[root@localhost ~]# cd /etc/yum.repos.d/ #进入yum配置目录
[root@localhost ~]# vi centos-media.repo #编辑配置文件,添加以下内容
1 [GuangPan]
2 name=CentOS-$releasever - Media #自定义名称
3 baseurl=file:///mnt/cdrom/ #本地光盘挂载路径
4 gpgcheck=0 #检查GPG-KEY,0为不检查,1为检查
5 enabled=1 #启用yum源,0为不启用,1为启用
这里的 [GuangPan] 中括号里的内容是不可以加空格的 不然即使都出来yum list 也不能够安装。
3:清除yum缓存 使用yum install 自动安装
[root@localhost ~]# yum clean all #清除yum缓存
[root@localhost ~]# yum install ”库名称“ #安装库
注意:CentOS需要将/etc/yum.repos. d/目录下的CentOS-Base.repo CentOS-Debuginfo.repo文件进行改名,这样就可以绕过网络进行本地源的安装。
具体命令如下:
1 cd /etc/yum.repos.d/
2 mv CentOS-Base.repo CentOS-Base.repo123
3 mv CentOS-Debuginfo.repo CentOS-Debuginfo.repo123
测试本地源的指定是否成功。
1 yum install php
当联网时候 把改名的两个repo文件改回来即可
4:安装 必用库
[root@localhost ~]# yum install kernel-devel
[root@localhost ~]# yum install kernel-headers
[root@localhost ~]# yum install gcc
这样就可以安装一些驱动了。比如网卡驱动。
5:安装 wireless_tools
问题1:因为 yum本地没有这个库。。而我又想去用本地的方法安装yum在网上找了很多教程 然后又去映射本地的yum环境 但是最终 因为 wireless_tools需要依赖,而想要下载依赖库又必须联网。而现在只是用问题yum环境并没有联网手里单个的 rpm并没有什么用 。所以只能在网上找现有的 wireless_tools解压包。
之后找到了一个 wireless_tools.29.tar.gz 安装包。
然后在U盘里 。
我把他拷贝到了 本地 。
[root@localhost ~]# cp /mnt/usb/wireless_tools.29.tar.gz /kz #拷贝到本地kz下
[root@localhost ~]# tar -zxvf /kz/wireless_tools.29.tar.gz #解压
[root@localhost ~]# cd /kz/wireless_toos.29 #解压完了之后是这样一个文件 可以ls看一下。
[root@localhost ~]# make
[root@localhost ~]# make install #如果这里不报错 那么这个驱动应该就被安装上了。
安装完之后 当我 iwconfig 的时候 又报错了。
报错方式是
iwconfig : error while loading shared libraries : libiw.so.29 : cannot open shared object file no such file or directory
之后找了很多解决方案 最后 用
[root@localhost ~]# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
然而重启之后 发现 还是报错 。所以要重新执行上边的命令。下列方法可以避免以后每次开机的时候都要执行这个命令
[root@localhost ~]# vi /etc/ld.so.conf
在这个文件下面添加 /usr/local/lib
此时这个文件内容应该是这样的:
include /etc/ld.so.conf.d/*.conf
/usr/local/lib
然后在执行一下
[root@localhost ~]# ldconfig
此时大功告成。
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
然后 用iwconfig 就可以跑通了。然后试着跑下面的命令
[root@localhost ~]# iwlist scanning | more
如果什么都没出的话 也不报错的话 要设置网卡ip 也就是 /etc/sysconfig/network-script/ifcfg-xxx:
这时候利用 ip addr 看一下网卡的名字 。除了lo ,这里假如网卡名字是 wlp0s20u3
[root@localhost ~]# nmcli connection add con-name "wlp0s20u3" ifnamewlp0s20u3 autoconnect no type ethernet ip4 192.168.1.240 gw4 192.168.1.1
[root@localhost ~]# service network start
到这里就ok了 然后在跑 iwlist scanning
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
这个命令的作用是搜索附近可连接的wifi 而 | more后缀 代表可以翻页 这种情况可以更清楚的看附近有多少wifi
如果界面没有报错 出现了很多 cell X 证明已经能搜到附近的网络了。 而cell X里 ESSID 又代表 wifi的名称。
此时此刻 在网上搜到了 iwconfig的命令 。用于连接wifi
iwconfig “网卡名称”essid “wifi名称” key “wifi密码”
例如 :
[root@localhost ~]# iwconfig eth0 essid 3lou key 123456
当我输入完毕之后满怀信心的等待着wifi连接时,突然又给我报了个错 如下
Error for wireless request "Set ESSID" (8B2A) invalid argument "123456"
之后翻了很多教程 才知道出现这个问题的原因,是因为 iw 使用WEP加密认证
而我想要连接的wifi 是通过WPA方式加密认证的。所以这个时候 iwconfig 连接无线网 只能连接那些没有密码的。不能连接那些有密码的 wifi
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
然后按照网上的各种解答 找到了一个 wpa_supplicant 库。他可以有效的帮密码进行解密,如
[ wifi名称 ] [ wifi密码 ] >> /etc/wpa_supplicant/wpa_supplicant.conf
wifi名称就是 ssid
就相当于把这些东西 放到这个配置文件里 。这个配置文件自然就是连接wifi密码和各种信息。是这样的。
ctrl_interface = /var/rum/wpa_supplicant
ctrl_interface_group=wheel
network={
ssid = "3lou" # 这个就是要连接wifi的名称 ssid
#psk="123456" # 这个就是我们没有解密的密码,如果想要整wifi的安全性 这行代码是可以删掉的 。因为生成他的时候他就是被注释的
psk="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" # 这堆X是我们解密之后的密码
}
此时得到了 这个文件 要将这个配置文件 告诉网卡。所以要执行一条命令。
wpa_supplicant -i "网卡名称" -c "配置文件" -B #-B为后台运行。此外可以去看一下这个库的其他命令
然后在启动一下 dhcpcd “网卡名称” 就是分配一个ip
然后在试试 ping www.baidu.com 然后我在把这些命令按顺序重写下。
我将要 做的 是 利用 eth0网卡 去连接 名字为 3lou 的wifi ,这个wifi的密码是 123456
[root@localhost ~]# wpa_passphrase 3lou 123456 >> /etc/wpa_supplicant/wpa_supplicant.conf
[root@localhost ~]# wpa_supplicant -i eth0 -c /etc/wpa_supplicant/wpa_supplicant.conf -B
[root@localhost ~]# dhcpcd eth0
[root@localhost ~]# ping www.baidu.com
如果提示 -bash : dhcpcd : commad not found 的话 ,可以用 dhclient eth 因为新装的系统不知道为什么 就比如 iwconfig 变成了 ip
这个时候基本上就行的通了。。我的这个wpa_supplicant是安装系统时候自带的。所以并没有和其他教程一样自行安装。所以没有遇到这个问题。
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
但是,只做到这一步还不行,因为只要我们的机器重新启动,我们就不得不重新执行
wpa_supplicant -i eth0 -c /etc/wpa_supplicant/wpa_supplicant.conf -B 和 dhclient eth0
所以要进行系统的初始化操作,执行初始化脚本,初始化脚本就是/etc/rc.d/rc.local。为了满足我们的要求,我们可以在系统初始化的时候就执行上面的两条指令:
[root@localhost ~]#
vi /etc/rc.d/rc.local 在文件里的 touch /var/lock/subsys/local 行下 输入
wpa_supplicant -i eth0 -c /etc/wpa_supplicant/wpa_supplicant.conf -B 和 dhclient eth0 注意行两条命令是另起一行的
然后 重启电脑
[root@localhost ~]# shutdown -r now
发现 命令并不能执行。然后仔细看一下
/etc/rc.d/rc.local 文件里的注释,有这样一句话
# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
由于/etc/rc.local是/etc/rc.d/rc.local的软连接,所以必须确保/etc/rc.local和/etc/rc.d/rc.local都有x权限(可执行) ,所以在执行一条命令
[root@localhost ~]# chmod +x /etc/rc.d/rc.local
然后重启 果然好了。
----------------------------------------------------------------------------------------------------------------------------------------------------------------------