树莓派从入门到入灰
2022-10-20 10:31:20

树莓派基础知识

架构

ARM处理器是英国Acorn有限公司设计的低功耗成本的第一款RISC微处理器。全称为Advanced RISC Machine。ARM处理器本身是32位设计,但也配备16位指令集,一般来讲比等价32位代码节省达35%,却能保留32位系统的所有优势。

核心

CPU:Broadcom BCM2711,1.5 GHz,64-bit,4核心,ARM Cortex-A72 架构,1MB shared L2 cache
RAM:1、2、4 GB LPDDR4-3200 RAM (shared with GPU)

网络

以太网:10/100/1000 Mbit/s
无线网:b/g/n/ac 双频 2.4/5 GHz
蓝牙:5.0

多媒体

GPU:Broadcom VideoCore VI @ 500 MHz
HDMI:micro-HDMI
DSI:板载排线

外围设备

17× GPIO plus the same specific functions, HAT, and an additional 4× UART, 4× SPI, and 4× I2C connectors

树莓派基本配置

win10连接命令

1
2
ssh root@ip –p21 账号@IP地址 //路由器分配的IP
raspberry
1
2
3
diskutil list
// 格式化磁盘
diskutil eraseDisk JHFS+ UntitledUFS /dev/disk2
  • Could not get lock /var/lib/dpkg/lock-frontend. It is held by process 3129 (apt-get)
1
2
3
sudo rm /var/lib/dpkg/lock-frontend
sudo rm /var/lib/dpkg/lock
sudo rm /var/cache/apt/archives/lock

Raspberry系统安装

系统: Raspberry Pi OS Lite

安装地址

