这一篇主要讲我和树莓派4B的起因经过结果和一系列的踩坑指南
前言
有一天一位好大哥跟我唠嗑无意之间提到了树莓派,我当时的心情就是这样的
然后就开启了百度模式,十万个为什么,一通百度之后大概感觉树莓派就是用来机器学习的,但是偶然发现有好多文章写了可以做一台服务器,我giao这岂不是正合我意,免去阿里云的一年一百岂不美哉,说干就干,然后就开启了淘宝模式,总共一套下来花了六七百大洋,一个4b板子,一个散热板(后来发现没啥用),一个散热的壳子还有散热1金属贴,数据线还有电源线,闪迪的64g顶配内存卡和一个读卡器,装备到位了不就可以开始刷怪了,欲知后事如何且看下面分解。
一开始选择的就是准备搞服务器,然后选择了centos8的服务器镜像
下载地址
然后安装烧录工具
下载地址
打开烧录工具之后选择上镜像文件,设备就是连接树莓派的盘符,点击写入就可以了
中间好像出了一点问题忘了什么问题了,反正那个问题一百度就出来了
然后给树莓派装上卡接上电可以看到树莓派开机了
从路由器管理界面获取ip地址(第一次使用的话记得使用有线连接,搞一根网线有线连接,日后再配无线)
这个系统的初始密码时centos
使用df -h命令查看磁盘,烧录盘只启用了2.2GB。使用/usr/bin/rootfs-expand命令扩展可用磁盘空间。
再查看磁盘空间,64G空间都被启用
# 安装网络管理工具 sudo yum install -y NetworkManager-wifi # 重启系统 reboot # 查看状态 nmcli d # 查看可用wifi nmcli dev wifi # 设置wifi账号,密码(注意大小写及权限) sudo nmcli dev wifi connect "元气满满" password "这里填写WiFi密码" # 如果要切换其它wifi,再次运行该命令,下次启动,会默认连接上次设置的wifi sudo nmcli dev wifi connect "元气满满2" password "这里填写WiFi密码" ############################################ # 设置开机自动连接无线网络 sudo nmcli con mod "元气满满" connection.autoconnect yes ############################################ # 查看状态 nmcli d # 查看无线网卡ip地址 ip addr show wlan0 # 或 ifconfig 查看 # 配置静态ip地址方法 #配置无线网卡静态ip nmcli con mod SSID ipv4.addresses 192.168.101.66/24 nmcli con mod SSID ipv4.gateway 192.168.0.1 nmcli con mod SSID ipv4.method manual nmcli con mod SSID ipv4.dns "8.8.8.8" nmcli con up SSID # 查看无线网卡ip地址 ip addr show wlan0 # 拔掉网线,重启系统,检查是否可以自动连接到wifi网络 # 重启后,稍事等待,用命令 arp -a | findstr dc-a6-32 查看ip,能正常找到ip地址。
到这里树莓派就已经完成基本的连接配置了
下面就可以开始安装一些依赖项了
安装wget
yum install -y wget
配置阿里云镜像
yum install -y https://mirrors.aliyun.com/epel/epel-release-latest-8.noarch.rpm
//隔开的符号
mv /etc/yum.repos.d/CentOS-base.repo /etc/yum.repos.d/CentOS-base.repo.backup
//隔开的符号
wget -O /etc/yum.repos.d/CentOS-base.repo https://mirrors.aliyun.com/repo/Centos-8.repo
//隔开的符号
sed -i 's|^#baseurl=https://download.fedoraproject.org/pub|baseurl=https://mirrors.aliyun.com|' /etc/yum.repos.d/epel*
sed -i 's|^metalink|#metalink|' /etc/yum.repos.d/epel*
更新操作系统
yum clean all
yum makecache
yum update -y
安装gcc、vim等
其实可以简单安装
yum -y install gcc gcc-c++ git vim make cmake sudo wget htop unzip zip bzip2 //简单安装
yum -y install gcc gcc-c++ git vim make cmake sudo wget htop unzip zip bzip2 bzip2-devel p7zip readline readline-devel ncurses-devel gdbm-devel glibc-devel tcl-devel openssl-devel curl-devel expat-devel byacc sqlite-devel libyaml libffi libffi-devel libxml2 libxml2-devel libxslt libxslt-devel libicu libicu-devel crontabs logwatch logrotate perl-Time-HiRes libcom_err-devel.i686 libcom_err-devel.x86_64 zlib-devel perl-CPAN gettext gettext-devel
安装docker
安装yum-utils
yum install -y yum-utils
添加软件仓库
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
安装docker引擎
yum install docker-ce docker-ce-cli containerd.io
设置自启动
systemctl enable docker
systemctl start docker
配置加速器
vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://15txunxx.mirror.aliyuncs.com"]
}
重启docker
systemctl restart docker
安装nginx
在/etc/yum.repos.d/下添加nginx.repo
[nginx-stable] name=nginx stable repo baseurl=http://nginx.org/packages/centos/8/$basearch/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key module_hotfixes=true
构建缓存
yum makecache
安装
yum install -y nginx
创建数据目录
mkdir -p /data/db/mysql
Docker安装MySQL拉取镜像
docker pull mysql
运行容器
docker run -d(后台运行) --name(服务名) mysql
-p(端口) 3306:3306
-v(配置数据目录) /data/db/mysql:/var/lib/mysql
-e(初始密码) MYSQL_ROOT_PASSWORD=123456
mysql:latest
--lower_case_table_names=1
--default-authentication-plugin=mysql_native_password
--character-set-server=utf8mb4
--collation-server=utf8mb4_unicode_ci
docker run -d --name mysql
-p 3306:3306
-v /data/db/mysql:/var/lib/mysql
-e MYSQL_ROOT_PASSWORD=123456
mysql:latest
--lower_case_table_names=1
--default-authentication-plugin=mysql_native_password
--character-set-server=utf8mb4
--collation-server=utf8mb4_unicode_ci
STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
Docker安装Redis
拉取镜像
docekr pull redis
运行容器
$ docker run -itd --name redis-test -p 6379:6379 redis
Nginx使用
配置/etc/nginx/nginx.conf
第2行 user nginx ==> user root
第29行 #gzip ==> gzip
第30行 添加
client_max_body_size 200m;
client_body_buffer_size 256k;
client_header_timeout 3m;
client_body_timeout 3m;
send_timeout 3m;
proxy_connect_timeout 300s;
proxy_read_timeout 300s;
proxy_send_timeout 300s;
proxy_buffer_size 64k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
proxy_ignore_client_abort on;
配置/etc/nginx/conf.d/default.conf
第2行 80 ==> 80 default_server;
第3行 localhost ==> _
启动nginx
systemctl start nginx
systemctl enable nginx
创建网站目录
mkdir -p /data/works/blog
cd /etc/nginx/conf.d
vim blog.conf
server{
listen 80 default_server;
server_name _;
location / {
root /data/works/blog;
index index.html index.htm;
}
}
重启nginx
systemctl restart nginx
到这就完成了树莓派使用nginx搭建个人内容,完美
但是到了后面树莓派就开始吃灰了,因为实在是不知道他还能做些什么,如果想要代替服务器的话需要做内网穿透,也得加钱,所以就没有继续搞了,但是最近搞了一块wifi杀手的板子,准备把这两个板子合二为一,一行命令把公司网黑掉岂不是吊的一批,可刑可拷,小日子过得越来越有判头了。
学无止境



