目录

【新手向】树莓派的基本安装

这份教程是给 2020 年及以前的树莓派几乎完全手工配置教程。树莓派官网现在已经支持一键安装的Raspberry Pi Imager

基本安装

准备

你需要树莓派4B,一张越快越好的tf卡(大于8G),一个适配树莓派4B的5V 3A电源(最好官方),然后分下列情况准备:

  • 有线连接:USB鼠标,USB键盘,支持HDMI的显示器
  • 无线连接:一台可以联网的电脑,可以连接的无线网络

你还可选一个树莓派壳子(最好官方)来保护主板本身。

系统安装

树莓派使用tf卡作为储存,不自带闪存。显然自己买tf卡是不会有系统的,我们需要自己安装。这里我们登录Raspberry官网下载

我们注意到这里有两个选项:NOOBSRaspbian。我没有尝试过NOOBS,而是直接选择RaspbianRaspbian Buster Lite进行下载,这样就能保证纯净、最小占用地安装。(如果你选择full,那么可以选择性跳过基本配置中的大多数步骤)

烧录系统

我们刚刚下载好的系统镜像应该是img格式的。我们使用软件Win32DiskImager将系统烧录到tf卡中。之后直接把tf卡插入树莓派开机即可。

恢复

我的树莓派一开始无法开机(绿灯不闪),参考官网是这样的:

Recovery If your Raspberry Pi 4 will not boot, it is possible that the SPI EEPROM has become corrupted. To check, remove the SD card, disconnect the device from power, then reconnect it. If the green LED does not flash, you will need to reprogram the EEPROM:

  1. Download the bootloader
  2. Extract it to an empty FAT-formatted SD card and insert it into your Raspberry Pi 4
  3. Connect the power and wait for the green LED to flash quickly

这里需要另一张tf卡,或者为保险起见在烧录系统之前先进行这个操作。

有线连接配置

直接接上鼠标键盘显示器即可。

无线联网配置(无头安装)

用你的电脑在tf卡中新建文件SSHwpa_supplicant.conf,在wpa_supplicant.conf中输入:

country=CN
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
    ssid="你的WIFI网络名称"
    psk="你的WIFI网络密码"
    key_mgmt=WPA-PSK
}

注意这里的key_mgmt不论你的网络加密是WPA-PSK还是WPA2-PSK统一写WPA-PSK

之后安装Advanced IP Scanner,找到树莓派的IP,然后安装PuTTY,用树莓派的IP登录,用户名和密码分别是piraspberry

系统备份方法

同烧录系统,我们不点击写入,而是新建一个类型为img的空文件,在Win32DiskImager中选择它,然后读取,就可以备份系统。注意这是全盘备份,你的tf卡有多大备份就多大。

基本配置

更换源

原网址:树莓派—raspbian软件源(全)

sudo sed -i 's#://raspbian.raspberrypi.org#s://mirrors.ustc.edu.cn/raspbian#g' /etc/apt/sources.list
sudo sed -i 's#://archive.raspberrypi.org/debian#s://mirrors.ustc.edu.cn/archive.raspberrypi.org/debian#g' /etc/apt/sources.list.d/raspi.list

之后更新:

sudo apt-get update
sudo apt-get upgrade

配置中文

先执行:

sudo raspi-config

方向键选择第四项Localisation Options

选择Change Locale,上下键翻动,空格键选择所有zh_CN开头的,取消其他不是的,然后回车确认。之后继续选择zh_CN.UTF8(选择默认项),然后回车确认,再退出设置,等待语言设置完成(这之后会回到一开始的raspi-config。语言的更改会在退出设置后开始)。

这之后安装字体库和输入法:

sudo apt-get install ttf-wqy-zenhei
sudo apt-get install scim-pinyin

图形界面安装完之后,使用Ctrl + Space来切换输入法。

调整分区大小

如果你不希望你的备份非常大,而且你没有自信把系统搞到大于8G的话请不要做这一步!

sudo raspi-config

之后选择Advanced OptionsExpand Filesystem,回车确定后等待。

用以下命令确认:

df -h

安装桌面环境

原网址:树莓派安装图形化界面(PIXEL)

sudo apt-get update
sudo apt-get install xorg
sudo apt-get install lxde openbox
sudo apt-get install pix-icons pix-plym-splash pixel-wallpaper
sudo apt-get install raspberrypi-ui-mods
sudo reboot

reboot之后树莓派会重启,这段时间内保持网络不断开即可,树莓派会自动连接。

远程系统连接配置

做这一步之前需要先开启SSH,可以参考无线联网配置中创建文件SSH的方式开启,或者输入sudo /etc/init.d/ssh start来开始,或者用raspi-config开启。

sudo apt-get install tightvncserver xrdp

