20250611让NanoPi NEO core开发板在Ubuntu core16.04系统下开机自启动的时候拉高GPIOG8

root@NanoPi-NEO-Core:/# touch open_4g_ec20.sh
root@NanoPi-NEO-Core:/# vi open_4g_ec20.sh
【打开使能引脚200 IOG8】
echo 200 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio200/direction
echo 1 > /sys/class/gpio/gpio200/value

【切记:/open_4g_ec20.sh要写完整目录,不然识别不了!^_】
root@NanoPi-NEO-Core:/etc# ll rc.local
root@NanoPi-NEO-Core:/etc# vi rc.local
root@NanoPi-NEO-Core:/etc# cat rc.local

#!/bin/sh -e

rc.local

This script is executed at the end of each multiuser runlevel.

Make sure that the script will "exit 0" on success or any other

value on error.

In order to enable or disable this script just change the execution

bits.

By default this script does nothing.

if [ -e /usr/bin/setqtenv ]; then

. /usr/bin/setqtenv

/usr/bin/lcd2usb_print "CPU: {{CPU}}" "Mem: {{MEM}}" "IP: {{IP}}" "LoadAvg: {{LOADAVG}}" 2>&1 > /dev/null&

#/opt/QtE-Demo/run.sh&

fi

/open_4g_ec20.sh

exit 0

root@NanoPi-NEO-Core:/etc#
root@NanoPi-NEO-Core:/etc# sync

root@NanoPi-NEO-Core:/etc#

20250611让NanoPi NEO core开发板在Ubuntu core16.04系统下开机自启动的时候拉高GPIOG8

2025/6/10 18:28

缘起:

H3 neo core

我想在 开机的时候就拉高GPIO200 IOG8?

这个要看你的具体需求,开机会经过 uboot 、 linux 、rootfs,需求不一样,做法就不一样

最常见的方法,百度一下 "sysfs gpio

要看需求,不同的需求,方法就不一样

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

Ubuntu 程序开机自启动

闪电侠的右手?

进入/lib/systemd/system/目录,这里有许多启动脚本

cd /lib/systemd/system/

修改rc-local.service文件权限

sudo chmod 777 /lib/systemd/system/rc-local.service

打开并编辑rc-local.service文件

sudo gedit rc-local.service

原始内容如下:

一般启动文件分成三个部分:

Unit\]段:启动顺序、依赖关系 \[Service\]段:启动类型、启动方式 \[Install\]段:如何做到开机启动 原始内容缺少了\[Install\]段,没有定义如何开机启动,因此我们在该文件后添加\[Install\]段 \[Install

WantedBy=multi-user.target

Alias=rc-local.service

修改后的内容如下:

切换到/etc/目录,找到rc.local文件,如果没有就创建一个
cd /etc/
sudo gedit rc.local
把需要启动的脚本写入/etc/rc.local的exit 0之前
#!/bin/sh

脚本代码

exit 0
需要注意:

开头一定要写#!/bin/sh

如果启动脚本是类似于sh ./test.sh类型的,需要使用后台运行的方式,即sh ./test.sh &,否则会卡在启动界面无法进入系统

然后修改rc.local的权限

sudo chmod 777 /etc/rc.local

systemd默认读取/etc/systemd/system/下的配置文件,所以要在/etc/systemd/system/目录下创建软链接

sudo ln -s /lib/systemd/system/rc.local.service /etc/systemd/system/

重启系统,测试是否成功

百度:ubuntu 16.04开机自启动程序

ubuntu20.04 开机启动

参考资料:

http://wiki.friendlyelec.com/wiki/index.php/NanoPi_NEO_Core/zh#.E6.8E.A5.E5.8F.A3.E5.B8.83.E5.B1.80

NanoPi NEO Core/zh

https://blog.csdn.net/qq_43685040/article/details/111574332

Ubuntu20.04 设置开机自启

【无效】

https://www.cnblogs.com/sdg-yy-blog/p/18385383

ubuntu20.04使用systemd配置开机自启脚本

完整的LOG:

root@NanoPi-NEO-Core:/#

root@NanoPi-NEO-Core:/# touch open_4g_ec20.sh

root@NanoPi-NEO-Core:/# ll

total 100

drwxr-xr-x 1 root root 4096 Jun 11 09:12 ./

drwxr-xr-x 1 root root 4096 Jun 11 09:12 ../

drwxr-xr-x 2 root root 4096 Jun 18 2021 bin/

drwxr-xr-x 4 root root 16384 Jan 1 1970 boot/

drwxr-xr-x 14 root root 3800 Jun 11 09:01 dev/

drwxr-xr-x 1 root root 4096 Jun 11 09:01 etc/

drwxr-xr-x 4 root root 4096 Mar 27 2017 home/

drwxr-xr-x 15 root root 4096 Jul 17 2019 lib/

drwx------ 2 root root 16384 Apr 2 07:23 lost+found/

drwxr-xr-x 2 root root 4096 Oct 21 2015 media/

drwxr-xr-x 1 root root 4096 Jun 11 09:01 mnt/

-rw-r--r-- 1 root root 0 Jun 11 09:12 open_4g_ec20.sh

drwxr-xr-x 3 root root 4096 Jun 18 2021 opt/

dr-xr-xr-x 118 root root 0 Jan 1 1970 proc/

drwx------ 7 root root 4096 Apr 2 07:23 root/

drwxr-xr-x 17 root root 520 Jun 11 09:01 run/

drwxr-xr-x 2 root root 4096 Jun 18 2021 sbin/

drwxr-xr-x 2 root root 4096 Oct 21 2015 srv/

dr-xr-xr-x 12 root root 0 Jun 11 09:12 sys/

drwxrwxrwt 1 root root 4096 Jun 11 09:11 tmp/

drwxr-xr-x 10 root root 4096 Jun 29 2022 usr/

drwxr-xr-x 1 root root 4096 Jan 1 2016 var/

root@NanoPi-NEO-Core:/#

root@NanoPi-NEO-Core:/# vi open_4g_ec20.sh ^C

root@NanoPi-NEO-Core:/#

root@NanoPi-NEO-Core:/#

root@NanoPi-NEO-Core:/# cd /sys/class/gpio/

root@NanoPi-NEO-Core:/sys/class/gpio# ll

total 0

drwxr-xr-x 2 root root 0 Jun 11 09:01 ./

drwxr-xr-x 59 root root 0 Jun 11 09:01 ../

--w------- 1 root root 4096 Jun 11 09:01 export

lrwxrwxrwx 1 root root 0 Jun 11 09:01 gpiochip0 -> ../../devices/platform/soc/1c20800.pinctrl/gpio/gpiochip0/

lrwxrwxrwx 1 root root 0 Jun 11 09:01 gpiochip352 -> ../../devices/platform/soc/1f02c00.pinctrl/gpio/gpiochip352/

--w------- 1 root root 4096 Jun 11 09:01 unexport

root@NanoPi-NEO-Core:/sys/class/gpio#

root@NanoPi-NEO-Core:/sys/class/gpio# cd -

/

root@NanoPi-NEO-Core:/#

root@NanoPi-NEO-Core:/#

root@NanoPi-NEO-Core:/# ll

total 100

drwxr-xr-x 1 root root 4096 Jun 11 09:12 ./

drwxr-xr-x 1 root root 4096 Jun 11 09:12 ../

drwxr-xr-x 2 root root 4096 Jun 18 2021 bin/

drwxr-xr-x 4 root root 16384 Jan 1 1970 boot/

drwxr-xr-x 14 root root 3800 Jun 11 09:01 dev/

drwxr-xr-x 1 root root 4096 Jun 11 09:01 etc/

drwxr-xr-x 4 root root 4096 Mar 27 2017 home/

drwxr-xr-x 15 root root 4096 Jul 17 2019 lib/

drwx------ 2 root root 16384 Apr 2 07:23 lost+found/

drwxr-xr-x 2 root root 4096 Oct 21 2015 media/

drwxr-xr-x 1 root root 4096 Jun 11 09:01 mnt/

-rw-r--r-- 1 root root 0 Jun 11 09:12 open_4g_ec20.sh

drwxr-xr-x 3 root root 4096 Jun 18 2021 opt/

dr-xr-xr-x 118 root root 0 Jan 1 1970 proc/

drwx------ 7 root root 4096 Apr 2 07:23 root/

drwxr-xr-x 17 root root 520 Jun 11 09:01 run/

drwxr-xr-x 2 root root 4096 Jun 18 2021 sbin/

drwxr-xr-x 2 root root 4096 Oct 21 2015 srv/

dr-xr-xr-x 12 root root 0 Jun 11 09:12 sys/

drwxrwxrwt 1 root root 4096 Jun 11 09:11 tmp/

drwxr-xr-x 10 root root 4096 Jun 29 2022 usr/

drwxr-xr-x 1 root root 4096 Jan 1 2016 var/

root@NanoPi-NEO-Core:/#

root@NanoPi-NEO-Core:/# vi open_4g_ec20.sh

root@NanoPi-NEO-Core:/#

root@NanoPi-NEO-Core:/# cat open_4g_ec20.sh

echo 200 > /sys/class/gpio/export

echo out > /sys/class/gpio/gpio200/direction

echo 1 > /sys/class/gpio/gpio200/value

root@NanoPi-NEO-Core:/#

root@NanoPi-NEO-Core:/# ll

total 104

drwxr-xr-x 1 root root 4096 Jun 11 09:12 ./

drwxr-xr-x 1 root root 4096 Jun 11 09:12 ../

drwxr-xr-x 2 root root 4096 Jun 18 2021 bin/

drwxr-xr-x 4 root root 16384 Jan 1 1970 boot/

drwxr-xr-x 14 root root 3800 Jun 11 09:01 dev/

drwxr-xr-x 1 root root 4096 Jun 11 09:01 etc/

drwxr-xr-x 4 root root 4096 Mar 27 2017 home/

drwxr-xr-x 15 root root 4096 Jul 17 2019 lib/

drwx------ 2 root root 16384 Apr 2 07:23 lost+found/

drwxr-xr-x 2 root root 4096 Oct 21 2015 media/

drwxr-xr-x 1 root root 4096 Jun 11 09:01 mnt/

-rw-r--r-- 1 root root 118 Jun 11 09:14 open_4g_ec20.sh

drwxr-xr-x 3 root root 4096 Jun 18 2021 opt/

dr-xr-xr-x 118 root root 0 Jan 1 1970 proc/

drwx------ 7 root root 4096 Apr 2 07:23 root/

drwxr-xr-x 17 root root 520 Jun 11 09:01 run/

drwxr-xr-x 2 root root 4096 Jun 18 2021 sbin/

drwxr-xr-x 2 root root 4096 Oct 21 2015 srv/

dr-xr-xr-x 12 root root 0 Jun 11 09:12 sys/

drwxrwxrwt 1 root root 4096 Jun 11 09:11 tmp/

drwxr-xr-x 10 root root 4096 Jun 29 2022 usr/

drwxr-xr-x 1 root root 4096 Jan 1 2016 var/

root@NanoPi-NEO-Core:/#

root@NanoPi-NEO-Core:/# chmod 777 open_4g_ec20.sh

root@NanoPi-NEO-Core:/#

root@NanoPi-NEO-Core:/# cd -

/sys/class/gpio

root@NanoPi-NEO-Core:/sys/class/gpio# ll

total 0

drwxr-xr-x 2 root root 0 Jun 11 09:12 ./

drwxr-xr-x 59 root root 0 Jun 11 09:12 ../

--w------- 1 root root 4096 Jun 11 09:12 export

lrwxrwxrwx 1 root root 0 Jun 11 09:12 gpiochip0 -> ../../devices/platform/soc/1c20800.pinctrl/gpio/gpiochip0/

lrwxrwxrwx 1 root root 0 Jun 11 09:12 gpiochip352 -> ../../devices/platform/soc/1f02c00.pinctrl/gpio/gpiochip352/

--w------- 1 root root 4096 Jun 11 09:12 unexport

root@NanoPi-NEO-Core:/sys/class/gpio# cd -

/

root@NanoPi-NEO-Core:/#

root@NanoPi-NEO-Core:/#

root@NanoPi-NEO-Core:/# ll

total 104

drwxr-xr-x 1 root root 4096 Jun 11 09:12 ./

drwxr-xr-x 1 root root 4096 Jun 11 09:12 ../

drwxr-xr-x 2 root root 4096 Jun 18 2021 bin/

drwxr-xr-x 4 root root 16384 Jan 1 1970 boot/

drwxr-xr-x 14 root root 3800 Jun 11 09:01 dev/

drwxr-xr-x 1 root root 4096 Jun 11 09:01 etc/

drwxr-xr-x 4 root root 4096 Mar 27 2017 home/

drwxr-xr-x 15 root root 4096 Jul 17 2019 lib/

drwx------ 2 root root 16384 Apr 2 07:23 lost+found/

drwxr-xr-x 2 root root 4096 Oct 21 2015 media/

drwxr-xr-x 1 root root 4096 Jun 11 09:01 mnt/

-rwxrwxrwx 1 root root 118 Jun 11 09:14 open_4g_ec20.sh*

drwxr-xr-x 3 root root 4096 Jun 18 2021 opt/

dr-xr-xr-x 118 root root 0 Jan 1 1970 proc/

drwx------ 7 root root 4096 Apr 2 07:23 root/

drwxr-xr-x 17 root root 520 Jun 11 09:01 run/

drwxr-xr-x 2 root root 4096 Jun 18 2021 sbin/

drwxr-xr-x 2 root root 4096 Oct 21 2015 srv/

dr-xr-xr-x 12 root root 0 Jun 11 09:12 sys/

drwxrwxrwt 1 root root 4096 Jun 11 09:15 tmp/

drwxr-xr-x 10 root root 4096 Jun 29 2022 usr/

drwxr-xr-x 1 root root 4096 Jan 1 2016 var/

root@NanoPi-NEO-Core:/# ./open_4g_ec20.sh

root@NanoPi-NEO-Core:/# cd -

/sys/class/gpio

root@NanoPi-NEO-Core:/sys/class/gpio# ll

total 0

drwxr-xr-x 2 root root 0 Jun 11 09:15 ./

drwxr-xr-x 59 root root 0 Jun 11 09:12 ../

--w------- 1 root root 4096 Jun 11 09:15 export

lrwxrwxrwx 1 root root 0 Jun 11 09:15 gpio200 -> ../../devices/platform/soc/1c20800.pinctrl/gpiochip0/gpio/gpio200/

lrwxrwxrwx 1 root root 0 Jun 11 09:12 gpiochip0 -> ../../devices/platform/soc/1c20800.pinctrl/gpio/gpiochip0/

lrwxrwxrwx 1 root root 0 Jun 11 09:12 gpiochip352 -> ../../devices/platform/soc/1f02c00.pinctrl/gpio/gpiochip352/

--w------- 1 root root 4096 Jun 11 09:12 unexport

root@NanoPi-NEO-Core:/sys/class/gpio# cd gpio200

root@NanoPi-NEO-Core:/sys/class/gpio/gpio200# ll

total 0

drwxr-xr-x 3 root root 0 Jun 11 09:15 ./

drwxr-xr-x 3 root root 0 Jun 11 09:15 ../

-rw-r--r-- 1 root root 4096 Jun 11 09:15 active_low

lrwxrwxrwx 1 root root 0 Jun 11 09:15 device -> ../../../gpiochip0/

-rw-r--r-- 1 root root 4096 Jun 11 09:15 direction

-rw-r--r-- 1 root root 4096 Jun 11 09:15 edge

drwxr-xr-x 2 root root 0 Jun 11 09:15 power/

lrwxrwxrwx 1 root root 0 Jun 11 09:15 subsystem -> ../../../../../../../class/gpio/

-rw-r--r-- 1 root root 4096 Jun 11 09:15 uevent

-rw-r--r-- 1 root root 4096 Jun 11 09:15 value

root@NanoPi-NEO-Core:/sys/class/gpio/gpio200# cat direction

out

root@NanoPi-NEO-Core:/sys/class/gpio/gpio200# cat value

1

root@NanoPi-NEO-Core:/sys/class/gpio/gpio200#

root@NanoPi-NEO-Core:/# ll

total 104

drwxr-xr-x 1 root root 4096 Jun 11 09:12 ./

drwxr-xr-x 1 root root 4096 Jun 11 09:12 ../

drwxr-xr-x 2 root root 4096 Jun 18 2021 bin/

drwxr-xr-x 4 root root 16384 Jan 1 1970 boot/

drwxr-xr-x 14 root root 3800 Jun 11 09:01 dev/

drwxr-xr-x 1 root root 4096 Jun 11 09:01 etc/

drwxr-xr-x 4 root root 4096 Mar 27 2017 home/

drwxr-xr-x 15 root root 4096 Jul 17 2019 lib/

drwx------ 2 root root 16384 Apr 2 07:23 lost+found/

drwxr-xr-x 2 root root 4096 Oct 21 2015 media/

drwxr-xr-x 1 root root 4096 Jun 11 09:01 mnt/

-rwxrwxrwx 1 root root 118 Jun 11 09:14 open_4g_ec20.sh*

drwxr-xr-x 3 root root 4096 Jun 18 2021 opt/

dr-xr-xr-x 118 root root 0 Jan 1 1970 proc/

drwx------ 7 root root 4096 Apr 2 07:23 root/

drwxr-xr-x 17 root root 520 Jun 11 09:01 run/

drwxr-xr-x 2 root root 4096 Jun 18 2021 sbin/

drwxr-xr-x 2 root root 4096 Oct 21 2015 srv/

dr-xr-xr-x 12 root root 0 Jun 11 09:12 sys/

drwxrwxrwt 1 root root 4096 Jun 11 09:15 tmp/

drwxr-xr-x 10 root root 4096 Jun 29 2022 usr/

drwxr-xr-x 1 root root 4096 Jan 1 2016 var/

root@NanoPi-NEO-Core:/#

root@NanoPi-NEO-Core:/# cd etc/

root@NanoPi-NEO-Core:/etc#

root@NanoPi-NEO-Core:/etc# ll rc.local

-rwxr-xr-x 1 root root 494 Nov 7 2023 rc.local*

root@NanoPi-NEO-Core:/etc#

root@NanoPi-NEO-Core:/etc# vi rc.local

root@NanoPi-NEO-Core:/etc#

root@NanoPi-NEO-Core:/etc# cat rc.local

#!/bin/sh -e

rc.local

This script is executed at the end of each multiuser runlevel.

Make sure that the script will "exit 0" on success or any other

value on error.

In order to enable or disable this script just change the execution

bits.

By default this script does nothing.

if [ -e /usr/bin/setqtenv ]; then

. /usr/bin/setqtenv

/usr/bin/lcd2usb_print "CPU: {{CPU}}" "Mem: {{MEM}}" "IP: {{IP}}" "LoadAvg: {{LOADAVG}}" 2>&1 > /dev/null&

#/opt/QtE-Demo/run.sh&

fi

open_4g_ec20.sh

exit 0

root@NanoPi-NEO-Core:/etc#

root@NanoPi-NEO-Core:/etc#

root@NanoPi-NEO-Core:/etc# sync

root@NanoPi-NEO-Core:/etc# sync

root@NanoPi-NEO-Core:/etc# sync

root@NanoPi-NEO-Core:/etc#

root@NanoPi-NEO-Core:/home/pi# cd /etc/

root@NanoPi-NEO-Core:/etc#

root@NanoPi-NEO-Core:/etc# cat rc.local

#!/bin/sh -e

rc.local

This script is executed at the end of each multiuser runlevel.

Make sure that the script will "exit 0" on success or any other

value on error.

In order to enable or disable this script just change the execution

bits.

By default this script does nothing.

if [ -e /usr/bin/setqtenv ]; then

. /usr/bin/setqtenv

/usr/bin/lcd2usb_print "CPU: {{CPU}}" "Mem: {{MEM}}" "IP: {{IP}}" "LoadAvg: {{LOADAVG}}" 2>&1 > /dev/null&

#/opt/QtE-Demo/run.sh&

fi

open_4g_ec20.sh

exit 0

root@NanoPi-NEO-Core:/etc# vi rc.local

root@NanoPi-NEO-Core:/etc#

root@NanoPi-NEO-Core:/etc# cat rc.local

#!/bin/sh -e

rc.local

This script is executed at the end of each multiuser runlevel.

Make sure that the script will "exit 0" on success or any other

value on error.

In order to enable or disable this script just change the execution

bits.

By default this script does nothing.

if [ -e /usr/bin/setqtenv ]; then

. /usr/bin/setqtenv

/usr/bin/lcd2usb_print "CPU: {{CPU}}" "Mem: {{MEM}}" "IP: {{IP}}" "LoadAvg: {{LOADAVG}}" 2>&1 > /dev/null&

#/opt/QtE-Demo/run.sh&

fi

/open_4g_ec20.sh

exit 0

root@NanoPi-NEO-Core:/etc#

相关推荐
小信丶1 天前
@Activate 注解详解:应用场景与实战示例
java·spring boot·后端·spring·spring cloud·微服务·dubbo
不像程序员的程序媛2 天前
nacos作为dubbo服务注册中心
dubbo
BraveHeart!4 天前
@DubboService 与 @DubboReference 初始化过程
dubbo
信创天地5 天前
从 “替代” 到 “超越”:信创系统架构师如何筑牢自主可控技术底座
运维·安全·系统架构·开源·dubbo·risc-v
wniuniu_5 天前
运维运维运维
java·运维·dubbo
量子炒饭大师6 天前
【C++入门】Cyber骇客构造器的核心六元组 —— 【类的默认成员函数】明明没写构造函数也能跑?保姆级带你掌握六大类的默认成员函数(上:函数篇)
开发语言·c++·dubbo·默认成员函数
信创天地6 天前
信创运维核心技术:国产化软硬件适配与故障排查全解析
运维·人工智能·开源·dubbo·运维开发·risc-v
bing.shao7 天前
文心大模型 5.0 正式版上线:用 Golang 解锁全模态 AI 工业化落地新路径
人工智能·golang·dubbo
小冷coding9 天前
【Java】Dubbo 与 OpenFeign 的核心区别
java·开发语言·dubbo
无心水9 天前
微服务架构下Dubbo线程池选择与配置指南:提升系统性能与稳定性
java·开发语言·微服务·云原生·架构·java-ee·dubbo