树莓派3安装CentOS 7

作为服务器的标配系统,我当然选择CentOS系列啦。由于树莓派的cpu是ARM架构,所以要选ARM版本的Linux。到2017年8月5日止,最新的ARM版本为CentOS7,就它了。

准备材料:

  • 树莓派
  • 网线
  • Micro SD卡(内存卡
  • 读卡器
  • 网线
  • 联网的路由器
  • 电脑
  1. 首先呢,登录镜像网址,找合适的镜像下载:
    镜像下载地址:http://mirror.centos.org/altarch/7/isos/armhfp/
    镜像下载.jpg

如图中所示,我的树莓派是3代,所以选择CentOS-Userland-7-armv7hl-Minimal-1611-RaspberryPi3.img.xz。各位按需下载。下载完成后记得比较下文件的md5值,如果不一致说明文件有损坏,要重新下载。

  1. 下载完成后可以用压缩软件解压文件,得到img镜像文件,经常折腾系统的小伙伴应该比较熟悉了。
    镜像解压.jpg
  2. 接下来就是烧录系统了~~!掏出你的MicroSD卡,通过读卡器连到电脑上。打开Win32DiskImager准备烧录。什么!??你没装这个软件。那还不赶紧下https://sourceforge.net/projects/win32diskimager/。打开之后选择刚刚解压的镜像和内存卡,点击写入后就默默的等待和忍耐吧,烧录完成之后软件先不要卸载,可能还要用^_^。(由于我已经安装完了,不想再搞一遍,就没插内存卡,所以图中都是灰色不可点击状态)
    win32diskimager.jpg
  3. 烧录完成之后会重新读取内存卡。注意!!此时内存卡已被重新分了三个区,系统会提示格式化才可用,千万千万不要格式化。否则就准备重新烧录吧。如果有什么要写的配置,可以现在在config.txt中写入(由于我并不需要,也不会配。所以有需要的请参考官方文档),完了就插到树莓派主板背面的卡槽准备开机啦啦啦。
    U盘提示格式化.png
  4. 通过网线把树莓派连到路由器上,由于树莓派默认开启DHCP,路由器会自动为树莓派分配一个IP。通过路由器的管理页面查看分配的IP准备SSH连接树莓派。这里分享下我的经历:烧录完之后不管我怎么连接路由器,怎么重启,配置了静态IP都不行,路由器管理页始终没有我的树莓派。后来实在没办法了就一直找文章,偶然找到一篇说第一次烧录没成功,我想会不会我也是烧录失败了。果然,重新烧录之后连上路由器就有IP了(现在Win32DiskImager可以卸了,不过还是建议留着,万一哪天要重装系统了呢?)。
    路由器ip.jpg

图上我的树莓派是通过WiFi连接的,所以图标可能不一样。不过WiFi连接是后来的事了,这里没关系,反正有IP就行了。

  1. 通过SSH工具连接树莓派,推荐Xshell(下载地址:https://www.netsarang.com/xshell_download.html,这款软件个人使用是免费的,选用这款软件主要是有个配套的FTP工具Xftp:https://www.netsarang.com/download/down_xfp.html,结合使用真是爽歪歪啊)。当然了,其他的SSH和FTP工具随意,用的惯就好。
    sship.jpg

输入刚才路由器管理页面的IP,安装后默认的账户密码为rootcentos,输入就可以登录了。

  1. 登录之后首先修改root用户的密码:

    [root@centos-rpi3 ~]# passwd

    然后就是配置静态IP,这样可以保存SSH的IP地址,不用每次都通过路由器查看树莓派的IP。

    [root@centos-rpi3 ~]# cd /etc/sysconfig/network-scripts/
    [root@centos-rpi3 network-scripts]# ls
    ifcfg-Link       ifdown-eth   ifdown-routes  ifup-bnep  ifup-plusb     init.ipv6-global
    ifcfg-eth0       ifdown-ib    ifdown-sit     ifup-eth   ifup-post      keys-Link
    ifcfg-lo         ifdown-ippp  ifdown-tunnel  ifup-ib    ifup-ppp       network-functions
    ifdown           ifdown-ipv6  ifup           ifup-ippp  ifup-routes    network-functions-ipv6
    ifdown-Team      ifdown-isdn  ifup-Team      ifup-ipv6  ifup-sit
    ifdown-TeamPort  ifdown-post  ifup-TeamPort  ifup-isdn  ifup-tunnel
    ifdown-bnep      ifdown-ppp   ifup-aliases   ifup-plip  ifup-wireless
    [root@centos-rpi3 network-scripts]# 

    其中ifcfg-eth0就是网卡了(在centos7中,网卡应该是ifcfg-enp0s3这种风格,不知道这里为什么会变成以前的风格),现在修改网卡的配置:

    [root@centos-rpi3 network-scripts]# vi ifcfg-eth0

    我将其修改为如下(仅供参考,千万不要照搬):

    TYPE="Ethernet"
    #BOOTPROTO="dhcp"
    BOOTPROTO="static"
    NM_CONTROLLED="yes"
    DEFROUTE="yes"
    NAME="eth0"
    UUID="a5ae9a6c-3951-4e8a-b99d-a4ea5dc33bf1"
    ONBOOT="yes"
    IPADDR="192.168.16.222"
    NETMASK="255.255.255.0"
    GATEWAY="192.168.16.1"
    DNS1="8.8.8.8"
    DNS2="114.114.114.114"

    #BOOTPROTO="dhcp"前面的“#”号表示注释,这里改为static类型表示获取静态IP,dhcp表示由路由器随机分配一个IP,注意静态IP配置不能冲突,否则会连不了网。ONBOOT="yes"表示开机启动,这是必须的。最后几行是自己手动加的,这是配置静态IP才需要的一些参数。IPADDR表示配置的静态IP地址(这个一定要自己分配),NETMASK表示子网掩码(这个可以和电脑的配置一样),GATEWAY表示网关(这个一定要和电脑配的一样),DNS1表示主DNS服务器,DNS2就是备用DNS服务器了,这里两个一般妥妥的够用了(这俩DNS服务器跟我配一样的就好)。
    cmdip.png

配置好了就按ESC进入命令模式,输入:wq保存退出,然后重启网络就可以了:

[root@centos-rpi3 network-scripts]# systemctl restart network

SSH可能会断开,没关系,用刚刚配置的静态IP重新连上就可以了,这个IP可以保存在Xshell等SSH工具中,随时连接树莓派。
可以通过ping百度测试是否配置成功了,如看到下面这些信息表示成功了(按CTRL + C中止):

[root@centos-rpi3 network-scripts]# ping baidu.com
PING baidu.com (123.125.114.144) 56(84) bytes of data.
64 bytes from 123.125.114.144 (123.125.114.144): icmp_seq=1 ttl=51 time=52.8 ms
64 bytes from 123.125.114.144 (123.125.114.144): icmp_seq=2 ttl=51 time=52.9 ms
64 bytes from 123.125.114.144 (123.125.114.144): icmp_seq=3 ttl=51 time=44.2 ms
64 bytes from 123.125.114.144 (123.125.114.144): icmp_seq=4 ttl=51 time=43.4 ms
^C
--- baidu.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
rtt min/avg/max/mdev = 43.472/48.359/52.917/4.514 ms
[root@centos-rpi3 network-scripts]# 

可以通过ip addr查看当前的网络配置信息:

[root@centos-rpi3 network-scripts]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    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: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
    link/ether b8:27:eb:43:f9:1a brd ff:ff:ff:ff:ff:ff
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether b8:27:eb:16:ac:4f brd ff:ff:ff:ff:ff:ff
    inet 192.168.16.223/24 brd 192.168.16.255 scope global wlan0
       valid_lft forever preferred_lft forever
    inet6 fe80::d4a5:cfb3:af2a:e36/64 scope link 
       valid_lft forever preferred_lft forever
[root@centos-rpi3 network-scripts]# 

lo表示本地环路地址,不用管,eth0是刚刚配置的网卡,由于我没有插网线,所以这里没有IP,但是第三个WiFi的IP应该和你们插网线的是差不多的。如果看到IP信息和配置的不一样,说明没有配置成功,可以找一些更详细的教程进行配置。
在系统安装好后,默认不是分配所有的剩余空间,如果使用df命令查看的话,会发现只使用了很少的一部分。在/root目录下有个README的文件中详细说明了如何分配剩余的未用空间。此外文件中还说明了如何开启wifi功能。
文件内容如下

== CentOS 7 userland ==

If you want to automatically resize your / partition, just type the following (as root user):
/usr/local/bin/rootfs-expand

For wifi on the rpi3, just proceed with those steps : 

curl --location https://github.com/RPi-Distro/firmware-nonfree/raw/master/brcm80211/brcm/brcmfmac43430-sdio.bin > /usr/lib/firmware/brcm/brcmfmac43430-sdio.bin

curl --location https://github.com/RPi-Distro/firmware-nonfree/raw/master/brcm80211/brcm/brcmfmac43430-sdio.txt > /usr/lib/firmware/brcm/brcmfmac43430-sdio.txt

systemctl reboot

如看不懂英文,我来翻译下:
要重新分配/分区,只需要以root用户执行/usr/local/bin/rootfs-expand命令即可。
要启动wifi功能,依次执行以下三条命令:

`curl --location https://github.com/RPi-Distro/firmware-nonfree/raw/master/brcm80211/brcm/brcmfmac43430-sdio.bin > /usr/lib/firmware/brcm/brcmfmac43430-sdio.bin`
`curl --location https://github.com/RPi-Distro/firmware-nonfree/raw/master/brcm80211/brcm/brcmfmac43430-sdio.txt > /usr/lib/firmware/brcm/brcmfmac43430-sdio.txt`
`systemctl reboot`

最后:

[root@centos-rpi3 network-scripts]# yum update -y

更新你系统所有的软件吧。啊写博客真的累!

标签: none

添加新评论

ali-01.gifali-58.gifali-09.gifali-23.gifali-04.gifali-46.gifali-57.gifali-22.gifali-38.gifali-13.gifali-10.gifali-34.gifali-06.gifali-37.gifali-42.gifali-35.gifali-12.gifali-30.gifali-16.gifali-54.gifali-55.gifali-59.gif

加载中……