系统安装 + 图形界面安装
安装系统的方法
树莓派的操作系统有两种安装方式:
一种:先把树莓派的安装引导程序NOOBS写入SD卡,然后启动树莓派进入NOOBS来安装操作系统。
另一种:是使用软件``balenaEtcher`将操作系统镜像写入SD卡,树莓派启动后直接进入操作系统。

树莓派默认账号密码

1
2
pi
raspberry

图形界面开启ssh

sudo raspi-config进入到树莓派系统配置界面。

Interfacing options

无显示器连接树莓派

SSH连接
新建boot目录下新建一个SSH文件
设置wiff 新建文件wpa_supplicant.conf

超级重点 树莓派支持2.4GHz的wifi 不支持5Ghz的wifi

1
2
3
4
5
6
7
8
9
10
11
12
13
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=CN
network={
ssid="ChinaNet-mcEc"
psk="uq7nqawx"
key_mgmt=WPA-PSK
}
network={
ssid="你的其他无线网名字"
psk="密码"
key_mgmt=WPA-PSK
}

如果你的 WiFi 没有密码

1
network={``ssid="你的无线网络名称(ssid)"``key_mgmt=NONE``}

如果你的 WiFi 使用WEP加密

1
network={``ssid="你的无线网络名称(ssid)"``key_mgmt=NONE``wep_key0="你的wifi密码"``}

如果你的 WiFi 使用WPA/WPA2加密

1
network={``ssid="你的无线网络名称(ssid)"``key_mgmt=WPA-PSK``psk="你的wifi密码"``}

VNC远程连接树莓派

开启VNC 和提高分辨率

1
2
sudo raspi-config
// interface open ssh

树莓派固定IP

1
vi /etc/network/interfaces

为了防止树莓派的IP地址每次都变动,可以将DHCP改为静态IP。编辑/etc/dhcpcd.conf文件,加入以下配置即可。如果是有线网,就将wlan0改为eth0。

1
2
3
4
5
6
interface wlan0  
static ip_address=192.168.1.100/24
static routers=192.168.1.1
static domain_name_servers=114.114.114.114

/etc/init.d/networking restart

vi vim warning changing a readonly file

1
2
su 
root

su: Authentication failure

1
sudo passwd root

tamporary failure in name resolution

1
2
3
4
5
vi /etc/resolv.conf
nameserver 202.96.209.133
nameserver 61.129.88.123
nameserver 114.114.114.114
nameserver 8.8.8.8

更新源

  • 组成 :一个Debian源 一个树莓派本源

Debian

  • Debian 7 wheezy
  • Debian 8 jessie
  • Debian 9 stretch
  • Debian 10 buster

https://developer.aliyun.com/mirror/debian

1
2
3
4
5
6
lsb_release -a // 查看系统版本
No LSB modules are available.
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 11 (bullseye)
Release: 11
Codename: bullseye

第一种方法 bullseys 换源

  • The following signatures couldn’t be verified because the public key is not available
1
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5523BAEEB01FA116 其中的5523BAEEB01FA116是根据错误提示写的

/etc/apt/sources.list

1
2
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bk
vi /etc/apt/sources.list
1
2
deb http://mirrors.ustc.edu.cn/raspbian/raspbian/ bullseye main contrib non-free rpi
# deb-src http://mirrors.ustc.edu.cn/raspbian/raspbian/ bullseye main contrib non-free rpi

/etc/apt/sources.list.d/raspi.list

1
2
3
4
sudo cp /etc/apt/sources.list.d/raspi.list /etc/apt/sources.list.d/raspi.list.bk
vi /etc/apt/sources.list.d/raspi.list
deb http://mirrors.ustc.edu.cn/archive.raspberrypi.org/debian/ bullseye main ui
#deb-src http://mirrors.ustc.edu.cn/archive.raspberrypi.org/debian/ bullseye main ui
1
2
sudo apt update
sudo apt upgrade && sudo apt dist-upgrade
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
64位镜像可以直接使用debian的系统源,首先需要编辑/etc/apt/sources.list,使用#号注释原内容,然后在末尾添加Debian的系统源:

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ buster main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ buster main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ buster-updates main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ buster-updates main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ buster-backports main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ buster-backports main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian-security buster/updates main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian-security buster/updates main contrib non-free
接着需要配置树莓派官方的软件源,编辑
/etc/apt/sources.list.d/raspi.list
同样的,注释原内容,在末尾添加如下内容:

deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui

系统源和软件源配置完成以后,使用下述两条命令更新:

sudo apt update
sudo apt upgrade -y

第二种方法 buster 换源

删除内容: 3dd 3 行
注意树莓派4B的Respbian是基于Debian 10 Bluster 不要选错。
根据提示修改:

1
2
3
4
5
6
7
8
9
10
11
// d 删除
vi /etc/apt/sources.list
# 编辑 `/etc/apt/sources.list` 文件,删除原文件所有内容,用以下内容取代:
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib
vi /etc/apt/sources.list.d/raspi.list
# 编辑 `/etc/apt/sources.list.d/raspi.list` 文件,删除原文件所有内容,用以下内容取代:
deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui

apt-get update
apt-get upgrade

sudo apt-get update后报错
The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY XXXXXXXXXXXX
直接添加该KEY解决

1
sudo apt-key adv –keyserver keyserver.ubuntu.com –recv-keys XXXXXXXXX

Temporary failure resolving ‘mirrors.ustc.edu.cn’

Temporary failure in name resolution

1
2
3
4
vim /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4
sudo /etc/init.d/networking restart

下载桌面环境

1
2
sudo apt-get install ubuntu-desktop 
sudo apt-get update --fix-missing

磁力链接下载机

  • 连接wiff ssh 和
    • pi raspberry
  • 获取 树莓派 ip
    • vpn
  • 挂载磁盘工具

  • qibittorrent
    • ip:8080
    • 启动 qbittorrent-nox -d
  • samba
    • 启动 smb://ip
  • ftp

安装电视机盒子

  • 直接安装kodi
  • 先安装树莓派系统再安装kodi
  • 安装lineOS Android系统

安装CentOS系统

安装ubuntu系统

工具:balenaEtcher
镜像:ubuntu-18.04.4-preinstalled-server-armhf+raspi4..>

格式化SD卡

使用系统工具格式化SD卡

使用刻录工具

使用balenaEtcher 写入 SD卡中

修改树莓派密码

默认账号和密码都是:Ubuntu
设置的密码要是字母 + 数字 abc123

更新源

备份源

1
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

编辑 sources.list 文件

1
sudo vi /etc/apt/sources.list

打开源的文件,把里面ports.ubuntu.com都换成mirrors.aliyun.com 更新过程要等待

1
2
3
4
esc键 
:%s/源字符串/目标字符串/g
:%s/ports.ubuntu.com/mirrors.aliyun.com/g
:wq!

树莓派连接网线,更新源 和 重启 等待更新源

1
2
3
sudo apt-get update
sudo apt-get uprade
reboot

下载桌面环境

1
2
sudo apt-get install ubuntu-desktop 
sudo apt-get update --fix-missing

挂载磁盘

树莓派之挂载移动硬盘 - 简书
查看磁盘状态

1
2
3
4
5
6
7
sudo fdisk -l
df -h
先建一个目录 ,让树莓派挂载在创建的目录
先建一个目录 ,让树莓派挂载在创建的目录
sudo mkdir /home/pi/toshiba
先建一个目录 ,让树莓派挂载在创建的目录
sudo mount /dev/sda1 /home/pi/toshiba

6.安装NTFS格式可读写软件

sudo aptitude install ntfs-3g
7.加载内核模块
modprobe fuse
8.让移动硬盘开机自动挂载
sudo nano /etc/fstab
最后一行添加
/dev/sda1 /home/pi/toshiba ntfs-3g defaults,noexec,umask=0000 0 0
9.有时候,挂载会出错,Mount is denied:
挂载exFAT格式的硬盘
FAT 格式U盘 mount 本身就能支持,但如果你的U盘或移动硬盘使用的是 exFAT 格式,mount 会说不支持。没关系,安装 exfat-fuse 软件之后 mount 就支持了。
sudo apt-get install exfat-fuse
如果想开机自动挂载,而不是每次手工执行,可以编辑 /etc/fstab 文件。比如在末尾添加一行:
/dev/sda1 /mnt/usbdisk vfat rw,defaults 0 0

安装aira2下载机

树莓派下载机aria2+Samba搭建NAS下载机 - 灰信网(软件开发博客聚合)
搭建 aria2 下载机一键脚本 - 黑客派

安装百度网盘下载机

安装

安装 BaiduPCS-Go web
Github
下载 BaiduPCS-Go web
链接:https://pan.baidu.com/s/1EGhXzzpeSd5UsAMAPjaIVw 提取码:c4v2
解压安装包

1
unzip BaiduPCS-Go-3.7.0-linux-arm.zip

进入 解压后的文件夹,执行以下命令即可在树莓派上安装 BaiduPCS-Go 。

1
2
3
cd BaiduPCS-Go-3.7.0-linux-arm     #cd 到软件所在的目录
chmod a+x BaiduPCS-Go
./BaiduPCS-Go

打开http://树莓派的ip地址:5299就可以看到百度云的登陆界面啦。

登陆

设置

设置下载目录

1
/media/pi/Backup Plus/

安装emby server服务器

媒体服务器

  • flex
  • emby
  • jellyfin
    1
    dpkg -i emby-server-deb_4.2.0.5_armhf.deb
    1
    2
    3
    4
    5
    6
    7
    8
    9
    // 等待时间较长
    Selecting previously unselected package emby-server.
    (Reading database ... 158438 files and directories currently installed.)
    Preparing to unpack emby-server-deb_4.4.3.0_armhf.deb ...
    Unpacking emby-server (4.4.3.0) ...
    Setting up emby-server (4.4.3.0) ...
    usermod: no changes
    Created symlink /etc/systemd/system/multi-user.target.wants/emby-server.service → /usr/lib/systemd/system/emby-server.service.
    Processing triggers for libc-bin (2.28-10+rpi1) ...
    访问树莓派IP地址:8096

安装next cloud云盘

nextcloud前身是大名鼎鼎的owncloud,两者均是开源的网络硬盘系统。nextcloud不仅可以搭建私有云存储和同步数据,也提供联系人、日程管理功能,web端还提供私密的语音视频通话功能。nextcloud致力于数据安全,云端的数据均可选择加密,并遵循安全行业最佳实践。客户端支持windows、macos、linux三大pc平台,以及安卓ios两大移动平台,完全足够家庭或中小型团队协作使用。

部署和设置nextcloud

nextcloud程序由php语言编写,因此部署需要具备php运行环境以及web中间件。因其支持平台众多,官方文档略显繁琐,故本文给出树莓派上用nginx、mariadb、redis搭建nextcloud的详细步骤。
从官网下载部署程序
用迅雷进行下载再上传, 或者在树莓派运行命令进行下载(外网, 很慢):

1
https://download.nextcloud.com/server/releases/nextcloud-19.0.1.zip

更新系统和必备软件:
sudo apt update && sudo apt upgrade && sudo apt install -y libreoffice ffmpeg
安装nginx:sudo apt install -y nginx
安装redis:sudo apt install -y redis;
安装mariadb:sudo apt install mariadb-server
安装php及推荐模块:sudo apt install -y php7.3 php7.3-fpm php7.3-curl php7.3-gd php7.3-dom php7.3-iconv php7.3-openssl php-redis php-mysql php7.3-zip php7.3-bz2 php7.3-intl php7.3-imagick
解压部署程序:unzip nextcloud-xxxx.zip
将nextcloud文件移动到网站根目录:sudo mv nextcloud-xxx /var/www/html/nextcloud
创建数据目录,更改目录权限:mkdir /var/www/html/nextcloud/data && sudo chown -R www-data:www-data /var/www/html/nextcloud
配置php:打开
/etc/php/7.3/fpm/php.ini
文件,做如下更改:
expose_php改成off
date.timezone 一行删掉前面的;号,值改成Asia/Shanghai
删掉opcache.enable=1,opcache.validate_timestamps=1,opcache.revalidate_freq=2这三行前面的;号,将opcache.revalidate_freq的值改成30;
配置fpm:打开**/etc/php/7.3/fpm/pool.d/www.conf**文件,移除clear_env=no,env[开头那几行前面的;号(即388,401-405这几行前面的分号);
设置mariadb管理员密码: mysqladmin -uroot password '你的密码';
创建nextcloud数据库:mysql -uroot -p'你的密码' -e 'create user nextcloud@"%" identified by "nextcloud数据库密码"; create database nextcloud default charset=utf8mb4; grant all privileges on nextcloud.* to nextcloud@"%"; flush privileges;'
配置nginx:在
/etc/nginx/sites-enabled
目录下,创建一个nextcloud文件,其内容如下(注意,本配置中禁用了https):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
upstream php-handler {
server unix:/run/php/php7.3-fpm.sock;
}
server {
listen 80;
listen [::]:80;
server_name cloud.example.com;
# enforce https
#return 301 https://$server_name:443$request_uri;
#}
#server {
# listen 443 ssl http2;
# listen [::]:443 ssl http2;
# server_name cloud.example.com;
# Use Mozilla's guidelines for SSL/TLS settings
# https://mozilla.github.io/server-side-tls/ssl-config-generator/
# NOTE: some settings below might be redundant
# ssl_certificate /etc/ssl/nginx/cloud.example.com.crt;
# ssl_certificate_key /etc/ssl/nginx/cloud.example.com.key;
# Path to the root of your installation
root /var/www/html/nextcloud;
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
# The following 2 rules are only needed for the user_webfinger app.
# Uncomment it if you're planning to use this app.
#rewrite ^/.well-known/host-meta /public.php?service=host-meta last;
#rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json last;
# The following rule is only needed for the Social app.
# Uncomment it if you're planning to use this app.
#rewrite ^/.well-known/webfinger /public.php?service=webfinger last;
location = /.well-known/carddav {
return 301 $scheme://$host:$server_port/remote.php/dav;
}
location = /.well-known/caldav {
return 301 $scheme://$host:$server_port/remote.php/dav;
}
# set max upload size
client_max_body_size 512M;
fastcgi_buffers 64 4K;
# Enable gzip but do not remove ETag headers
gzip on;
gzip_vary on;
gzip_comp_level 4;
gzip_min_length 256;
gzip_proxied expired no-cache no-store private no_last_modified no_etag auth;
gzip_types application/atom+xml application/javascript application/json application/ld+json application/manifest+json application/rss+xml application/vnd.geo+json application/vnd.ms-fontobject application/x-font-ttf application/x-web-app-manifest+json application/xhtml+xml application/xml font/opentype image/bmp image/svg+xml image/x-icon text/cache-manifest text/css text/plain text/vcard text/vnd.rim.location.xloc text/vtt text/x-component text/x-cross-domain-policy;
# Uncomment if your server is build with the ngx_pagespeed module
# This module is currently not supported.
#pagespeed off;
location / {
rewrite ^ /index.php;
}
location ~ ^\/(?:build|tests|config|lib|3rdparty|templates|data)\/ {
deny all;
}
location ~ ^\/(?:\.|autotest|occ|issue|indie|db_|console) {
deny all;
}
location ~ ^\/(?:index|remote|public|cron|core\/ajax\/update|status|ocs\/v[12]|updater\/.+|oc[ms]-provider\/.+)\.php(?:$|\/) {
fastcgi_split_path_info ^(.+?\.php)(\/.*|)$;
set $path_info $fastcgi_path_info;
try_files $fastcgi_script_name =404;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $path_info;
#fastcgi_param HTTPS on;
# Avoid sending the security headers twice
fastcgi_param modHeadersAvailable true;
# Enable pretty urls
fastcgi_param front_controller_active true;
fastcgi_pass php-handler;
fastcgi_intercept_errors on;
fastcgi_request_buffering off;
}
location ~ ^\/(?:updater|oc[ms]-provider)(?:$|\/) {
try_files $uri/ =404;
index index.php;
}
# Adding the cache control header for js, css and map files
# Make sure it is BELOW the PHP block
location ~ \.(?:css|js|woff2?|svg|gif|map)$ {
try_files $uri /index.php$request_uri;
add_header Cache-Control "public, max-age=15778463";
# Add headers to serve security related headers (It is intended to
# have those duplicated to the ones above)
# Before enabling Strict-Transport-Security headers please read into
# this topic first.
#add_header Strict-Transport-Security "max-age=15768000; includeSubDomains; preload;" always;
#
# WARNING: Only add the preload option once you read about
# the consequences in https://hstspreload.org/. This option
# will add the domain to a hardcoded list that is shipped
# in all major browsers and getting removed from this list
# could take several months.
add_header Referrer-Policy "no-referrer" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-Download-Options "noopen" always;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-Permitted-Cross-Domain-Policies "none" always;
add_header X-Robots-Tag "none" always;
add_header X-XSS-Protection "1; mode=block" always;
# Optional: Don't log access to assets
access_log off;
}
location ~ \.(?:png|html|ttf|ico|jpg|jpeg|bcmap)$ {
try_files $uri /index.php$request_uri;
# Optional: Don't log access to other assets
access_log off;
}
}

启动各项服务:sudo systemctl restart nginx php7.3-fpm redis-server mariadb。如果系统安装了防火墙,记得放行80端口;
打开浏览器,在地址栏输入树莓派的ip,例如:http://192.168.1.2,将出现nextcloud的设置页面,选择用户名和密码,以及输入数据库用户名和密码,完成设置。
设置完成后,进入了类似百度云盘的操作界面,说明云盘已经初步搭建好了。
配置nextcloud,使其性能更好:打开**/var/www/html/nextcloud/config/config.php**文件,在最后的);前添加缓存配置: 'memcache.local' => '\OC\Memcache\Redis','memcache.distributed' => '\OC\Memcache\Redis','redis' => ['host' => 'localhost','port' => 6379,'dbindex' => 0,'password' => '','timeout' => 1.5,],
至此,nextcloud的部署和设置全部完毕,在浏览器界面已经能够查看和管理各种数据和功能了。

其它

  1. 树莓派默认的sd卡存储空间很小,实践应该将nextcloud的程序文件托管在外置硬盘上;
  2. 设置外网访问需要用到域名、dns、https配置以及内网穿透,本文不再给出;
  3. 各平台客户端的设置和使用请参考官方教程,本文不再给出
    启动树莓派,你需要一个显示器,并且连接上键盘,登陆系统用户名pi,密码raspberry。安装openssh-server, 并且使用service ssh start启动ssh-server服务。这可以确保你可以使用ssh远程连接到树莓派。

安装kodi

  • 安装 pvr client
  • 配置 kodi 自动启动
  • 启动 kodi
1
$ service kodi start

安装hexo博客

https://zhuanlan.zhihu.com/p/127757097

无效的问题

1
2
3
vi /etc/profile
export PATH="$PATH:/usr/local/node-v8.11.3-linux-x64/bin"
source /etc/profile

https://github.com/521xueweihan/GitHub520

  • 解决raw.githubusercontent.com地址DNS污染
1
151.101.0.133 raw.githubusercontent.com
1
2
sudo vi /etc/hosts
151.101.0.133 raw.githubusercontent.com

pm2

https://linkscue.com/posts/2018-05-06-how-to-use-pm2-manage-hexo-blog/

1
pm2 start --name blog hexo -- s

hexo

1
2
3
4
5
npm install hexo-cli -g
hexo init blog
cd blog
npm i
npm run dev

安装wordpress博客

安装qbittorrent

安装qBittorrent

1
sudo apt install -y qbittorrent-nox

如果提示未找到软件的话可以先update一下:

1
sudo apt update

启动qbittorrent

1
qbittorrent-nox -d 

这时候,我们就可以打开浏览器,输入你树莓派的ip地址,qbittorrent默认webui的端口号为8080,比如:

1
你的树莓派ip:8080

默认账号admin 和密码 adminadmin

服务开机自启

以上就是这个教程最核心的部分了。还有一个问题就是如何让这个服务开机自启,一般来说有两个办法。

方法一

一个是利用rc.lcal脚本,再exit 0前面加入:

1
vim /etc/rc.local
1
qbittorrent-nox -d

方法二

另一个方法是将qbittorrent加入到系统服务中。首先,用vim创建一个文件

1
vim /etc/systemd/system/qbittorrent.service

在文件中写入以下内容:

1
2
3
4
5
6
7
8
9
[Unit]
Description=qBittorrent Daemon Service
After=network.target
[Service]
User=pi
ExecStart=/usr/bin/qbittorrent-nox
ExecStop=/usr/bin/killall -w qbittorrent-nox
[Install]
WantedBy=multi-user.target

然后,用systemctl命令重新载入daemon:

1
systemctl daemon-reload

到这里,你就可以使用systemctl命令来查看、启动、停止qbittorrent服务了。如果要让它开机自启,只需要输入以下命令:

1
systemctl enable qbittorrent-nox.service

安装openwrt

openwrt 安装

1
2
3
4
5
6
7
8
9
10
11
opkg update 
opkg install
opkg install lsblk cfdisk luci luci-base luci-compat block-mount
opkg install luci luci-base luci-compat
opkg install block-mount

opkg install docker-ce
/tmp下文件 添加 GUI
luci-lib-docker_v0.3.2_all.ipk
luci-app-dockermon_v0.5.7_all.ipk
luci-i18n-base-zh 中文

第三方魔改集成openwrt

Release openwrt-x86-64 · SuLingGG/OpenWrt-Rpi

1
ssh连接树莓派ssh root@192.168.1.1,密码为password

格式化

1
mkfs.ext4 /dev/sda3 

挂载点

树莓派4B 亲手打造一款Openwrt软路由(带编译固件-超详细) - RaspberryPi硬核系列(三) - 哔哩哔哩

挂载overlay

1
2
3
4
5
6
7
8
9
10
11
// disk 
fdisk -l
cfdisk /dev/mmcblk
opkg install cfdisk
mkfs.ext4 /dev/sda3
mount /dev/sda3 /mnt/sda3
cd /overlay
ls
cp -r /overlay/* /mnt/sda3
ls /mnt/sda3
系统挂载目录

docke 安装emby-server

run -d \
1
2
3
4
5
6
7
8
9
10
// 拉取镜像
docker pull emby/embyserver:latest
// 容器运行环境
// 新建容器 条件按钮 开始配置新的容器参数
emby
绑定挂载
配置文件目录
媒体文件目录
设备
// 启动容器

error

1
2
3
4
5
6
7
/opt/docker/tmp/GetImageBlob924900034 no such file or directory 

no space left on device

docker -d 启动 查看异常现象
cd /var/lib/docker
mkdir tmp
1
2
3
4
5
6
7
8
9
10
11
docker run -d \
--name=emby \
--volume /mnt/mmcblk0p3/docker/emby_lib:/config \
--volume /mnt/mmcblk0p3/server:/movies \
--device /dev/dri/renderD128 \
--publish 8096:8096 \
--publish 8920:8920 \
--env UID=1000 \
--env GID=100 \
--env GIDLIST=100 \
emby/embyserver:latest

安装dns

树莓派上安装Pi-hole搭建DNS服务器,过滤网页广告 | 科技爱好者博客 -专注于树莓派(Raspberry Pi)
https://www.lxx1.com/2422

安装Adguard Home

安装ftp

使用SFTP远程传输树莓派文件 | 树莓派实验室
https://shumeipai.nxez.com/2013/09/07/use-the-remote-sftp-file-transfer-raspberry-pi.html
只需在“快速连接”中输入:
主机:sftp://192.168.1.102 (换成您的树莓派的IP地址。前面的sftp://一定要加)
用户名和密码照实填。(Raspbian默认是pi/raspberry)

vsftpd是开源的轻量级的常用ftp服务器.

1,安装vsftpd服务器 (约400KB)

sudo apt-get install vsftpd

2,启动ftp服务

sudo service vsftpd start

3,编辑vsftdp的配置文件

sudo nano /etc/vsftpd.conf

找到以下行,定义一下

anonymous_enable=NO

表示:不允许匿名访问

local_enable=YES

设定本地用户可以访问。

write_enable=YES

设定可以进行写操作

local_umask=022

设定上传后文件的权限掩码。

存盘退出

4, 重启vsftpd服务

sudo service vsftpd restart

5, 测试一下, OK

通过ftp连接树莓派系统,以用户名pi登录,密码是raspberry ,即当前系统的用户名密码

ftp的根目录是/home/pi,即pi用户的HOME目录

可上传或下载文件了

如果设置为其他目录 需要在配置文件中添加以下

local_root=/home/pi/ftp

allow_writeable_chroot=YES

这种情况下可能会出现没有文件夹权限 需要给文件夹设置权限

在linux下执行 sudo chmod -R 777 /home/pi/ftp

安装docker

安装Samba

\\192.168.1.11

树莓派在家中至少三个作用:家庭资源共享中心无线打印服务器下载服务器
家庭资源共享中心samba实现家庭局域网共享,树莓派4B的话可以接2个3.0的移动硬盘。
实测速度不快,Win读2Mb/s1Mb/s,Mac读1Mb/s0.5Mb/s,传小文件比较方便,备份资料可以的,视频不是超高清也能放,但是大文件建议还是直接接电脑。

安装准备

记得安装前先更新一下源,不然可能有些包安装不全。

1
sudo apt-get update

安装及配置

  • mount: /mnt: special device /dev/sda does not exist.
  • mount: /mnt: wrong fs type, bad option, bad superblock on /dev/sda, missing codepage or helper program, or other error.
1
2
3
4
5
ps aux | grep fsck
sudo pkill -f fsck


diskutil eraseDisk JHFS+ UntitledUFS /dev/disk2

修复磁盘命令

1
2
3
fsck.ext4 m命令
fsck -t ext4 -v /dev/sda1
fsck -r /dev/sdb1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
fdisk -l
mount /dev/sda /mnt
df -h
umount /mnt/data

vi /etc/fstab // 自动挂载
添加
/dev/sda /mnt ext4 default 1 1

cd /mnt

硬盘测速
apt install hdparm
hdparm -Tt /dev/sda


mkdir data
chown -R root:users /mnt/data
chmod -R ug=rwx,o=rx /mnt/data


vi /etc/samba/smb.conf
// pi 密码 123

// 查找
/Auth

security = user
ready only = no

[public]
comment = public storage
path = /mnt/
valid users = @users
force group = users
creat maske = 0660
directory mask = 0771
ready-only = no


smbpasswd -a pi

apt-get install samba samba-common-bin
# 安装
sudo nano /etc/samba/smb.conf
#修改配置文件fdis
# 在smb.conf文件末尾加入下边两段
/media/pi/Backup Plus/else/
[myshare] # 显示名称
comment = my share directory # 共享说明
path = /home/pi # 共享目录,可自行修改
browseable = yes # 可读权限
writeable = yes # 写入权限
guest ok = yes # 可写可不写
[portable] # 移动硬盘
comment = portable disk
path = /media/pi # 移动硬盘目录,接几个都会显示在这里
browseable = yes
writeable = yes
guest ok = yes
# 保存(ctrl+o)退出(ctrl+x)
sudo smbpasswd -a pi
# 默认用户pi,设置密码
sudo smbpasswd -e pi
# 激活用户
sudo service smbd restart
# 重启服务
sudo /etc/init.d/samba start
# 如果没有开启,可以手动开启,如果还连不上就重启树莓派吧
sudo nano /etc/rc.local
# 如需自动启动,可将上一行命令(sudo /etc/init.d/samba start—)加到exit 0 之前

设置/media/pi 文件夹权限
linux文件夹 权限为所有用户可 读写
使用命令:

1
sudo chmod 777 dirname -R

安装owv

  • OpenMediaVault
1
wget -O - https://github.com/OpenMediaVault-Plugin-Developers/installScript/raw/master/install | sudo bash

http://<树莓派的IP地址>
即可看到 OMV 的登录页,默认的用户名为「admin」,密码「openmediavault」。

安装阿里网盘

安装emby

安装Nginx

自动化部署博客

CNS搭建

搭建免流TinyProxy

搭建免流面板服务

DHCP搭建

自动脚本搭建

  • 青龙面板
  • 网易云刷云贝
  • 定时脚本
上一页
2022-10-20 10:31:20
下一页