1.守護進程
守護進程含義:守護進程在樹莓派上電后開始運行,斷電后結束運行的進程,即使你的終端退出也不會停止,我們可以手動關閉它
使用nohup創建守護進程
先創建一個c語言文件(long_task.c)
#include <stdio.h>
#include <unistd.h>int main() {int i = 0;while (1) {printf("C Program Running - Iteration %d\n", i++);fflush(stdout); // 強制刷新輸出緩沖區,確保日志實時寫入文件sleep(5);}return 0;
}
在樹莓派中將其編譯成一個可執行文件
gcc long_task.c -o long_task
chmod +x long_task
使用nohup生成守護進程會返回進程號
使用cat查看進程返回的日志
cat c_output.log
第一次進程運行到了41次
第二次進程運行到了46次
可以看到守護進程在后臺是一直運行的
2.gdb調試
先創建一個out_test.c文件
#include <stdio.h>int main() {printf("Hello Raspberry Pi!\n");return 0;
}
依次在樹莓派上輸入下面指令
out_test.c -o out_test
sudo gdb ./out_test
這時會提示你輸入賬戶密碼
終端出現(gdb)提示,在這后面輸入指令
用到的指令有
(gdb) break main # 在 main 函數設置斷點
(gdb) run # 啟動程序
(gdb) next # 逐行執行
(gdb) quit # 退出
3.內網穿透訪問樹莓派
????????首先需要一個云服務器,我這里使用的是阿里云服務器
阿里云配置
- 確保云服務器已開啟SSH服務(默認端口22)。
-
配置安全組端口
-
進入ECS控制臺 → 安全組 → 配置規則
-
添加一條 ?入方向規則?:
-
協議類型:TCP
-
端口范圍:
10022
(或其他自定義端口) -
授權對象:
0.0.0.0/0
-
-
樹莓派配置
1.關閉對應防火墻
sudo ufw allow 端口號
2.搭建ssh通道
ssh -p 10022 pi@阿里云IP # 輸入樹莓派密碼
?