树莓派-Ubuntu22.04
树莓派
- 1 安装Ubuntu系统
- 2 ssh登录
- 3 配置
- 3.1 安装软件
- 3.2 换源
- 3.3 安装桌面
- 3.4 开机脚本
1 安装Ubuntu系统
通过制作sdk,使系统在sdk中运行:
- 下载制作软件:https://www.raspberrypi.com/software/
- 下载Ubuntu镜像:https://cn.ubuntu.com/download/raspberry-pi(推荐安装服务器版的)
- 格式化sdk
- 开始烧录
等待写入完成。
如果你有屏幕需要去修改屏幕分辨率来进行,重新拔插sdk,找到config文件在文件末尾加上:
800*400分辨率
max_usb_current=1
hdmi_group=2
hdmi_mode=1
hdmi_mode=87
hdmi_cvt 800 480 60 6 0 0 0
1024*600
max_usb_current=1
hdmi_group=2
hdmi_mode=1
hdmi_mode=87
hdmi_cvt 1024 600 60 6 0 0 0
2 ssh登录
- 扫描IP地址:工具:https://www.advanced-ip-scanner.com/ 找到树莓派的IP地址
- 下载ssh建立连接即可
3 配置
3.1 安装软件
- 网络工具
sudo apt-get install net-tools
3.2 换源
清华源:https://mirror.tuna.tsinghua.edu.cn/help/ubuntu-ports/
备份:sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
编辑:sudo vi /etc/apt/sources.list
注释或者删掉里面的内容,将下面的内容复制进去
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse
deb http://ports.ubuntu.com/ubuntu-ports/ jammy-security main restricted universe multiverse
# deb-src http://ports.ubuntu.com/ubuntu-ports/ jammy-security main restricted universe multiverse
# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-proposed main restricted universe multiverse
# # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-proposed main restricted universe multiverse
更新:
sudo apt-get update
sudo apt-get upgrade
3.3 安装桌面
选择轻量级的桌面lxde
- 更新软件和系统
sudo apt update
sudo apt upgrade
- 安装桌面
sudo apt install lxde
#Xorg 是提供底层图形支持的服务器,而 xinit(通过 startx)是一种启动和使用这个服务器的方法
sudo apt install xorg
sudo apt install xinit
- 启动(通过ssh链接的看不到)
startx
3.4 开机脚本
- systemd服务
systemd服务默认是在没有图形界面环境的背景下运行的
创建脚本/usr/local/bin/ss.sh:
#!/bin/bash
# 你的脚本内容
echo "Hello, World!" > /tmp/hello.txt
给予脚本执行权限:
sudo chmod +x /usr/local/bin/ss.sh
创建systemd服务文件
接下来,创建一个systemd服务文件来执行脚本。服务文件通常位于/etc/systemd/system/目录下。以管理员权限创建一个新的服务文件,例如my-startup-service.service:
sudo nano /etc/systemd/system/my-startup-service.service
在打开的编辑器中,添加以下内容:
[Unit]
Description=My custom startup script
[Service]
Type=simple
ExecStart=/usr/local/bin/ss.sh
[Install]
WantedBy=multi-user.target
这定义了一个新的服务,它在系统启动时执行您的脚本。Description字段是对服务的描述,ExecStart指定了脚本的完整路径。
启用并启动服务
保存并关闭服务文件后,重新加载systemd以识别新服务,并启用此服务以在启动时运行
sudo systemctl daemon-reload
sudo systemctl enable my-startup-service.service
如果您想立即测试服务而不重启,可以使用以下命令启动服务:
sudo systemctl start my-startup-service.service
验证服务状态
运行以下命令以检查服务的状态:
sudo systemctl status my-startup-service.service
这将显示服务的当前状态和最近的日志输出。如果一切配置正确,您的脚本应该会在每次系统启动时自动执行。
通过这种方式,您可以编写和配置任何类型的开机脚本,无论是进行系统初始化操作,还是启动特定的应用程序或服务。
- 使用 Cron
cron 是一个时间基的作业调度器,在 Linux 系统中用于定时执行任务。对于在启动时运行脚本,可以使用 @reboot 指令。
创建脚本ss.sh
#!/bin/bash
# 你的脚本内容
#QT环境
export PATH=/opt/Qt5.14.2/5.14.2/gcc_64/bin:$PATH
export LD_LIBRARY_PATH=/opt/Qt5.14.2/5.14.2/gcc_64/lib:$LD_LIBRARY_PATH
export QT_PLUGIN_PATH=/opt/Qt5.14.2/5.14.2/gcc_64/plugins:$QT_PLUGIN_PATH
export QML2_IMPORT_PATH=/opt/Qt5.14.2/5.14.2/gcc_64/qml:$QML2_IMPORT_PATH
#默认显示器
export DISPLAY=:0
#需要启动的程序
cd /opt/serialTool/
./Serial
echo "end!" > /home/mql/桌面/1.txt
打开当前用户的 crontab 文件进行编辑:
crontab -e
在文件末尾添加以下行以在每次启动时运行脚本:
#@reboot /path/to/your/ss.sh
#延时执行单位s
@reboot sleep 5 && /path/to/your/ss.sh
#打印日志
@reboot /path/to/your/ss.sh >> /home/mql/桌面/2.txt 2>&1
替换 /path/to/your/script.sh 为您的脚本实际路径。
保存并退出编辑器。
重启就可以执行脚本,可以根据延时启动相应带有图形界面的软件