之后用Windows的远程桌面连接连接树莓派的IP即可,用户名和密码为piraspberry,即你的默认用户名和密码。

SFTP配置

在Windows上安装FileZilla,输入树莓派ip,用户名和密码即可。

FTP配置

原网址:树莓派(raspberry pi)学习10: 安装ftp服务器

sudo apt-get install vsftpd
sudo service vsftpd start
sudo nano /etc/vsftpd.conf

然后将下列地方分别修改为:

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022

(nano使用Ctrl + O保存,Ctrl + X退出)

sudo service vsftpd restart

LNMP环境配置

LNMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写。L指Linux,N指Nginx,M一般指MySQL,也可以指MariaDB,P一般指PHP,也可以指Perl或Python。

这里我们要搭建的是:Raspbian + Nginx + MariaDB + PHP。

安装Nginx

sudo apt-get install nginx

配置Nginx

原网址:在 Raspbian 上部署 LNMP + Pi Dashboard

修改/etc/nginx/sites-available/default。找到这一段:

location / {
                # First attempt to serve request as file, then
                # as directory, then fall back to displaying a 404.
                try_files $uri $uri/ =404;
        }

替换为:

location / {
    index  index.html index.htm index.php default.html default.htm default.php;
}

location ~\.php$ {
    fastcgi_pass unix:/run/php/php7.3-fpm.sock;
    #fastcgi_pass 127.0.0.1:9000;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
}

然后重启:

sudo service nginx restart

安装MariaDB

sudo apt-get install mariaDB-server-10.0

配置MariaDB

原网址:用Nextcloud在树莓派上布置你的个人网盘“NAS”

mysqladmin -u root -p password 你的密码
mysql -uroot -p
create user 'www'@'localhost' identified by '你的密码';
grant all privileges on nextcloud.* to 'www'@'localhost' identified by '你的密码';
exit

原网址:树莓派安装 Nginx + PHP7.0 + phpMyAdmin + Pi Dashboard

sudo mysql -u root -p
update mysql.user set plugin='mysql_native_password';  #重置加密方式
update mysql.user set password=PASSWORD("你的密码") where User='root';  #设置新密码
flush privileges;  #刷新权限信息

这之后可以直接用root和密码登入phpMyAdmin。

安装PHP

原网址:用Nextcloud在树莓派上布置你的个人网盘“NAS”

sudo apt-get install php7.3-fpm php7.3-cgi php7.3-cli php7.3-curl php7.3-gd php7.3-mysql php7.3-intl php-imagick

注意这里的php版本是7.3(本来要下载php5和php7,但是下载不到)。

我们修改/etc/php/7.3/fpm/php.ini。

opcache.enable=1
opcache.enable_cli=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1

安装phpMyAdmin

原网址:RaspberryPi 3B 搭建LAMP环境+phpMyAdmin

sudo apt-get install phpmyadmin
sudo ln -s /usr/share/phpmyadmin /var/www/html
sudo service php7.3-fpm restart

选择界面我们按Esc(不是apache2和lighttpd,选择会出错)。

安装pi-dashboard

原网址:在 Raspbian 上部署 LNMP + Pi Dashboard

cd /var/www/html
sudo git clone https://github.com/spoonysonny/pi-dashboard.git

NextCloud配置

下载NextCloud

原网址:树莓派安装Nextcloud

因为wget速度太慢了,我们可以用电脑下载后用FileZilla传输到树莓派。这之后拷贝到/var/www/html中即可。

unzip nextcloud-16.0.4.zip
sudo mv nextcloud /var/www
cd html; sudo ln -s ../nextcloud nextcloud; cd ..
sudo chown -R root:root nextcloud
cd nextcloud; sudo mkdir data
sudo chown -R www-data:www-data data config apps

安装NextCloud

原网址:树莓派安装Nextcloud

先用phpMyAdmin创建空数据库nextcloud

我们修改/var/www/nextcloud/config/config.php: 找到trusted_domains,加入树莓派的ip:

'trusted_domains' =>
  array (
    0 => 'localhost',
    1 => '你的树莓派ip',
 ),

然后浏览器登录树莓派ip/nextcloud,创建NextCloud自己的用户,在下面的数据库设置中输入数据库用户为root,密码与之前在mariaDB设置的相同(与phpMyAdmin的一样),数据库填nextcloud。这之后等待安装即可。

NextCloud 缓存设置

原网址:使用NextCloud 12 搭建私人云服务和问题解决

先安装apcu:

sudo apt-get update
sudo apt-get install php-apcu -y

然后打开/var/www/nextcloud/config/config.php文件,添加下面这行

'memcache.local' => '\OC\Memcache\APCu',

之后重启服务:

sudo service php7.3-fpm restart
sudo service nginx restart